您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 经营企划 > 移动终端应用安全浅析
移动终端应用安全浅析-----------张宝燕传统互联网相比,移动互联网具有随身性、可鉴权、可身份识别等独特优势。但同时也存在移动终端处理能力弱、网络带宽相对较小的局限性移动应用的几种模式原生应用、Web应用、混合应用原生应用:简单的来说是特别为某种操作系统开发的,比如iOS、Android、黑莓等等,它们是在各自的移动设备上运行的Web应用:本质上是为移动浏览器设计的基于Web的应用,它们是用普通Web开发语言开发的,可以在各种智能手机浏览器上运行。混合应用:是原生应用和Web应用的结合体,采用了原生应用的一部分、Web应用的一部分,所以必须在部分在设备上运行、部分在Web上运行,这是主流模式移动应用模式的优缺点模式优点缺点原生可访问手机所有功能(GPS、摄像头);速度更快、性能高、整体用户体验不错;可线下使用;支持大量图形和动画开发成本高支持设备非常有限上线时间不确定内容限制(AppStore限制)Web应用支持设备广泛;较低的开发成本可即时上线;无内容限制;对联网的要求比较大用户体验比较差图片和动画支持性不高对手机特点有限制(摄像头、GPS混合应用兼容多平台;顺利访问手机的多种功能;可离线使用不确定上线时间;用户体验不如本地应用;性能稍慢(需要连接网络);移动应用的安全一般用户都认为只要是手机安装客户端模式会比较安全,客户端模式相对于wap网页模式安全些,但是,打开手机就是应用,应用背后却还是一片黑,好像还不是很安全呢。可以从移动终端安全机制、网络安全机制两个方面考虑:安全机制内容移动终端安全机制互联网的最终用户设备,包括手机、PDA、便携式电脑终端操作系统安全机制、防病毒、系统漏洞攻击等,数据安全及隐私保护机制、数据授权访问、加密等Activity安全、劫持网络安全机制接入网,也包括IP承载网或互联网网络设备的环境安全,操作系统、数据库等的访问控制及入侵防御机制,用户认证及数据加密机制A3/A8,ASE、Kasumi等。无论是终端还是网络安全都可以从物理安全、系统安全、应用安全和数据安全等方面进行分析。物理安全:设备丢失带来了物理安全隐患数据安全,数据传输的加密处理隐私保护,身份认证PIN密码的加密处理,明文还是暗文内容安全,交互协议的加密处理(HTTPS\jabber\3DES加密体系)移动终端安全机制Android组件的安全Activity组件权限安全Activity组件时用户唯一能够看见的组件,首先是访问权限控制,activity组件在制定Intent-filter后,默认是可以被外部程序访问的,也就意味着会被其他程序进行串谋攻击。这里的其他程序指签名不同、用户id不同的程序,或者是签名相同且用户id相同的程序在执行同一个进程空间,彼此之间是没有组件访问限制的。Android:exported熟悉设置为false,设置组件不能被外部程序调用。如果希望被特定的程序访问,就不能用上面的熟悉设置,需要通过andriod:permission熟悉来指定一个权限字符。要想启动Activity必须在AndriodManfest.XML文件中加入声明权限的代码Activity组件劫持当用户安装了带有Activity劫持功能的恶意程序后,恶意程序会遍历系统中运行的程序,当检测到要劫持的Activity(通常有网银或是其他网络程序登录页面)在前台运行时,会用钓鱼式的activity覆盖正常的activity,来欺骗用户Contentprovider安全内容提供者,用于程序之间的数据交换,andriod系统中,每个应用的数据库、文件、资源等信息都是私有的,其他程序无法访问,如果想要访问这些数据,就必须提供程序之间数据的访问机制,contentprovider通过提供存储与查询数据的接口来实现进程间的数据共享。Contenprovider提供了insert(),delete(),update(),query()等操作;写权限andriod:Writepermission检查读权限andriod:readpermission检查Broadcastreceiver安全广播接收者,用于处理接收的广播,分为发送安全与接收安全;接收安全:andriod:Exported属性设置为false,只接收本程序组发出的广播;发送安全问题:两种消息发送方式,sendBroadcase()与sendOrderedBroadcast()Service安全后台进程组件数据安全外部存储安全:存在SD卡,对于不涉及用户隐私的数据,可以适当采取该方式;涉及隐私的即便是数据加密了,最后不要存在外部存储设备上内部存储安全:所有软件存放私有数据的地方。Sharedproferences、sqllite无论哪种存储用户隐私数据都改进项加密。移动应用web端的安全移动APP大多通过webAPI服务的方式跟服务端交互,这种模式把移动安全跟web安全绑在一起。移动app以web服务的方式跟服务端交互,服务器端也是一个展示信息的网站,常见的web漏洞在这也存在,比如说SQL注入、文件上传、中间件/server漏洞等,但是由于部分app不是直接嵌入网页在app中,而是使用的api接口返回josn数据,导致扫描器爬虫无法爬取链接。Web类应用系统所面临的主要风险包括:网络层面的攻击:利用工具和技术通过网络对系统进行攻击和入侵,包括DDOS攻击、漏洞探测、嗅探(帐号、口令、敏感数据等)等。Web应用程序攻击:利用web系统的漏洞对应用程序本身进行的攻击,如针对应用程序本身的DOS攻击、SQL注入、跨站攻击、网站挂马以及获取对web服务的控制权限等。内容篡改:利用应用层漏洞等进行的网页篡改攻击行为,网页内容被非法篡改为其它甚至是产生严重社会影响的不合规内容。数据通信安全软件与软件、软件与网络服务器之间进项数据通信时的安全问题。软件与软件的通信:Android系统4大组件的通信主要手段通信过程中数据传递依靠intent来完成;在intent中应该明确指定目的组件的名称,防止第三方程序“偷窃”软件与网络的数据通信:软件登陆验证、网络账号密码的明文传输、数据上传未加密移动应用的功能测试1)基本功能(同pc端测试)2)软件版本检测:检测版本号是否正确?至少要比上一个版本多一个版本,例:当前版本1.0,那么下一个版本至少是1.0.1。程序启动后,是否正常检测版本更新提示3)离线使用:有离线功能的应用,在离线状态下,应用的功能使用是否正常,离线状态下相应的操作提示是否合理。4)离线后连接网络:离线后连接wifi或者2G,3G网络,基本功能能否正常使用。1、交互性测试1)数据同步功能:需要同步数据的应用,测试数据同步是否正常,下载、上传。2、应用网络测试1)应用的流量使用情况3、安全1)企业用户的身份,被别别人冒名顶替2)物理安全,网络安全,系统安全,安全管理,应用安全五个层面进行评测3)第一部分是智能终端通过短信网关进入后台服务器。(说移动设备从物理安全上来讲,就是说移动设备丢失带来了物理安全隐患)4)第二个链路是说我的移动终端通过移动网络进入互联网,最后进入我们的服务器。(无线网络自身的隐患)5)第三部分是一些PC机,在企业内部的PC机,通过交换机最后进入了服务器。6)第四部分是一些移动的终端,通过WIFI进入我们的后台服务器。无线网络自身的隐患
本文标题:移动终端应用安全浅析
链接地址:https://www.777doc.com/doc-2237739 .html