导语:有没有想过,一张看起来似乎是每个人随时都能欣赏到的GIF图,其实能够造成你的Android短信应用崩溃呢?

有没有想过,一张看起来似乎是每个人随时都能欣赏到的GIF图,其实能够造成你的Android短信应用崩溃呢?

我们最近报告给Google的一个拒绝服务(DoS)漏洞就能实现这一点。该漏洞为CVE-2017-0780,主要目标为最新版的Nexus以及Pixel设备。通过发送格式不正确的彩信(MMS),该安全漏洞可以允许攻击者非法和远程地瓦解其受害者的Android消息应用程序,致其完全崩溃。即使设备/系统重新启动或以安全模式启动,该应用程序也无法从崩溃状态中恢复。

影响

Google Play Store拥有超过5000万Android消息应用安装量。而且它还是许多Nexus和Pixel设备的默认消息应用程序(即意味着无法卸载),所以,对于使用它的终端用户和企业而言,该安全漏洞的影响可谓显而易见。

例如,企业可以利用Android消息应用来改善与客户的沟通方式。用户也可以创建更多个性化消息,不至与其他不同的应用混淆。而且,考虑到该应用程序已经被定位成为各种Android消息平台提供无缝消息传递服务,所以一旦该应用程序无法使用,势必将对Android用户的沟通方式和效果产生不利的影响。

此外,应用程序无法访问也可能是潜在攻击的催化剂,因为设备所有者将无法查看、删除或控制这些信息。例如,攻击者可以接管用户设备的SMS/MMS功能,或发送和接受包含恶意软件的SMS消息,这是已知某些移动威胁行为者最常使用的手段。

技术分析

我们在对Android消息应用中的GIF文件进行分析时发现,该漏洞涉及许多未处理的Java级NullPointerException(空指针异常,简称NPE)。利用该漏洞攻击者只需要一个电话号码将恶意GIF文件发送给潜在受害者即可。

 

CVE-2017-0780-android-messages-1.png

【图1: Android消息中的FrameSequenceDrawable】

Android消息使用FrameSequenceDrawable来显示GIF文件。FrameSequence首先会根据GIF文件构建位图(bitmap)对象,然后framesequeceDrawable组件使用该位图(bitmap)显示GIF。但是,我们看到acquireAndValidateBitmap函数调用了位图中的“acquireBitmap”(包括图像文件的像素数据),而没有检查其是否有效。

 CVE-2017-0780-android-messages-2.png

【图2: acquireBitmap函数(重点突出部分)】

当FrameSequence尝试根据一个格式不正确的GIF构建位图时,我们看到“acquireBitmap”函数可能会失败并返回null。因此,如果另一个模块/组件或变量引用此空对象,则会触发空指针异常(NPE)。

不幸的是,Android操作系统和Android消息应用都不处理此异常。这就导致消息应用程序在解析MMS中格式错误的GIF有效载荷时直接崩溃。

 CVE-2017-0780-android-messages-3.png

【图3:NPE被触发】

缓解方案

用户可以选择重新刷新设备或将其重置为出厂设置。这将删除恶意的GIF文件以及存储在设备中的所有其他文件。不过,在此过程中用户需要衡量风险,或者先考虑先备份文件,然后再重新刷新或重置手机。不幸的是,卸载并重新安装应用程序并不能解决该问题。

另一种方法是手动禁用Android消息的“自动下载彩信”功能。备选方案还包括使用不受影响的消息应用程序手动删除恶意的MMS文件。

CVE-2017-0780-android-messages-4.png

【图4:应用程序的高级设置,显示如何禁用“自动下载彩信”功能】

随着移动设备越来越普及,用户需要采取良好的安全习惯来尽可能避免此类安全漏洞的攻击。当收到未经请求的、可疑的以及未知的邮件和链接时,一定要谨慎处理,并且要定期保持设备操作系统及应用程序的更新升级。

幸运的是,最新版的Nexus和Pixel设备具有更为完善、统一的补丁程序的优点。但是,其他Android设备上的更新仍然是零散的,因此用户可以联系他们的设备制造商来获得最新更新程序的可用性。对于组织而言,IT/系统管理员应该执行更强大的补丁管理策略,以帮助提高BYOD设备的安全性。

我们已经向Google披露了该安全问题,Google也已经在2017年9月的Android安全公告中发布了该安全漏洞的修复程序,并已经成功部署到了Google Play商店中,相关用户可以前往下载。此外,Google还增加了安全网络日志,以监测在野利用此漏洞的任何攻击行为。

源链接

Hacking more

...