简析移动客户端安全

 

层出不穷的攻击方式无疑是,为我们现阶段大家生活必不可少的工具——手机带来更多的,烦恼与危害。...



风起云涌的高科技时代,随着智能手机和ipad等移动终端,设备的普及,人们逐渐习惯了使用,应用客户端上网的方式,而智能终端的普及不仅推动了移动,互联网的发展,也带来了移动,应用的爆炸式增长。层出不穷的攻击方式无疑是对我们现阶段大家,生活必不可少的工具——手机带来更多的,烦恼与危害。

网站移动客户端的使命

1、首先,做移动客户端,这是一个商业行为,其本质和动力,是一种商业诉求,而不仅仅是一个技术开发和用户,体验的考量;

2、对于网站来说,竞争的本质是,抢夺用户的时间,由于移动硬件的,丰富和普及,用户的时间从pc端分离出来很大,一部分给移动端,所以,从抢用户时间的角度来讲,移动端是一个新战场,必打。

3、避免被浏览器绑架流量,入口,降低对搜索引擎的依赖度,同时APP可以做到快捷、安全、界面的一致,用户使用app的时候,不会受到第三方的任何干扰。

移动APP面临的威胁

在海量的应用中,APP可能会面临如下威胁:

这是从黑客攻击角度来,分类的。然后,简单介绍一下手机中,最常见的威胁方式。在这里,我们从木马病毒说起。



手机病毒。手机中的软件,嵌入式操作系统(固化在芯片中的操作系统,一般由J**A、C++等语言编写),相当于一个小型,的智能处理器,所以会遭受病毒攻击。而且,短信也不只是简单的文字,其中包括手机铃声、图片等信息,都需要手机中的操作系统,进行解释,然后显示给手机用户,手机病毒就是靠软件系统的漏洞,来入侵手机的。手机病毒要传播和运行,必要条件是移动服务商要,提供数据传输功能,而且手机需要支持 Java等高级程序写入功能。现在许多具备上网及下载等功能,的手机都可能会被手机病毒入侵。

手机病毒可能造成的危害主要表,现在以下五个方面。

危害一:侵占手机内存或,修改手机系统设置,导致手机无法正常工作。手机的工作原理,与电脑类似,有专家认为手机就是,经过简化的电脑设备,手机的正常运转必须依赖一定的,软件和硬件环境。危害二:盗取手机上保存,的个人通讯录、日程安排、个人身份信息等信息,对机主的信息,安全构成重大威胁。危害三:传播各种不良信息,对社会传统和青少年身心健康,造成伤害。危害四:攻击和控制通讯“网关”,向手机发送垃圾信息,致使手机通讯,网络运行瘫痪。

木马病毒。是一种计算机黑客用于,远程控制计算机的程序,一旦进入就会驻扎,在计算机里,随着计算机的运行而,自动运转,对目标计算机进行特殊,的操作,一般是窃取密码,和重要文件,对控制计算机实施监控和资料,修改等操作。木马病毒能正常工作必须由客户端程序和服务端,程序建立网络通信,这种通信是基于ip,地址和端口号的。一般客户端不是木马程序,服务端才是木马程序,隐藏在服务端的木马程序,一旦被触发,就会不断将通信的,ip地址和端口号发给客户端,客户端利用服务端发出的,信息与服务端建立一条通信线路,最终通过这条线路来控制,服务端的计算机。

接下来,我们提出一些安全小常识。

手机病毒的预防

1)乱码短信、彩信,删。乱码短信、彩信可能带有病毒,收到此类短信后,立即删除,以免感染手机病毒。

2)不要接受陌生请求。利用无线传送,功能比如蓝牙、红外接收信息时,一定要选择安全可靠,的传送对象,如果有陌生设备请求连接,最好不要接受。因为,手机病毒会自动搜索无线范围内的设备,进行病毒的传播。

