Python隐藏漏洞通过超14.5万个软件包传播
新泽西理工学院的一项研究揭露了Python软件包生态系统中潜藏的大规模安全隐患。这项名为"PyPitfall"的研究报告揭示,复杂且深度嵌套的软件包依赖关系正在数千个项目中无声传播已知安全漏洞。"一个软件包中的漏洞可能通过其依赖关系传播,最终影响下游软件包和应用程序,"研究人员警告称。漏洞传播规模惊人
Python作为最流行编程语言的地位,很大程度上得益于PyPI(Python Package Index)托管的海量开源库生态系统。目前PyPI拥有超过62.7万个软件包和600多万个版本,开发者往往在引入功能时并未意识到随之而来的安全隐患。PyPitfall研究分析了378,573个软件包的依赖关系,发现:- 4,655个软件包明确要求安装已知存在漏洞的版本(必然暴露)
- 141,044个软件包允许安装可能包含漏洞的版本(潜在暴露)
研究团队在定义"必然暴露"时指出:"成功安装这些软件包将不可避免地导致漏洞版本被安装。"依赖关系迷宫加剧风险
研究凸显了PyPI生态系统的极端复杂性,包括存在超过20层传递依赖的软件包,以及100多万个循环依赖。典型案例是square-0-5软件包,经过75次递归跳转后竟然依赖于自身,导致pip install命令陷入无限循环。"依赖链可能极其漫长复杂,单个软件包可能依赖数百个其他组件,形成深不可测的软件供应链迷宫。"这种深度嵌套的关系往往掩盖了漏洞组件的存在,使其在广泛传播的同时保持隐蔽。检测方法与关键发现
研究团队使用Johnnydep工具对PyPI软件包进行模拟安装,在不实际安装的情况下收集依赖树数据。随后将其与67个精选CVE漏洞数据库进行交叉比对,仅关注影响PyPI托管库的漏洞。这种方法帮助他们在urllib3等广泛使用的软件包中发现严重漏洞——仅该组件就占所有"必然暴露"案例的41.4%。作为Python HTTP栈的核心组件和requests库的依赖项,urllib3的漏洞影响尤为突出:- 引入包括CVE-2024-37891和CVE-2023-43804在内的漏洞
核心数据与改进建议
- 漏洞暴露平均深度:必然暴露4.1层,潜在暴露6.2层
- Setuptools是被依赖最多的软件包,出现在超700万条依赖链中
- 许多软件包未遵循PEP 440版本规范,导致解析问题
研究团队已向Python打包管理局披露发现,强调解决Python开源生态系统这一系统性风险的紧迫性。报告总结称:"我们的发现凸显了提升Python软件供应链安全意识的必要性。"安全工具内斗:攻击者如何利用EDR测试版绕过终端防护
EDR测试版可被用于
禁用其他安全产品
网络安全研究人员发现了一种新型攻击手法——攻击者可以滥用终端检测与响应(EDR)软件的免费测试版本来禁用现有安全工具。研究人员Ezra Woods和Mike Manrod将这种现象称为"EDR-on-EDR暴力攻击",并在Medium平台公布了相关发现。研究人员指出:"总结来说,EDR/AV产品可被用来禁用或拦截现有安全工具、远程控制设备。在某个案例中,我们甚至发现攻击者能够加密整个硬盘。"这种具有讽刺意味的新型攻击向量利用了安全领域一个鲜少被质疑的基本假设:合法的安全工具总是可信的。EDR互杀攻击原理
根据研究,攻击者可以在已入侵的系统上以本地管理员权限安装EDR产品的测试版,并将其配置为拦截现有安全工具。Woods和Manrod通过这种方法成功禁用了Cisco Secure Endpoint、CrowdStrike Falcon和Elastic Defend等产品,且不会触发任何警报或生成遥测数据——受攻击终端仅显示为离线状态。这些被滥用的软件具有有效的数字证书,会被系统识别为合法程序,几乎无法与正常安装的软件区分。在企业环境中,安全团队很难察觉防护措施已被故意破坏。研究人员在分析中解释:"攻击者只需移除排除项,然后将现有AV/EDR产品的哈希值添加到阻止应用程序列表即可完成攻击。"特别值得注意的是,具有远程监控和管理功能的EDR产品提供了更广泛的滥用可能性。例如,研究人员通过结合使用ESET的EDR产品,成功安装了恶意实例并加密了目标系统的整个硬盘。防御建议与测试方法
研究人员强调,虽然这种攻击需要本地管理员权限,但相比BYOVD(自带漏洞驱动)或DLL脱钩等传统EDR绕过技术,其实现复杂度更低。为防范此类攻击,他们建议企业:- 部署应用程序控制解决方案,阻止未经授权的安全软件安装
- 采用"应用感知"防火墙和安全Web网关,阻止访问安全供应商的未授权门户
Woods和Manrod还在文章中分享了详细的操作指南,帮助安全团队复现和测试这一攻击向量,并建议在隔离系统中进行受控测试。声明:除发布的文章无法追溯到作者并获得授权外,我们均会注明作者和文章来源。如涉及版权问题请及时联系我们,我们会在第一时间删改,谢谢!文章来源:FreeBuf、参考来源:PyPitfall: Python’s Hidden Vulnerabilities Propagate Through 145K+ Packages
https://securityonline.info/pypitfall-pythons-hidden-vulnerabilities-propagate-through-145k-packages/
参考来源:
Wie EDR EDR aushebelt
https://www.csoonline.com/article/4032661/wie-edr-edr-aushebelt.html
还没有评论,来说两句吧...