APP下载

Andriod手机安全攻略

2016-03-13

网络安全和信息化 2016年3期
关键词:木马机制软件

Andriod操作系统

Andriod操作系统是一种基于Linux的自由及开放源代码操作系统,主要应用于智能手机、平板电脑等移动设备上,目前已扩展到电视、数据相机、游戏机等设备和手表、眼镜等穿戴设备上,Andriod系统和其他操作系统一样,采用了分层的架构模式,从高层到低层分别是应用软件层、应用软件框架层、系统运行库层和Linux内核层,目前最新版本为6.0版本。

安全机制

Andriod手机安全包括硬件安全和软件安全,软件安全包括Andriod操作系统本身安全和数据安全两个方面。Andriod操作系统本身安全是对操作系统的自身保护,确保可以防止未授权的访问、对授权用户正常提供服务和对未授权用户拒绝服务等。数据安全指确保存储数据的完整性、合法性两个方面。Andriod操作系统源于Linux操作系统,在继承Linux操作系统安全机制的基础上,又产生和发展了符合设备实际使用的安全机制。

1.采用与Linux操作系统类似的权限分离安全机制。

因Andriod操作系统是基于Linux操作系统的开源操作系统,采用和Linux系统一样的安全机制,Linux操作系统是一个权限分离的系统,采取系统进程和应用软件权限分离,即应用软件与应用软件、应用软件与系统进程隔离开,通过为每一个应用软件分配不同的uid和gid来标识这些不同的应用软件,从而在系统中惟一识别这些应用软件,从而达到不同应用软件之间的私有数据和访问隔离目的,各系统进程也使用这种机制的识别方式,为方便区分和管理,定义uid数值10000以下的是系统进程,10000以上的是应用软件。Andriod操作系统的安全功能也是通过权限分离机制提供,权限可以限制某个特定进程的特定操作,也可以限制每个URI权限对特定数据段的访问,这其中包括读写用户隐私数据,读写其他应用文件,访问网络或阻止设备待机等,只有 uid是“system”或“root”用户才拥有Andriod操作系统文件的访问权限,而应用软件只有通过申请Andriod权限才能实现对相应文件的访问,该安全机制也被称为“沙箱”安全机制,是Andriod操作系统的核心安全机制。

2.采用了permission和per-URI permission的权限检查机制。

Andriod在采用“沙箱”安全机制的基础上,在安全机制方面又进行了扩展,主要采用了permission机制,这种机制主要用来对每个应用可以执行的具体操作进行权限细分和访问控制。对一个应用软件而言,一个权限主要有权限名称、属于的权限组和保护级别等3种属性,每个权限组由1种以上的具体权限,每个权限的保护级别也有 normal、dangerous、signature、signatureOrSystem等4种,不同的保护级别也区分了应用软件在使用时的认证方式,normal表示权限是低风险的,不会对系统、用户或其他应用软件造成危害,只要申请了就可使用。dangerous表示权限是高风险的,系统将可能要求用户输入相关信息,需用户确认才会授予此权限。signature表示只有当应用软件所用数字签名与声明此权限的应用软件所有数字签名相同时,才能将权限授给它。signatureOrSystem表 示将权限授给具有相同数字签名的应用软件或Android包类。permission的初始化发生在应用软件安装或升级时,permission向Andriod操作系统提出申请,Andriod操作系统进行检测和授权,为应用软件建立相应的数据结构。permission的创建先是从安装时创建的AndriodManifest.xml文件中提取 permission信息开始,从package获取和验证证书,并将签名信息保存在package结构中,如果是普通package,则清除package中的mAdoptPermissions字段信息,如果在AndriodManifest.xml中 指 定 了 shared user,先查看全局mSharedUsers中是否有该uid对应的SharedUserSetting数据结构,若没有则新分配一个uid,创建SharedUserSetting并保存到全局mSharedUsers中,然后开始创建packagesettings数据结构,为应用软件添加自定义权限,清除其中不一致的permission信息,最后是对每一个package进行检查授权,可以看出permission安全机制从初始化到建立完成每一步都对应用软件的相应权限进行了修改和细化,在很大程度上实现了对应用软件的安全管理。在应用软件运行过程中,Andriod还采用了permission动态检查机制,对应用软件所有操作和数据访问进行动态检查,主要对uid和其访问权限进行检查,同时提供了per-URI permission机制,用来提供对某些特定的数据块进行ad-hoc(点对点)方式的访问。在对应用软件的外来访问和数据流出方面,Andriod操作系统也提供了相应权限检查接口,这些接口由Contextwrapper提供,当应用软件被网络、蓝牙、电话等访问时,访问程序须以XML格式的文件向Andriod操作系统提出申请,待批准后就会调动这些接口进行权限检测,通过后才可访问相应的资源。

