下载量达数千次的27个恶意 PyPI 包瞄准IT专家
编译:代码卫士
近六个月来,某未知威胁行动者正在向 PyPI 仓库发布typosquat 包,意在传播能够获得持久性、窃取敏感数据并访问密币钱包意获得经济收益的恶意软件。
Checkmarx 公司提到,这27个包伪装成热门合法的Python库,吸引了数千次下载。大多数下载源自美国、中国、法国、中国香港、德国、俄罗斯、爱尔兰、新加坡、英国和日本。
研究人员指出,“这起攻击的特点在于使用隐写术将恶意payload隐藏在看似无害的镜像文件中,从而增加了攻击的隐秘性。”其中一些包是 pyefflorer、pyminor、pyowler、pystallerer、pystob和 pywool,其中最后一个包在2023年5月13日植入。
这些包的一个共同特征是使用 setup.py 脚本将引用包含在其它恶意包(如 pystob和pywool)部署 Visual Basic Script (VBScript),以下载和执行名为 “Runtime.exe” 的文件,在主机上实现可持久性。该二进制中嵌入的是一份编译文件,能够从 web 浏览器收集信息、密币钱包和其它应用。
研究人员发现了某供应链将可执行代码嵌入 PNG 镜像 (“uwu.png”) 中,最后被解密和运行,提取受影响系统的公开IP地址和 UUID。Pystob 和 Pywool 伪装成API管理工具发布,将数据提取到一个 Discord webhook 中,并通过将 VBS 文件放置在 Windows 设置文件夹的方式维护可持久性。
研究人员提到,“该攻击表明当前的数字化局势中存在威胁,尤其是在协作和代码公开交流是基础性的领域更是如此。”
前不久,ReversingLabs 发现了一批关于抗议软件的 npm 包,“将播报与乌克兰、以色列和加沙地带有关的和平信息”。其中一个名为 @snyk/sweater-comb(版本2.1.1)包判断主机的地理位置,如果发现是俄罗斯,则会通过另外一个名为 “es5-ext” 的模块发布指责对乌克兰的“非正义侵略”。另外一个包 e2eakarev 在 package.json 文件中的描述是“解放巴勒斯坦抗议包”,也会执行类似检查,查看IP地址是否解析到以色列;如是,则会展示被称为“无害抗议信息”,督促开发人员提高对巴勒斯坦困境的关注。
并非只有威胁组织在渗透开源生态系统。上周早些时候,GitGuardian 披露称,2922个 PyPI 项目中存在3938个唯一机密,其中768个唯一机密是合法的,其中包括 AWS 密钥、Azure Active Directory API 密钥、GitHub OAuth app 密钥、Dropbox 密钥、SSH 密钥以及与 MongoDB、MySQL、PostgreSQL、Coinbase 和Twilio 关联的凭据。而且,其中很多机密遭泄露的次数不止一次,涉及多个发布版本,总发生数达到56,866次。GitGuardian 公司相关人员 Tom Forbes 提到,“泄露开源包中的机密为开发人员和用户造成重大风险。攻击者可利用这种信息获得越权访问权限、模拟包维护人员或通过社工操纵用户。”
针对软件供应链持续不断的攻击,促使美国政府在本月发布面向开发人员和供应商的新指南,要求他们维护和关注软件安全。CISA、NSA和ODNI 三部门联合指出,“鉴于近期软件供应链事件频发,建议组织机构在做采购决策时将供应链风险评估考虑在内。软件开发人员和供应商应当改进软件开发流程,不仅降低对员工和投资人的风险,而且还降低对用户的风险。”
题图:Pexels License
本文由奇安信编译,不代表奇安信观点。转载请注明“转自奇安信代码卫士 https://codesafe.qianxin.com”。
奇安信代码卫士 (codesafe)
国内首个专注于软件开发安全的产品线。