Python 隐藏漏洞通过超14.5万个软件包传播
💡
原文中文,约1400字,阅读约需4分钟。
📝
内容提要
新泽西理工学院的研究揭示了Python生态系统中的安全隐患,称为“PyPitfall”。研究指出,复杂的依赖关系导致378,573个软件包中传播已知漏洞,其中4,655个软件包必然暴露,141,044个存在潜在暴露。建议开发审计工具以提高安全意识。
🎯
关键要点
- 新泽西理工学院的研究揭示了Python生态系统中的安全隐患,称为“PyPitfall”。
- 复杂的依赖关系导致378,573个软件包中传播已知漏洞,4,655个软件包必然暴露,141,044个存在潜在暴露。
- Python的流行主要得益于PyPI托管的海量开源库,开发者常常未意识到安全隐患。
- 研究发现,依赖关系复杂,存在超过20层传递依赖和100多万个循环依赖。
- 使用Johnnydep工具模拟安装PyPI软件包,发现严重漏洞,尤其是urllib3组件。
- 核心数据包括:必然暴露平均深度4.1层,潜在暴露6.2层,检测到1,075,559个循环依赖关系。
- 建议开发审计工具以提高安全意识,并强调解决Python开源生态系统的系统性风险的紧迫性。
❓
延伸问答
PyPitfall研究揭示了什么样的安全隐患?
PyPitfall研究揭示了Python生态系统中复杂的依赖关系导致已知漏洞在378,573个软件包中传播的安全隐患。
哪些软件包存在必然暴露的风险?
研究发现4,655个软件包明确要求安装已知存在漏洞的版本,存在必然暴露的风险。
Python生态系统中依赖关系的复杂性如何影响安全?
复杂的依赖关系导致超过20层的传递依赖和100多万个循环依赖,使得漏洞在广泛传播时保持隐蔽。
研究中使用了什么工具来检测漏洞?
研究团队使用Johnnydep工具模拟安装PyPI软件包,以收集依赖树数据并检测漏洞。
urllib3组件的漏洞影响有多大?
urllib3的漏洞影响尤为突出,出现在407,333条依赖链中,导致1,926个软件包存在必然暴露风险。
研究团队对未来的改进建议是什么?
研究团队建议开发能在安装前审计依赖关系的工具,以提升对传递性漏洞的认知。
➡️