3.签名机制。

安装Andriod应用软件时,只有在经过用户检查程序签名提及的权限和确认后,Andriod应用软件才可以安装和使用,每一个Andriod操作系统中的系统进程和应用软件都是需要签名的。Andriod的签名机制分两个阶段,在包扫描阶段,除非对应用软件的完整性和证书进行验证,普通package的签名和证书必须要经过验证才可以。在权限创建阶段,如果该package来自系统程序,则信任它并使用新的签名替换其原有签名以提升权限,如果不是来自系统程序,对应用软件签名和应用软件声明权限签名相同时,才可以授权,否则授权失败。

4.ART和Dalvilk虚拟机模式。

ART模式是Andriod 4.4版本后才增加的一种应用软件虚拟运行模式,原来老版本的Andriod操作系统运行的虚拟模式是Dalvilk模式,Dalvilk模式最初的设计目的是让Andriod操作系统可以适应不同配置硬件设备,不仅避免了因硬件无法满足要求导致应用软件无法运行,也降低了应用软件运行过程中出错导致Andriod操作系统出错的机率,这种模式无形之中对应用软件的进程进行了隔离,一定程度上保护了应用软件及其数据文件的完整性和机密性。

Andriod操作系统面临的安全威胁

Andriod操作系统虽有很好的安全机制,然而目前Andriod操作系统和Andriod手机的安全现状却不容乐观。随着Andriod操作系统和Andriod手机占有的市场份额越来越大,各类问题层出不穷,所谓“道高一尺,魔高一丈”,各类隐私窃取、盗取银行账户信息、吸费、偷流量、病毒木马、广告恶意推广、诱骗欺诈等问题不断涌现,其造成的危害也越来越大。

1.开源性给黑客以可乘之机。

Andriod操作系统的开源性让Andriod应用软件呈几何式增长,但也给各种病毒木马和恶意代码提供了隐蔽条件,让黑客等有了自由创造和发挥的空间,修改、反编译正规应用软件源码并植入木马、病毒和恶意代码变得相当容易,从而造成恶意应用、恶意病毒和木马应用软件呈井喷式增长,给Andriod操作系统带来的威胁越来越大。

2.存在大量内核和应用漏洞。

有安全机构发现所有Andriod操作系统均存在安全漏洞,不需任何权限,只要使用任意号码给Andriod手机发送一条任意内容的短信或彩信,就可以引发钓鱼攻击。这个漏洞的攻击原理是因为各类Andriod应用软件升级都需要重新安装程序,所以为避免频繁升级给用户体验和开发带来不便,这些Andriod应用软件大都使用插件机制来做到无缝升级和功能扩展,插件机制的实现方式是把扩展的功能编写成单独apk或jar文件,然后在程序运行时使用DexClassLoader函数动态加载,进行反射调用。由于Andriod应用的代码缓存机制会优先加载运行apk的缓存代码odex,黑客等只需对odex文件进行修改,就可以造成对插件文件所做的各种保护失效。

3.Andriod操作系统仍缺乏有效的杀毒等防护软件。

