GitHub告警:恶意软件正通过流行开源 IDE 攻击 Java 项目

2020 年 6 月 2 日 InfoQ
作者 | 田晓旭
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 服务器。

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

1Octopus 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 ,但是我们相信,在过去的两年中,应该有更多的存储库被感染了。”

2除了 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)文件。

参考阅读:

https://securitylab.github.com/research/octopus-scanner-malware-open-source-supply-chain


为你推荐


InfoQ Pro 是 InfoQ 专为技术早期开拓者乐于钻研的技术探险者打造的专业媒体服务平台。

扫描下方二维码关注 InfoQ Pro,获取更多精彩内容。


点个在看少个 bug 👇
登录查看更多
0

相关内容

NetBeans IDE是一个屡获殊荣的集成开发环境,可以方便的在Windows,Mac,Linux和Solaris中运行。NetBeans包括开源的开发环境和应 用平台,NetBeans IDE可以使开发人员利用Java平台能够快速创建Web、企业、桌面以及移动的应用程序,NetBeans
IDE目前支持PHP、JavaScript、Ajax、Groovy、Grails和C /C + +等开发语言。
  NetBeans项目由一个活跃的开发社区提供支持, NetBean开发环境提供了丰富的产品文档和培训资源以及大量的第三方插件。
【2020新书】实战R语言4,323页pdf
专知会员服务
100+阅读 · 2020年7月1日
【2020新书】使用高级C# 提升你的编程技能,412页pdf
专知会员服务
57+阅读 · 2020年6月26日
AI创新者:破解项目绩效的密码
专知会员服务
33+阅读 · 2020年6月21日
专知会员服务
109+阅读 · 2020年3月12日
【书籍推荐】简洁的Python编程(Clean Python),附274页pdf
专知会员服务
180+阅读 · 2020年1月1日
TheFatRat 一款简易后门工具
黑白之道
35+阅读 · 2019年10月23日
Kali Linux 渗透测试:密码攻击
计算机与网络安全
16+阅读 · 2019年5月13日
“黑客”入门学习之“windows系统漏洞详解”
安全优佳
8+阅读 · 2019年4月17日
Linux挖矿病毒的清除与分析
FreeBuf
14+阅读 · 2019年4月15日
百度开源项目OpenRASP快速上手指南
黑客技术与网络安全
5+阅读 · 2019年2月12日
3月份GitHub上最热门的开源项目
大数据技术
3+阅读 · 2018年4月10日
Arxiv
6+阅读 · 2018年4月4日
Arxiv
7+阅读 · 2018年3月19日
Arxiv
6+阅读 · 2018年1月14日
VIP会员
相关资讯
TheFatRat 一款简易后门工具
黑白之道
35+阅读 · 2019年10月23日
Kali Linux 渗透测试:密码攻击
计算机与网络安全
16+阅读 · 2019年5月13日
“黑客”入门学习之“windows系统漏洞详解”
安全优佳
8+阅读 · 2019年4月17日
Linux挖矿病毒的清除与分析
FreeBuf
14+阅读 · 2019年4月15日
百度开源项目OpenRASP快速上手指南
黑客技术与网络安全
5+阅读 · 2019年2月12日
3月份GitHub上最热门的开源项目
大数据技术
3+阅读 · 2018年4月10日
Top
微信扫码咨询专知VIP会员