自 2021 年以来,一个名为“fabrice”的恶意 Python 包一直出现在 Python 包索引 (PyPI) 中,从开发人员那里窃取 Amazon Web Services 凭证。
据应用安全公司 Socket 称,该软件包已被下载超过 37,000 次,并执行 Windows 和 Linux 平台特定的脚本。
大量下载是由于fabrice 对合法的SSH 远程服务器管理包“fabric”进行错字造成的,这是一个非常受欢迎的库,下载量超过2 亿次。
该 Fabrice 之所以长期未被检测到,是因为在 PyPI 上首次提交后就部署了先进的扫描工具,而且很少有解决方案进行追溯扫描。
Fabrice 包旨在根据其运行的操作系统执行操作。
在 Linux 上,它在“~/.local/bin/vscode”处设置一个隐藏目录,用于存储分割成多个文件的编码 shell 脚本,这些文件是从外部服务器 (89.44.9[.]227) 检索的。
研究人员解释说,shell 脚本被解码并授予执行权限,让攻击者能够以用户权限执行命令。
在 Windows 上,fabrice 下载编码的有效负载 (base64),该有效负载是为启动隐藏的 Python 脚本 (d.py) 而创建的 VBScript (p.vbs)。Python 脚本负责获取恶意可执行文件(“chrome.exe”),该可执行文件被放入受害者的下载文件夹中。
其目的是安排 Windows 任务每 15 分钟执行一次,以确保重新启动后的持久性。
无论使用哪种操作系统,fabrice 的主要目标都是使用“boto3”(Amazon Web Services 的官方 Python SDK)窃取 AWS 凭证,从而允许与平台进行交互和会话管理。
Boto3 会话初始化后,它会自动从环境、实例元数据或其他配置的源中提取 AWS 凭证。然后,攻击者将窃取的密钥泄露到 VPN 服务器(由巴黎的 M247 运营),这使得追踪目的地变得更加困难。
Python函数窃取AWS凭证
当用户检查从 PyPI 下载的包时,可以降低拼写错误的风险。另一种选择是专门为检测和阻止此类威胁而创建的工具。
在保护 AWS 存储库免遭未经授权的访问方面,管理员应考虑使用 AWS Identity and Access Management (IAM) 来管理资源权限。
参考及来源:https://www.bleepingcomputer.com/news/security/malicious-pypi-package-with-37-000-downloads-steals-aws-keys/