相比个人电脑,无论是从病毒的数量,还是在病毒种类上,手机病毒远没有个人电脑平台病毒多,因Andriod手机病毒查杀等防护件尚处于发展阶段,其成熟度远不及个人电脑病毒查杀软件。因Andriod操作系统的市场占有率,病毒的种类和数量比其他移动操作系统要多得多,各类安全问题也相对难以解决,造成这种状况的原因,一是Andriod杀毒软件起步比较晚,防护原理和方式不同于个人电脑,在技术上还不够完善,二是Andriod操作系统本身的安全机制造成防护方式困难,因Andriod采用了“沙箱”的权限隔离技术,查杀病毒等防护软件很大程度上也是被隔离的,所以在做防护的时候,如果赋予的权限不足,很难达到防护要求。三是针对Andriod的病毒木马等层出不穷,防护软件更新跟不上病毒木马的发展速度,即使采用云方式防护有时也无济于事。四是防护软件大多良莠不齐,很多防护软件界面不友好、占用内存过多、在恶意拦截方面均有不足、不能及时弥补Andriod操作系统漏洞和查杀病毒木马不彻底等。五是有的病毒木马存在于Andriod操作系统目录中,清除它就需要ROOT权限,而对大部分用户而言,需要一定的技术含量和安全风险,防护困难。六是相比Symbian、iOS、WindowsPhone系 统,Andriod在应用软件管理机制还存在较大不足,塞班系统是一个比较复杂的系统,里面安装的所有应用软件都必须通过塞班官方安全认证或用户给应用软件打数字签名作认证才可以,染毒风险要比Andriod操作系统小得多,而苹果的应用软件只能苹果官方软件店查找,苹果对软件功能和安全性审查非常严格,安全有一定保障,而WindowsPhone系统因市场占有率低,病毒危害面较窄。

4.各类Andriod应用软件市场和手机论坛缺乏安全审核及监管保护机制。

因为Andriod的开放性,也就造成了各类Andriod应用软件管理的无政府状态,目前各类Andriod应用软件市场和手机论坛已成为Andriod手机最大的威胁来源地,由于目前国内众多Andriod应用市场和手机论坛缺乏应用软件上传安全审核以及监管等机制,缺少在应用软件安全方面的统一管理,导致部分应用市场和手机论坛的应用软件上传安全审核非常不严格,要求非常低,大量恶意应用软件可以很轻易进入应用市场和手机论坛并对外提供下载,大部分Andriod手机用户都是通过这些应用市场和手机论坛寻找自己需要的应用软件。当前,有很多Andriod应用市场和手机论坛已经提高了准入应用软件的安全审核,一定程度上可以有效消除这方面的安全隐患。

5.用户不安全的使用习惯让Andriod手机面临威胁。

虽然Andriod操作系统有着这样或那样的安全隐患,但是均可采取一定方式进行补救或最大程序地消除这些安全隐患。但是如果用户不能使用正确的安全方式使用Andriod手机,那么所有的安全补救措施都将是无效的,用户不安全的使用习惯是让Andriod手机成为安全威胁的主要缘由。例如,不给Andriod手机设置开机密码,不给Andriod手机安装杀毒软件,不从安全的应用市场下载应用软件、喜欢经常蹭公共Wifi网络等。

养成安全使用习惯

Andriod手机虽然安全问题很多,培养一些好的使用习惯可最大程度地消除这些安全隐患,确保Andriod手机的软件安全。

1.不从非安全渠道下载Andriod应用软件

各类应用软件市场和手机论坛已成为Andriod手机最大的威胁源,国内现在有很多Andriod应用软件下载市场和手机论坛,但良莠不齐。笔者这里推荐几个准入安全审核严格Andriod应用软件市场:联想公司的乐商店、豌豆荚、百度移动应用中心、360手机助手、安卓市场、果冻应用助手、腾讯应用宝、淘应用等。如果非要从其他应用市场或手机论坛下载应用软件,一定要查看一下关于这款应用软件的用户评论,查看其是否存在安全问题,如果没有关于这款应用软件的用户评论,建议不要下载。

2.使用密码来保护手机安全

为手机设置一个开机密码和锁屏密码很有必要,对大部分用户而言,开机密码和锁屏密码可以预防大部分的安全隐患。设置密码最好的方式还是采用字母加数字的方式比较好,尽量少用那些奇怪的密码设置方式。同时给手机内的各类应用设置一个使用权限密码也很有必要,包括使用、安装、卸载等。

3.最大可能使用无线加密传输

使用无线加密传输可以有效避免数据在传输过程被窃取后破解的隐患,特别是在网购需要提供银行账户密码时,使用网购网站的安全插件很有必须,但是很多用户采用的却是一次性静态输入密码的方式进行网购,而没有采用双向握手认证和传输加密的方式,这是非常大的安全隐患。

4.使用安全网络上网

