ReversingLabs的安全研究人员发现了一种新的攻击,该攻击使用编译过的Python代码来逃避检测。
据ReversingLabs逆向工程师Karlo Zanki称,这可能是利用Python字节码(PYC)文件的直接执行能力进行供应链攻击的第一个实例。
该方法为未来引入了另一个供应链漏洞,因为大多数安全工具只扫描Python源代码(PY)文件,使它们容易错过此类攻击。Zanki说:“这与向Python包索引(PyPI)提交有害内容的增加是一致的。”
ReversingLabs还表示,他们向PyPI安全团队报告了发现的软件包fshec2,后者承认这是以前从未见过的攻击,并在当天将其从PyPI存储库中删除。
Vulcan Cyber高级技术工程师Mike Parkin解释说:“这是一种更常见的供应链攻击的有趣新变种,威胁行为者将恶意库放入公共存储库。”
它利用了一些技术,可以帮助它避开现有的安全工具,在工具更新到可以处理编译后的Python代码之前,这些工具可能会有问题。
事实上,攻击者使用了一种独特的加载技术,该技术使用Importlib模块来避免检测。
Tanium首席安全顾问Timothy Morris评论道:“这种混淆技术允许编译后的代码通过安全扫描器。捕获这种类型的代码需要对源代码进行静态分析,这很困难,如果不是不可能的话,因为它是编译的。”
然后,恶意软件有一个命令与控制(C2)基础设施,允许它通过从远程服务器下载新命令来进化。
ReversingLabs团队还在攻击者的网络主机中发现了错误配置,这为了解恶意软件的功能提供了线索。根据该公司的报告,这次攻击感染了至少两个目标,收集了用户名、主机名和目录列表。
Coalfire的副总裁Andrew Barratt说:“ReversingLabs发现的PyPi恶意软件的新奇之处让我想起了DLL劫持的一些特征。本质上是受信任的应用程序可以加载恶意代码。令人不安的是,我们发现攻击者故意用这些技术瞄准代码库,显然是在寻找大规模部署向量,这开始让人感觉像是勒索软件活动的前兆。”
在ReversingLabs发现这一发现的几周前,Cyble披露了另一个具有信息窃取功能的恶意PyPI。