日前 Check Point 的研究人员发现一个代号为 ParseDroid 的漏洞会影响安卓开发者使用的开发工具,并允许攻击者在易受攻击的计算机上窃取文件和执行恶意代码。
Check Point 的安全研究人员发现,ParseDroid 会影响包含在 APKTool, IntelliJ, Eclipse 和 Android Studio 等项目中的 XML 解析库。
研究人员发现,在解析 XML 文件时,该库不会禁用外部实体引用,这是一个典型的 XML 外部实体注入攻击(XXE)漏洞,而且攻击者可以轻松利用该漏洞。
攻击者可以从运行易受攻击的 IDE 的 PC 上窃取文件
研究人员说,这个漏洞暴露了受影响用户整个系统的文件系统,因此攻击者可以通过使用一个恶意的 AndroidManifest.xml 文件来潜在地检索受害者 PC 上的任何文件。
我们知道所有安卓 app 都包含有一个 AndroidManifest.xml 文件,这使得它成为隐藏恶意代码的理想场所。
使用 APKTool, IntelliJ, Eclipse 或 Android Studio 等开发工具的开发者打开一个含有恶意 AndroidManifest.xml 文件的 app,会很容易被攻击者盗取本地文件。
Check Point 表示,它已通知了所有受影响产品的开发团队,团队也已经发布了修复 ParseDroid 漏洞的更新。使用这些工具编译或反编译安卓 APK 文件的安卓开发者和安全研究人员应该更新他们的 IDE 了。
此外,APKTool 还很容易受到第二个漏洞的影响。该漏洞允许攻击者在易受攻击的系统上执行攻击者所需的代码,这使得攻击者从窃取数据扩展到实施更复杂的事情,如将更高级的恶意软件植入特定目标的计算机上。
ParseDroid 攻击很容易执行
通过 ParseDroid 很容易对开发者进行攻击,因为恶意 XML 代码可以隐藏在许多其他地方,而不仅仅是 AndroidManifest.xml 文件。例如,恶意代码也可以隐藏在 AAR (Android Archive Library) 文件中。
此外,攻击者会将恶意代码托管至伪装成开源的 app 模块和库中,并将其放在 GitHub 上,然后就可以十分轻易地无需为 ParseDroid 攻击投入太多资源即可影响数千用户。
点此观看安全研究人员演示的攻击手段(需自备梯子)
ParseDroid 是一个跨平台的 bug,攻击者可攻击使用任何操作系统的开发者。而且,这种攻击是一个静默的过程,用户不会注意到黑客在窃取他们系统中的敏感文件。要知道许多开发者是在公司工作的,其中一些被黑客入侵的系统可能会包含闭源代码、知识产权或商业秘密。
当然,普通的 app 用户不用担心 ParseDroid 漏洞会给你造成影响。