手机安全上网,要克服贪小便宜的毛病,因为很多用户为了省点流量喜欢连接免费的公共Wifi网络,但这些网络很多是不安全的,无论何时何地,尽量使用自己的网络而不是公共Wifi热点,毕竟电信运营商提供的无线网络安全性是值得信赖的,有些手机的网络设置中有Wifi自动连接的功能,只要有免费的Wifi,手机就自动连接,手机很容易在不知情的情况下被入侵。因此,用户最好把Wifi连接功能设置为手动,即使在使用这些免费的公共Wifi网络时,也不要使用网银等功能。

5.安装一个适合的杀毒防护软件

要给手机安装专业的手机安全应用软件很有必要,即使这些软件目前还不是很完善。安全应用软件相当于为Andriod手机上了一把锁,当然,很多比较好的安全应用软件是收费的,笔者推荐使用的手机杀毒软件有:大蜘蛛、诺顿(Norton Security)、瑞星手机杀毒、360手机专家、腾讯手机管家、百度手机卫士。用户可以根据自己的手机应用和特点选择适合自己手机的杀毒软件,不同的杀毒软件有不同的安全侧重点,例如,腾讯手机管家突出手机防盗、查杀病毒、低资源消耗和阻拦骚扰信息,百度手机卫士突出安全支付保障、系统优化和个人隐私防护,360手机专家突出免费解答、手机防盗和查杀病毒,瑞星手机杀毒突出查杀病毒。

6.及时清理手机

因为很多病毒和木马都在后台运行,所以及时清理手机可以有效消除这些安全隐患,当然及时清理手机也可以提高手机的使用体验。使用Andriod手机的朋友都有一个体会,手机刚买时还很顺畅,可是用到后来会越来越卡,造成卡顿的原因主要有以下几个方面:一是不良开发商为谋取暴利开发了很多植入广告应用软件,而且很多还会捆绑下载其他应用软件,本来自己是下载应用软件A,结果一不小心就会安装应用软件B、应用软件C等等,而这些应用软件和广告一般都会后台运行,即使不后台运行也会占用内存,病毒和木马也是采取这种方法。二是手机垃圾过多,手机其实跟个人电脑类似,用久了就会产生各种缓存文件,占用内存,此外,下载的各类应用软件、系统升级包、游戏软件,为了手机炫酷下载一些动态壁纸、用户自拍的照片、视频,每天聊的微信、QQ,发送图片和视频等都是手机空间和内存杀手。三是现在的应用软件越来越大,对系统的要求也越来越高,当然手机系统的升级也对硬件要求越来越高。所以可以卸载掉一些不用的应用软件,使用安全卫士禁止一些应用软件的开机自动运行,经常一键清理内存等。

7.不购买山寨机

很多山寨手机的ROM中都被内置了恶意代码,在刷机的时候也很容易刷入含有木马程序的系统ROM,而且很多山寨手机和问题应用软件构成了利益联盟,此外,山寨手机的Andriod操作系统无法升级,安全漏洞多,还有可能设有后门等。而正版品牌手机的安全认证非常严密,很少有这些安全隐患。

8.及时升级手机

有一些手机开发公司会定期升级Andriod操作系统及发布一些安全补丁,以便提升用户体验和解决系统中存在的各种漏洞,这是最基础的,及时升级和打补丁可以及时弥补系统漏洞,当然,不仅要及时升级Andriod操作系统,还要及时地升级手机中的各类应用软件,因为如果升级不及时,就可能造成手机上的漏洞被利用。

9.root手机需谨慎

现在很多使用Andriod操作系统的手机,无论是品牌手机还是山寨手机,都会自带一些应用软件,而这些应用很多用户不是不喜欢,就是感觉不安全,所以很多用户都会root手机。root来源于Linux,是系统管理员拥有操作系统的最高权限,若一台手机root了的话就可以访问、修改和获取所有手机内的文件,若有恶意应用利用root权限,就可以造成很严重的后果,即便安装了杀毒软件,这些恶意程序也会将杀毒软件关闭,而网上很多root手机的软件和刷机包,都是不安全和被植入恶意软件的。

猜你喜欢

木马机制软件
小木马
禅宗软件
骑木马
小木马
软件对对碰
自制力是一种很好的筛选机制
旋转木马
破除旧机制要分步推进
即时通讯软件WhatsApp
注重机制的相互配合