3)保证下载的安全性。现在网上有许多资源提供,手机下载,然而很多病毒就隐,藏在这些资源中,这就要求用户在使用手机下载各种资源的时候,确保下载站点是否安全可靠,尽量避免去个人网站下载。

4)选择手机自带背景。漂亮的背景图片与,屏保固然让人赏心悦目,但图片中带有病毒就,不爽了,所以用户最好使用手机,自带的图片进行背景设置。

5)不要浏览危险网站。比如一些黑客,非法网站,本身就是很危险的,其中隐匿着许多病毒,与木马,用手机浏览此类网站是,非常危险的。

其实,这些都只是进行预防,正所谓“防患于未然嘛”!如果我们担心在使用,手机软件的过程中,不小心中招了,那也不用怕。从现在开始,你完全可以下载一个,管理手机的安全性app,这样一来,就可以利用可靠的安全软件智能的去,管理我们的手机。

接下来,小编带大家从实际生活,中的案例来总结总结。

手机客户端安全吗?

前期,估计大家都被不法分子通过复制大家手机中的移动,支付app盗刷新闻给震撼了。而这件事的轰动,是相当大的,我们有在往期的,报告中提到过,这里再次帮大家简单,提及一下。

主要是骗子可以利用短信和消息发送一个,带有恶意代码的链接,点击的受害者自己的理财app将会,被克隆在远程。对,这就是“应用克隆技术”。一经出现,引发了不少网民的,恐慌情绪。一些一度被认为威胁不大、厂商也不重视的安全漏洞,竟然能“克隆”用户账户、窃取隐私信息、盗取账号及资金……营造安全移动支付环境,容不得一丝侥幸。手机厂商、应用开发商、网络安全研究者,应携起手来,共同落实网络安全法,及其他法律法规要求,彻底堵死可能的风险,与漏洞。

所以,不明来历的链接不要点;不明来历的二维码不要扫;及时关注官方动态,进行app的升级。另外,不要为了方便而取消安全性加强,的密码设置。

为了帮助大家顺利预防,危害,我们可以从下图,简单了解一下。



防止账户被盗刷,有以下几个小窍门:

第一,用自己的手机号,绑定理财手机应用。如若绑定自己的手机号,能够在账户产生交易时或是,账户异常时及时将相关信息发送至手机上,用户可以随时了解,自己的账户动态;在更换手机号后,要第一时间联系银行,和理财服务人员,更改绑定手机号;如果手机丢失,应第一时间联系银行和理财,服务人员取消相关的手机绑定业务,或采取挂失、冻结账户等方式进行,钱财保护。

第二,保管好自己的账号密码、身份信息及手机。不轻易泄露自己的号、号、手机号码,不随意将装有理财应用的手机,长时间交给他人使用。

第三,关闭理财app内置功能,提高安全性。设置安全系数较高的密码、关闭“小额免密”功能、取消手机app自动登入模式等,措施都能够提高使用理财app的安全性。

第四,避免使用不可信的,网站或公共wifi。强化警惕意识,在发现自己账户异常时,及时与理财产品,公司取得联系。

当然,我们还可以从其他,安全角度去分析。

移动端的客户端,用户贡献内容积极踊跃,内容品质利他有一定价值?

此类贡献积极的app,具备如下特点:

1,贡献入口在一级界面,固定位置,随时调用,有安全感。

2,用户关系导入方便,方便用户回应互相反馈,个人交际圈内保持动态感。

3,发布流程简单,清晰,容易理解,发布之后即可见到,获得及时回馈。

4,个人页面累积内容,敏感字段展示。

5,用户轻松可以发现更大范围的,用户精彩内容、搜索到所需信息。

6,内容复杂多样,往往存在内部链接至,其他软件内部内容推广,指多级跳转的现象很多。

7,以时下较为吸引的,画面作为广告或者新闻,骗取点击量和浏览量。

以上现象的app其实都很,值得大家思考。

