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

♀尐吖头ヾ 提交于 2020-07-28 07:35:22

云栖号资讯:【点击查看更多行业资讯
在这里您可以找到不同行业的第一手的上云资讯,还在等什么,快来!

itHub 安全博客发布了一则通知,警告用户目前正有一种新的恶意软件在攻击 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 服务器。

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

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

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

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

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

320568C8_574F_4c19_B249_7752E074F318

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

【云栖号在线课堂】每天都有产品技术专家分享!
课程地址:https://yqh.aliyun.com/zhibo

立即加入社群,与专家面对面,及时了解课程最新动态!
【云栖号在线课堂 社群】https://c.tb.cn/F3.Z8gvnK

原文发布时间:2020-06-02
本文作者: 田晓旭
本文来自:“InfoQ”,了解相关信息可以关注“InfoQ

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!