确保软件供应链安全无疑是一个枯燥的话题,但了解哪些组件和代码进入您的日常设备和电器是数十亿人每天依赖的软件开发过程的关键部分。
软件就像您构建和发布的任何其他产品一样;它依赖于使用其他人构建的组件,通常以源代码的形式,并确保它不会破坏或存在损害最终产品的弱点。世界上大多数软件都依赖于由开发人员编写的开源代码,这些开发人员将他们的作品发布给任何人使用。这也意味着依赖于相信开发人员将始终善意行事。但是项目会被其他植入后门或恶意软件的人放弃并捡起,或者正如最近在俄罗斯入侵乌克兰后所看到的那样,“抗议软件”的兴起,其中开源软件开发人员更改他们的代码以擦除俄罗斯计算机的内容以示抗议在克里姆林宫的入侵。
Feross Aboukhadijeh 是一位多产的开源维护者和Socket的创始人,他在最近的一次电话会议中告诉 TechCrunch,开发团队通常对开源代码过于信任,如果故意将漏洞引入供应链而被忽视,这可能是灾难性的.
软件通常比自动驾驶汽车和其他必须召回的硬件更容易修复。但软件妥协的后果可能是可怕而广泛的。受污染的软件更新导致美国联邦政府网络遭到大规模入侵、勒索软件攻击,以及旨在窃取敏感公司机密的企业密码管理器的攻击。
Aboukhadijeh 今年早些时候与一群开源维护者一起创立了Socket,他们亲眼目睹了一些最严重的软件供应链攻击。因此,该团队开始着手构建一个应用程序,开发人员可以使用该应用程序来检测和阻止将潜在恶意代码从数百万个开源代码存储库引入到他们的项目中
该应用程序插入 GitHub 开发人员的帐户并运行数十种已知行为,查找包问题,例如对代码的潜在可疑更改,例如您依赖的开源包突然开始尝试通过网络进行通信或获取 shell访问,这可能表明该软件包已被盗用。
Aboukhadijeh 将 Socket 描述为通过阐明软件包具有的访问、权限和行为(例如安装脚本)提供了开源软件包功能的营养标签,许多恶意软件使用这些脚本挂接到受害者的系统中。
“我们不能肯定地告诉你一个包是否正在与网络通信是一个坏信号,因为如果它是一个网络服务器怎么办——那么它显然需要这样做!”阿布哈迪杰说。但是,将这种可见性集成到软件构建过程中是开发人员防止供应链攻击所需要的。 “这不是什么复杂的人工智能或机器学习,”他谈到自己的产品时说。 “没有办法隐藏一个包运行安装脚本,它被声明为包的一部分。那么为什么不引起开发人员的注意呢?”
Socket仍处于早期阶段并进入拥挤的市场,但已经在吸引投资。这家早期初创公司已从十多名天使投资人和安全领导者那里筹集了 460 万美元的种子轮资金,其中包括前 GitHub 首席执行官 Nat Friedman、Keybase 联合创始人 Max Krohn,以及 Unusual Ventures、Village Global 和 South Park Commons .
Aboukhadijeh 告诉 TechCrunch,这笔资金将有助于扩大这家初创公司的工程、安全分析和研究团队,从而为开发人员构建工具。
阅读更多:
原文: https://techcrunch.com/2022/05/11/socket-audit-open-source-code/