而且,大家有没发现,虽然你手机里装,了很多软件,但要比起来,最浪费时间的app,应该是具备如上设计,特点的app了。然后就是游戏?

APP总体性安全

下面,从APP总体性安全说一下。这里,我们不妨说,的稍微专业一点。大致可分为下面几个点:

iOS由于系统封闭,相对安全一些,所以部分安全措施只需要在,安卓平台考虑,下面就不做特殊说明了。

一、接口安全

1. HTTPS

HTTPS不再像以前那样是少数金融APP的专利了,特别是iOS从9.0开始默认采用HTTPS,HTTPS基本成为了标配。

2.加密算法

如果光用HTTPS还不够放心,那你也可以用自己的密钥再对接口中,的敏感信息进行加密。加密时非对称、对称加密算法最好,配合使用,这样既能利用到,非对称加密算法的安全性,又能避免其加密内容,太长时的性能问题。一般做法是用rsa算法加密传输,aes算法的密钥,然后用aes算法加密,具体信息。

3. deviceID和Token

大多数情况下,我们需要获取唯一设备号,方便数据统计,以及和用户名密码关联,生成token。iOS因为安全原因,已经无法正确获取uniqueidentifier和,mac地址,而安卓因为生态过于繁杂,在某些机型上取imei、mac也经常会存在问题,所以在两个平台都可以用一个,非常偷懒的方法,即直接在本地生成一个,uuid作为deviceid并缓存起来。

服务器结合deviceID、用户名密码、时间戳等生成一个token,返回给客户端,之后客户端每次请求必须把,token放在http头里返给服务器,这样服务器才会受理请求,返回信息。此外token还应根据,自身情况设计一个失效机制,比如2周内没访问过就失效

二、 安装包安全

1.验证包完整性

由于安卓市场的鱼龙混杂和安卓平台的开放性,很容易就被一些,不法分子利用,反编译后植入后门代码再,重新打包给无知群众使用,以从中牟利。所以我们很有必要去验证,包的完整性。这里有几个思路,一是验证签名,二是验证dex文件,三是验证apk,具体的验证可以使用CRC32、MD5这类数据摘要算法。

一个必须要注意的点是如果把用于比对的正确,值存放在本地java代码中,就很容易被黑客反编译,利用,即使用接口从服务器,去获取这些数据,相关的验证代码也很,有可能被反编译后去除,那么比较稳妥的做法是把安全验证,和必要的初始化过程捆绑起来放在so的c++代码中去处理,通过 JNI 进行调用,这样黑客就没那么方便,反编译和绕过安全验证相关代码了。

2.防动态注入

比较简单省事的方案是在进行安全验证时检查手机是否root,并检查进程中是否有常见的,hook工具如cydia Substrate或者Xposed等,如有,则提醒用户并,直接关闭客户端。

3.加壳

对于apk来说,只要能反编译,那么花上足够多,的时间和耐心,总归可以慢慢破解,那么更有效的方案,就是给apk加壳了。所谓加壳,简单说就是把要,加壳的目标apk加密,然后在外面再套一层壳apk,在使用时壳apk,负责解密原apk,并通过dexclassloader动态,加载。整个过程还是有点复杂的,索性网上相关的文章不少,有兴趣可以去搜来参考。

三、系统安全

1.自定义键盘

系统自带的键盘很可能会被劫持,所以大多数涉及钱的app都,很有必要写一个自己的键盘组件。特别是输入密码,所用的键盘,最好还能随机生成数字,的位置。

2.防截屏

黑客很有可能控制手机,偷偷的给APP截屏,这样你的屏幕上有,敏感信息时,比如每次输入密码会有短暂,的字母显示,就会暴露,这时候就需要有防截屏,的功能。谷歌自己就提供,了这个功能,只需要在每个activity,的setcontentview()方法前加上下面这段代码(段代码,)就可以了:

