近日Dirty Stream漏洞成為(wèi)移动安(ān)全领域热点话题,该漏洞普遍存在于Android应用(yòng)程序中(zhōng),可(kě)能(néng)允许攻击者将恶意代码伪装(zhuāng)為(wèi)合法文(wén)件,写入APP私有(yǒu)储存空间,进而控制应用(yòng)程序并窃取有(yǒu)价值的用(yòng)户信息。调用(yòng)安(ān)卓操作(zuò)系统FileProvider组件的APP均可(kě)能(néng)涉及该漏洞!
微软研究显示该漏洞影响范围广泛,涉及多(duō)款数十亿次下载的流行Android应用(yòng)程序,其中(zhōng)多(duō)款國(guó)内知名(míng)APP已被证实受此漏洞影响,國(guó)家监管机构对该漏洞高度关注,工(gōng)信部已通过网络安(ān)全威胁和漏洞信息共享平台发出安(ān)全提示。為(wèi)协助企业排查漏洞,爱加密宣布可(kě)免费协助企业就Dirty Stream漏洞进行针对性检测!企业可(kě)于文(wén)末填写资料报名(míng)。
爱加密组织安(ān)全专家对该漏洞进行复现,据调研,漏洞成因是APP读取测试人员提供的content provider name字段时未过滤"../",导致可(kě)以拼接穿越路径。该机制利用(yòng)了APP盲目信任输入,发送带有(yǒu)特定文(wén)件名(míng)的任意有(yǒu)效载荷,从而导致代码执行。
下图中(zhōng)為(wèi)导致该漏洞出现的K函数核心片段。
经过爱加密评估,攻击者必须通过手机发起进攻,且攻击者手机必须安(ān)装(zhuāng)目标APP并提供content provider组件,目标APP数据库里须写上穿越路径,之后发送Intent调起目标APP。该漏洞利用(yòng)的前置要求较高。
目前,谷歌官方已发布修补该漏洞的安(ān)全开发指南,可(kě)妥善解决原有(yǒu)代码问题,指南强调,当APP将接收到的文(wén)件写入存储时,应该忽略服務(wù)器应用(yòng)程序提供的文(wén)件名(míng),而使用(yòng)自己内部生成的唯一标识符作(zuò)為(wèi)文(wén)件名(míng),如果生成唯一的文(wén)件名(míng)不能(néng)轻易实现,客户端应用(yòng)程序就应该对提供的文(wén)件名(míng)进行核验、清查。
修补前代码如下:
修补后可(kě)过滤"../",已解决本漏洞,代码如下。
爱加密移动应用(yòng)安(ān)全检测平台可(kě)通过极為(wèi)优秀的静态检测技(jì )术和动态检测技(jì )术,本次可(kě)為(wèi)企业免费检测包括Dirty Stream漏洞在内的160余项Android安(ān)全风险及漏洞。
涵盖基本信息检测、源文(wén)件安(ān)全、数据存储风险、内部数据交互风险、通信传输风险、身份认证风险、组件风险、HTML5风险、安(ān)全防护能(néng)力、第三方SDK风险、服務(wù)端数据泄露风险、通用(yòng)WEB风险、内容风险、优化建议等方面。
平台可(kě)实现一套系统实现全平台检测!覆盖Android、iOS、鸿蒙三大平台,并且支持微信小(xiǎo)程序检测。在检测技(jì )术上,支持静态检测技(jì )术和动态检测技(jì )术,全面准确发现安(ān)全问题。
上一篇: 没有(yǒu)了