安全公司在Python组件存储库PyPI发现3个恶意后门组件

安全公司Reversing Labs在Python官方的第三方软件存储库PyPI(Python Package Index)发现了三个恶意Python组件,当用户在Linux系统安装了这些有后门的函示库,他们会启动并尝试从指挥与控制服务器下载文件。PyPI官方已经在收到通报后,下架这些恶意组件。

名为ruri12的用户在2017年11月,于PyPI上发布了3个有问题的组件,分别为libpeshnx、libpesh以及libari,安全研究人员提到,libpeshnx看起来像是另一个同一作者发布的恶意组件libpeshka的变体,只不过libpeshka已经被举报。而另外的两个组件libpesh以及libari,只有参照恶意函数但不包含其他程序代码。

libpeshnx就是一个恶意的后门组件,当组件被安装在Linux系统之后,组件就会尝试从指挥与控制服务器下载文件,并将命名为.drv的隐藏文件存储在用户主目录中,并将恶意程序本身隐藏在.bashrc中,每当用户初始登录打开壳层接口的时候,便会作为后台程序执行。libpeshnx还会创建恶意脚本,以执行开箱即用的恶意负载或是输入恶意函数库,不过需要指定精确的模块以及函数名称。

Reversing Labs提到,libpeshnx组件看起来是恶意软件的开发中版本,用户使用pip安装该组件的时候,并不会自动执行恶意函数,只会将函数安装成为函数库,而且在之前libpeshka被发现的时候,其指挥与控制服务器就已经下线不运行。

不过令人匪夷所思的是,libpeshnx每个月的安装次数仍然有82次,而且其他ruri12的组件安装次数更高。在Reversing Labs联系PyPI的安全团队之后,这些恶意组件都已经从存储库移除。

Reversing Labs提到,黑客总是在寻找各种攻击的渠道以及媒介,而现在流行的组件存储库也成为锁定的标的。在组件存储库发现恶意组件事件层出不穷,包括去年5月的时候,Node.js组件管理器Npm被发现存在伪装成Cookie解析器的恶意后门组件,PyPI也在去年10月的时候,被发现了12个恶意组件。