VMConnect-Blog ReversingLabs 在 Python 包索引(PyPI)开源存储库中发现了多个恶意的 Python 软件包。总体来说有 24 个恶意软件包,它们模仿了三个流行的开源 Python 工具:
vConnector
,一个用于 pyVmomi VMware vSphere 绑定的封装模块 pyvmomi;eth-tester
,一组用于测试基于以太坊的应用程序的工具;databases
,为多种数据库提供异步支持的工具 asyncio.html。
与其他最近的供应链攻击活动不同,例如 Operation Brainleeches。它们通过实现所模仿模块的全部功能,并创建相应的、链接的 GitHub 项目,该项目在 PyPI 发布软件包中省略了恶意功能,从而实现了这一点。下面是VMConnect 分析过程。
分析过程
在 VMConnect 的 /init.py/
文件中的代码能够创建一个进程,使用 Base64 算法解码数据,并将二进制数据转换为其字符串表示,这是一种常用于混淆的行为。
B64编码的字符串在另一个进程中被解码并执行:
解码这个字符串,包含一个下载 URL,该 URL 基于从主机机器收集的信息进行修改。在命令和控制 URL 中的子字符串 /paperpin3902/
被替换为一个字符串,其中包含主机平台名称的第一个字母、用户名和一个随机的、6 个字符长的字符串。
解码和执行的 Base64 字符串包含一个无限循环,该循环联系C2服务器,尝试下载包含其他命令的另一个 Base64 编码的字符串。如果成功,该代码将被执行,并且在预配置的休眠周期后,受感染主机会轮询 C2 服务器以获取新的命令。
C2 服务器是活跃的,但没有观察到它提供任何命令。由于命令获取是在无限循环中执行的,因此可能是在感染的机器被确定为对威胁参与者感兴趣之后,C2 服务器的操作者才会上传命令。或者,C2 服务器可能在执行某种类型的请求过滤。例如,攻击者可以根据受感染机器的 IP 地址过滤请求,以避免感染特定国家的目标。
GitHub 诱饵
VMConnect 软件包于 7 月 28 日由一个名为 Hushki Manager 的开发人员发布,这是一个同一天创建的临时 PyPI 帐户,仅发布了一个软件包。
hushki502 用户的 PyPI 配置文件
它有一个看起来合法的描述,而该描述与软件包内的功能相符合。一般攻击者通常不会费心整理 PyPI 网站上的项目描述。相反,攻击者通常依赖于简单的包名错位,以便欺骗尽量多的开发人员安装他们的恶意文件。例如,最近发现的 Operation Brainleeches 活动背后的威胁攻击者在掩盖其恶意软件包方面几乎没有任何掩盖,使用了像 index.html 和 DEMO.txt 这样的默认文件名,这很可能是从网络钓鱼工具包中复制并在发布之前进行了很小的修改。
VMConnect 软件包描述:
然而,在这次活动中,攻击者采取了更加深入的方法。除了重新使用实际软件包的描述外,攻击者还在同一天创建了一个相应的 GitHub 源代码存储库的链接,该存储库由同一作者创建。GitHub 项目站点看起来可信,与 PyPI 站点上的描述相匹配,并且在发布的文件中没有明显的可疑内容。
hushki502 用户的 GitHub 配置文件:
最后,恶意攻击者还注意隐藏了这个工具的恶意性质,通过从发布到 GitHub 存储库的 /init.py/ 文件中省略了恶意功能:
从历史上看,许多供应链安全解决方案依赖于第三方库的源代码审查。因此,攻击者有动机让代码扫描工具和手动代码分析员难以察觉。对于审阅者来说,如果 PyPI 项目有一个对应的 GitHub 存储库链接,而且这个链接似乎不是随意的,那么 PyPI 项目往往会看起来更可信。
在恶意 PyPI 软件包的情况下,攻击者创建了一个与 PyPI 软件包名称相同的虚假 GitHub 存储库,并将合法 GitHub 项目的整个功能复制到相应的 PyPI 项目中。然而,恶意功能在源代码中不存在。只有通过扫描构建过程中使用的构建工件才能检测到这种威胁。
在去年发现的 npm coinminer的情况中,我们观察到了类似的策略。在那次活动中,发布软件包的内容是一个临时的“维护模式”网站,与相应的源代码存储库中托管的内容也不同。与当前的 PyPI 软件包一样,恶意内容被添加到了合法的公共源代码中,从而产生了一个与构建在其上的开源代码非常相似的 PyPI 发布软件包,但其中有一些微妙(和恶意的)的变化可能很容易被忽视。
我们检测到的软件包模仿了多种广受欢迎的 PyPI 软件包,这些软件包具有广泛的分发范围,但服务于非常不同的目标。连接这些被模仿的 PyPI 软件包的共同线索似乎只是它们的受欢迎程度,以每月下载量来衡量。
恶意 VMConnect 项目的 GitHub 描述 :
合法 vConnector 项目的 GitHub 描述 :
在这种情况下,vConnector 是一个相当受欢迎的软件包,首次发布于九年前,最后的修改是在近四年前提交到 GitHub 存储库的。该软件包的下载统计数据显示,它每月有近 4 万次下载。大量的每月下载量加上缺乏最近的维护,使得这个软件包成为一个非常好的冒名顶替目标。
结论
恶意软件包的模仿趋势正在变得越来越明显。在这次 VMConnect PyPI 活动中,恶意行为者通过模仿广受欢迎的 Python 工具库,尤其是 vConnector 和 /osinfo/,以及创建与之相应的 GitHub 存储库,成功地隐藏了其恶意软件包的真实性质。这种模仿的策略对于开发人员和安全团队来说都是一个挑战,因为它们不再可以仅仅依靠源代码审查来检测恶意行为。要抵御这种供应链攻击,开发者和安全团队需要采取综合的防御策略,包括自动化工具、行为分析和源代码审查。同时,平台运营者也应当继续加强对开源软件包的安全监控,以及对可能的恶意活动进行及时的响应和干预。
IOC
45[.]61[.]139[.]219
ethertestnet[.]pro
deliworkshopexpress[.]xyz
package_name | version | SHA1 |
---|---|---|
VMConnect | 1.1.7 | b0095f149951241c6e11e0d1be1f74e8cdfbdbb2 |
VMConnect | 1.1.7 | 2ff1b3aa2dbff6d87447b250a8d19241e7853ab0 |
osinfopkg | 0.0.2 | 67226da423ab4a2c97b2d008dec45280aaa5fdf5 |
osinfopkg | 0.0.2 | 146942c5dbaba55be174b1bfb127410e332caa03 |
osinfopkg | 0.0.3 | 0eb79e80c51c0e14be3620dfb237f7b53160a292 |
osinfopkg | 0.0.3 | bc2d48d6d9eeaf0b29625683942e90dfd2b75723 |
osinfopkg | 0.0.4 | 9a276ca3678898f5596166416f7e709a2064e95c |
osinfopkg | 0.0.4 | 658605988c7afd9adf437fb64ff682cb4190f144 |
osinfopkg | 1.0.1 | 5f03b73d56528ecbc3f24b8e7daec6b3d3370834 |
osinfopkg | 1.0.1 | 19684554e4905bb3cf354a5d5a0f00d696f38926 |
osinfopkg | 1.0.2 | e531121b137182453f0d120be860ad882d2dc0a7 |
osinfopkg | 1.0.2 | b1f2d50be0aca0672475488d77c6f71a1b0633f8 |
osinfopkg | 1.0.3 | de4e9efeace6ff76dc00a166dca152dc3021d799 |
osinfopkg | 1.0.3 | 664f0913a5952eeb77373f83e090fab7e94aa45e |
osinfopkg | 1.0.4 | bd7ba47f730c2bc33afa67a39d9cbe3768f62426 |
osinfopkg | 1.0.4 | 0dc723e77a5b97183a90eaecb62c9b7341e483ed |
ethter | 0.9.1b1 | 6bf76b01bd17f370cd3f9947135bf250597d1ac1 |
ethter | 0.9.1b1 | 497df2fd2dba324be04cc57f50a3170b532aa70c |
ethter | 1.10.1b1 | d404a55f1f7fbcd8b3156a84ebcf97c57ba24b95 |
ethter | 1.10.1b1 | 9588affaf9d85e2141b9d76b914d9f89a8292574 |
quantiumbase | 0.7.0 | dbc14c3ac0528a8aeb6edba8a0b2792dab131102 |
quantiumbase | 0.7.0 | 0b7b4444f820e9990dfeb5e2080321b5f25a9785 |
quantiumbase | 0.8.1 | e6494b9a91862191556d77022e5577ddbe749ef4 |
quantiumbase | 0.8.1 | a1b039f88c385f5c5eec2ef1701251c7341b1fcd |
推荐站内搜索:最好用的开发软件、免费开源系统、渗透测试工具云盘下载、最新渗透测试资料、最新黑客工具下载……
还没有评论,来说两句吧...