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个软件包存在必然暴露风险。

研究团队对未来的改进建议是什么?

研究团队建议开发能在安装前审计依赖关系的工具,以提升对传递性漏洞的认知。

➡️

继续阅读