意大利的研究人员目前发现了一个安卓系统的漏洞,该漏洞可以被黑客用来发动DoS攻击,导致移动设备完全瘫痪。在发现漏洞之后,该研究团队已为此安卓操作系统打上了补丁。
据悉,此漏洞利用程序(exploiting application)主要针对安卓操作系统在Linux层上的Zygote套接字(socket),迫使系统进行资源分配,从而发起大量的虚拟进程访问请求,最终消耗掉设备的全部内存资源。
该研究小组的成员包括亚利桑德罗-阿曼多、阿莱西欧-莫洛、卢卡-费德拉梅(此三人来自热那亚大学)和莫罗-米格利阿迪(来自帕多瓦大学),他们在拥有root权限和制造商版本的安卓系统上对此漏洞均进行了测试,所涉及的移动设备包括:LG Optimus One、三星Galaxy Tab 7.1和HTC Desire HD。
据称,这一漏洞利用程序叫做“DoSChecker”。在测试中,如果是运行在低内存的设备上(如Optimus One),将导致设备在1分钟之内崩溃,内存稍大一点设备也好不到哪去,三星Galaxy平板电脑在2分钟之内崩溃。该研究小组表示,当DoS攻击发生时,“用户会发现系统的反应能力不断下降,最终崩溃并重启。”
虽然设备崩溃之后会试着重新启动,但是研究人员表示,真正的攻击者会设计一种能够调用DoSChecker程序的恶意软件,并在启动时被系统自动加载,从而不断导致设备崩溃和重启。这种问题的解决办法是用户必须手动检查并卸载这一恶意软件,或者给设备重新刷机。除了测试较早的系统,研究人员还在模拟设备上测试了安卓4.0和4.0.3版本,得到的结果相同。
研究人员给出了两个可以应对此漏洞的办法:
1. Zygote进程改进。检查对Zygote进程的资源分配请求是否合法(目前,只有系统服务器才能提出这种请求,但研究人员开发的补丁也考虑到了未来可能的情况。)
2. Zygote套接字改进。严格限制Linux层Zygote套接字的权限。
以上两种应对策略在模拟和实际的设备上均效果良好,研究人员已把漏洞及其解决办法发给了安卓安全小组。据悉,因为这一漏洞可能造成潜在的巨大安全事件,谷歌将会在最近一次的安卓更新中加入对应的补丁。