getWindow().setFlags(LayoutParams.FLAG_SECURE,LayoutParams.FLAG_SECURE);

3.在移动端管理session是一个比较,重要的点。我们都知道,大多数的客户端所有功能的,实现都需要大家进行身份的验证,比如手机号和一些个人,信息,当然,敏感的的可能还会用到*。接下来,从专业的角度来简单说说。客户端与服务器端通信往往需要,维持通信会话,而会话的保持各家,公司有各家公司的做法,但是大致方法都是相同,就是首次登陆的时候,从服务器端拿回一个token,而这个token有,一定的过期时间。这里提供一种简单的方法,就是登陆时拿到账号密码,作为参数通过接口进行登陆(https),登陆成功后会返回token,之后所有与服务器的通信,都要带上这个token,至于这个token如何,携带也有多种方法,可以通过请求头,也可以通过参数,不同公司不同做法。服务器返回数据的同时,刷新token并返回新token,客户端接收数据的同时保存,新token作为下次请求使用。当然这样做只是使用了,一个token,有些是一个请求token,一个刷新token,请求token的有效期较短,刷新token的有效期较长,当请求token过期后,使用刷新token刷新请求token。总之做法很多,就看你怎么使用了。

四、APP本身存在一些安全隐患

目前的互联网存在着两种不同的信息获取方式那就是WEB和 移动客户端,面对与传统的WEB方式,APP可谓是增长迅猛,大有取而代之的趋势。所以,移动客户端安全安全和web安全,是息息相关的。我们就可能存在的检测点从数据的传输方面来简单的来,谈一谈可能存在的漏洞点。

1.SQL注入:通过把sql命令插入到web表单,提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行,恶意的sql命令。一般存在于登录界面。

2.XSS:跨站脚本攻击,恶意攻击者往web页面里插入,恶意html代码,当用户浏览该页之时,嵌入其中web里面的html代码,会被执行,从而达到恶意攻击用户的,特殊目的。存在于表单标签中。

3.SSL:安全套接层协议,是为网络通信提供安全,及数据完整性的一种安全协议。

4.CSRF:通过伪装来自受信任用户的请求来利用,受信任的网站。与XSS攻击相比,CSRF攻击往往不大流行(因此对其进行防范的,资源也相当稀少)和难以防范,所以被认为比xss,更具危险性。

5.敏感信息泄露:用户在使用APP的时候,设置代理抓到的包中,包含已登录用户的一些,个人信息,这里有可能存在用户名、密码的明文传输。

6.会话标识未更新:已经登录的用户正常/非正常退出,往往可以通过获取正常用户,登录成功后,具有唯一标识的信息,来模仿用户登录成功,的操作使其在线,然后就可以使用该用户,的账号。

7.任意用户注册漏洞:此类漏洞并不危害,到用户信息泄露,但是别有用心的黑客可能会利用此漏洞,注册任意手机号码,并利用此注册账号去,社工号码主人的朋友或者家人。

8.后台弱口令:一般是由那些懒人制定的弱,密码而来的。

9.越权:身份相等的同级用户。当然,也可以让自己体验,更高权限的账号。

10.文件上传:在你上传文件、照片时候,更改传输信息中的,文件类型。

很明显,上面这些漏洞往往是由于后台开发者,疏忽导致的。所以,APP本身的安全,其实大部分权利还是掌握,在开发人员手里的。

小结

安全是极难做到100%的,更多的情况是道高一尺,魔高一丈,但是尽量多的安全保障,可以让别人的破解,成本指数级的提高,直至让人觉得破解你的客户端,性价比太低了。还是那句话,如果你和另一个人在野外,遇到一头豹子,你想要逃生,不需要跑的比豹子快,只需要跑的比,另一人快就够了。

*本文作者:HackerButWhite,转载请注明来自FreeBuf.COM
精彩推荐







    关注 黑客与极客


微信扫一扫关注公众号

0 个评论

要回复文章请先登录注册