如何确保开源包不是地雷

如何确保开源包不是地雷

如何确保开源包不是地雷 PlatoBlockchain 数据智能。垂直搜索。人工智能。

开源存储库对于运行和编写现代应用程序至关重要,但要小心——粗心可能会引爆地雷,并在软件基础设施中注入后门和漏洞。 IT 部门和项目维护人员需要评估项目的安全功能,以确保恶意代码不会被纳入应用程序中。

网络安全和基础设施安全局 (CISA) 和开源安全基金会 (OpenSSF) 提出的新安全框架建议采取控制措施,例如为项目维护者启用多重身份验证、第三方安全报告功能以及对过时或不安全的软件包发出警告。帮助减少公共存储库上恶意代码和伪装成开源代码的软件包的暴露。

OpenSSF 总经理 Omkhar Arasaratnam 表示:“开源社区聚集在这些水坑周围,以便获取这些软件包,从基础设施的角度来看,它们必须是安全的。”

哪里可以找到错误代码

这些水坑包括 Github,它托管整个程序、编程工具或将软件连接到在线服务的 API。其他存储库包括 PyPI,它托管 Python 包; NPM,这是一个 JavaScript 存储库;以及 Maven Central,它是一个 Java 存储库。用 Python、Rust 和其他编程语言编写的代码从多个包存储库下载库。

开发人员可能会无意中被诱骗引入恶意软件,这些软件可能会注入包管理器中,从而使黑客能够访问系统。如果开发人员链接到错误的 URL,用 Python 和 Rust 等语言编写的程序可能会包含恶意软件。

“包存储库安全原则”中的指南建立在存储库已经采用的安全工作的基础上。 Python 软件基金会去年 采用Sigstore,这确保了 PyPI 和其他存储库中包含的包的完整性和来源。

Arasaratnam 表示,各个存储库的安全性并不是非常糟糕,但是却不一致。

“第一部分是收集社区内一些更受欢迎的……和重要的内容,并开始建立一套可以在他们之间普遍使用的控制措施,”Arasaratnam 说。

CISA 的包存储库安全原则中规定的准则可以防止诸如域名抢注之类的事件,即开发人员错误输入错误的文件名或 URL 可能会下载恶意包。

“你可能会意外启动该软件包的恶意版本,或者可能是有人以维护者的身份上传了恶意代码,但只是由于机器受到攻击,”Arasaratnam 说。

更难识别恶意软件包

去年 11 月在纽约举行的开源金融论坛上,存储库包的安全性成为了开源安全小组会议的主题。

“这就像过去的浏览器时代一样,它们本质上很容易受到攻击。 Sonatype 联合创始人兼首席技术官 Brian Fox 在小组讨论中表示,人们会访问恶意网站,发现后门被删除,然后会说“哇,这不是这个网站”。

“我们正在追踪超过 250,000 个故意恶意的组件,”Fox 说。

花旗银行董事总经理兼全球网络运营主管 Ann Barron-DiCamillo 几个月前在 OSFF 会议上表示,IT 部门正在着手应对伪装成开源代码的恶意代码和软件包。

“谈到去年的恶意软件包,我们看到比前几年增加了一倍。这正在成为我们开发社区的现实,”巴伦-迪卡米洛说。

时间戳记:

更多来自 暗读