“套娃”攻击 NetBeans 构建过程,GitHub发现新的恶意软件Octopus Scanner

2020 年 6 月 02 日

“套娃”攻击 NetBeans 构建过程,GitHub发现新的恶意软件Octopus Scanner

GitHub 安全博客发布了一则通知,警告用户目前正有一种新的恶意软件在攻击 Java 项目。据了解,这是一个针对 Apache NetBeans IDE 项目的开源供应链攻击,GitHub 安全团队将其称为 Octopus Scanner。一旦感染,恶意软件会寻找用户开发系统上的 NetBeans 项目,然后将恶意负载嵌入到项目文件中,使得每次项目构建都会执行恶意负载。


3 月 9 日,GitHub 收到了安全研究员 JJ 发来的警告通知:“我发现了一组感染了恶意程序 Octopus Scanner 的开源库。”随后,GitHub 开始自查,在站点上共发现了 26 个包含 Octopus Scanner 恶意软件的存储库。


据 GitHub 称:“当用户下载了这 26 个存储库中的任何一个时,该恶意软件就会像自传播病毒一样,感染本地计算机,并扫描用户的工作站,查看是否有本地 NetBeans IDE 安装,如果有,会继续深入影响计算机中的其他 Java 项目。”


安全研究员 JJ 表示,如果发现了 NetBeans IDE,Octopus Scanner 恶意软件会通过以下两个步骤继续进行 NetBeans 项目的后门构建:


  • 每次构建项目时,产生的 JAR 文件都会被 dropper 感染。执行时,dropper 有效负载会确保本地系统持久性,并产生一个远程管理工具(RAT),连接到 C2 服务器。

  • 它会阻止新项目构建来替换受感染的构建,以确保恶意构建项目一直存在。


Octopus Scanner 的感染过程


Octopus Scanner 恶意软件可以在 Windows、Linux 和 macOS 上运行,能够识别 NetBeans 项目文件,并将恶意有效负载嵌入项目文件和构建 JAR 文件中。


安全研究员 JJ 发布了 Octopus Scanner 恶意软件的具体攻击过程:


  • 识别用户的 NetBeans 目录

  • 枚举 NetBeans 目录中的所有项目

  • 将恶意负载复制 cache.dat 到 nbproject/cache.dat

  • 修改 nbproject/build-impl.xml 文件以确保每次构建 NetBeans 项目时都执行恶意有效负载

  • 如果恶意负载本身是 Octopus Scanner 的一个实例,则新建的 JAR 文件也会被感染。


据了解,Octopus Scanner 感染计算机的最后一步是下载一个远程访问木马,这样攻击者就可以在用户的计算机中搜集敏感信息。


需要注意的是,Octopus Scanner 在感染过程中可能会发生“变异”。虽然 GitHub 目前只能访问一个 Octopus Scanner 样本,但是在受感染的存储库中发现了四个不同版本的 NetBeans 感染项目,其中三个都是影响下游系统,例如,直接在受感染的存储库中进行构建,或者是使用受感染的构建工具在下游系统中生成了受感染的工具,逐步形成“套娃”传播。另外一个“变体”是执行本地系统感染,但不影响构建工具。


攻击者的目的是什么?攻击者的真正目的可能不是要影响 Java 项目,而是想要在开发敏感项目或主流软件开发公司内部人员的计算机上“留一手”,通过 RAT 病毒窃取到即将发布的工具、企业级软件及闭源软件的敏感信息。


GitHub 表示:“Octopus Scanner 恶意软件已经运行多年了,最早可以追溯到 2018 年 8 月,当时是上传到了 VirusTotal web scanner 上。截止到现在,Octopus Scanner 一直没有被有效阻止,虽然这次只在 GitHub 的 26 个存储库中发现了 Octopus Scanner ,但是我们相信,在过去的两年中,应该有更多的存储库被感染了。”


除了 NetBeans,其它 IDE 可能也会受影响


GitHub 安全团队在一份报告中称:“Octopus Scanner 恶意软件主要攻击的是 NetBeans 构建过程,但其实 NetBeans 并不是 Java 项目最常用的 IDE。”


由此,GitHub 猜测,如果攻击者专门花时间开发了针对 NetBeans 的恶意软件,那么就意味着这可能是有针对性的攻击,也许他们针对 Make,MsBuild,Gradle 等构建系统也实施了相同的恶意攻击,只是现在还没有引起注意。



更令人不安的是,Octopus Scanner 很难被检测出来,GitHub 向 VirusTotal 上传了样本,60 个杀毒软件只有 4 个能将其检测出来。恶意软件伪装成了 ocs.txt 文件,但实际上它是一个 JAR(Java Archive)文件。


详细信息:


The Octopus Scanner Malware: Attacking the open source supply chain


2020 年 6 月 02 日 08:53611
用户头像
田晓旭 InfoQ 编辑

发布了 413 篇内容, 共 192.4 次阅读, 收获喜欢 1224 次。

关注

评论

发布
暂无评论
发现更多内容
“套娃”攻击 NetBeans 构建过程,GitHub发现新的恶意软件Octopus Scanner-InfoQ