上周,互联网躲过了一次重大的民族国家攻击,这将对全球网络安全产生灾难性影响。这是一场没有发生的灾难,所以不会引起太多关注,但应该引起关注。有一个重要的道德袭击的故事及其发现:全球互联网的安全依赖于无数模糊的软件,这些软件由更模糊的无偿、分散注意力、有时甚至脆弱的志愿者编写和维护。这是一种无法维持的情况,而且正被恶意行为者利用。然而,几乎没有采取什么补救措施。
程序员不喜欢做额外的工作。如果他们能找到已经编写好的代码来做他们想做的事情,他们会使用它,而不是重新创建功能。这些代码库(称为库)位于GitHub等站点上。有各种各样的库:以3D显示对象、拼写检查、执行复杂数学、管理电子商务购物车、在Internet上移动文件等。图书馆对现代编程至关重要;它们是复杂软件的构建块。他们提供的模块化使软件项目易于处理。您所使用的一切都包含几十个这样的库:一些是商业的,一些是开源的,并且是免费的。它们对成品软件的功能至关重要。还有它的安全。
你可能从来没有听说过一个名为XZ Utils的开源库,但它在数亿台计算机上。它可能在你的身上。它当然存在于你使用的任何公司或组织网络中。它是一个免费的库,可以进行数据压缩。这很重要,就像数百个其他类似的晦涩难懂的库一样重要。
许多开源库,如XZ Utils,都是由志愿者维护的。在XZ Utils的案例中,只有一个人,名叫Lasse Collin。自2009年撰写以来,他一直负责XZ Utils。而且,至少在2022年,他已经有了一些“长期的心理健康问题。“(要明确的是,他在这个故事中不应受到指责。这是一个系统问题。)
至少从2021年开始,科林个人目标。我们不知道是谁,但我们有帐户名:贾坦、吉加·库马尔、丹尼斯·恩斯。他们不是真名。他们迫使科林转移对XZ Utils的控制权。2023年初,他们成功了。Tan花了一年时间慢慢地将后门整合到XZ Utils中:禁用可能发现其行为的系统,奠定基础,并最终在今年早些时候添加完整的后门。3月25日,Hans Jansen(另一个假名)试图推动各种Unix系统升级到XZ Utils的新版本。
每个人都准备这么做。这是例行更新。在几周内,它将成为Debian和Red Hat Linux的一部分,它们运行在绝大多数Internet上服务器的数量。但3月29日,另一位无偿志愿者安德烈斯·弗雷德(Andres Freund)发现,新版本XZ Utils的处理量有点奇怪,他是一位真正为微软工作的人。这类事情很容易被忽视,甚至更容易被忽视。但不管出于什么原因,弗伦德追查到了这件怪事发现后门。
这是一个杰作它影响SSH远程登录协议,基本上是通过添加需要特定密钥才能启用的隐藏功能。拥有该密钥的人可以使用后门SSH在目标机器上上传和执行任意代码段。SSH以root身份运行,因此代码可以执行任何操作。让你的想象力尽情发挥。
这不是一个黑客所能想到的。这个后门是一年工程努力的结果。代码以源代码形式逃避检测的方式,它是如何处于休眠状态,直到激活时才被检测到,以及它的强大功能和灵活性,都让人们相信了一个普遍持有的假设,即背后是一个主要民族国家。
如果没有被发现,它可能最终会出现在互联网上的每一台计算机和服务器上。虽然还不清楚后门是否会影响Windows和macOS,但它在Linux上会起作用。记得2020年,当俄罗斯种植通往太阳风的后门影响了14000个网络?这看起来很多,但这会造成更大数量级的破坏。再次,灾难之所以得以避免,仅仅是因为一名志愿者偶然发现了这一点。而这一点之所以可能,首先是因为第一位无偿志愿者,一位后来被证明是国家安全单点失败者的人,被一位外国演员以个人为目标并加以利用。
这不是运行关键国家基础设施的方法。然而,我们到了。这是对我们的软件供应链。此攻击破坏了软件依赖关系。SolarWinds攻击的目标是更新过程。其他攻击以系统设计、开发和部署为目标。这种袭击越来越常见和有效,也越来越成为民族国家选择的武器。
无法计算我们的计算机系统中有多少单点故障。而且,无法知道有多少关键软件库的无偿和未经认可的维护者容易受到压力的影响。(再一次,不要责怪他们。责怪那些乐于利用他们的无偿劳动的行业。)或者还有多少人无意中创造了可利用的漏洞。还有多少其他胁迫行为正在进行?十几个?一百?XZ Utils操作似乎不可能是唯一的实例。
解决方案很难。禁止开源是行不通的;正是因为XZ Utils是开源的,工程师才及时发现了这个问题。禁止软件库也行不通;现代软件离不开它们。多年来,安全工程师一直在推动一种叫做“软件BOM表“:各种成分的列表,这样当其中一个软件包被破坏时,网络所有者至少知道自己是否容易受到攻击。行业憎恨这个想法,多年来一直在反对,但也许潮流正在转向.
根本的问题是,科技公司不喜欢花额外的钱,甚至比程序员不喜欢做额外的工作还要多。如果有免费软件,他们会使用它,并且不会做太多内部安全测试。更容易的软件开发等于更低的成本等于更多的利润。市场经济回报了这种不安全感。
我们需要一些可持续的方式来资助那些成为事实上关键基础设施的开源项目。公开羞辱可以在这方面有所帮助。这个开源安全基金会(OSSF)成立于2022年,此前在开源库Log4j中发现了另一个关键漏洞,解决了这个问题.大型科技公司承诺3000万美元在关键的Log4j供应链漏洞之后,他们一直没有交付资金。他们仍然乐于利用所有这些免费的劳动力和资源微软最近的轶事表示。从这些免费提供的图书馆中受益的公司实际上需要加大力度,政府可以强迫他们这样做。
如果公司愿意花钱的话,有很多技术可以用来解决这个问题。负债会有所帮助。网络安全和基础设施安全局(CISA)的“设计安全”倡议将有所帮助,CISA最终与OSSF合作关于这个问题。当然,这些图书馆的安全需要成为任何广泛的政府网络安全倡议的一部分。
这次我们非常幸运,但也许我们可以从没有发生的灾难中吸取教训。与电网、通信网络和运输系统一样,软件供应链关键基础设施是国家安全的一部分,易受外国袭击。美国政府需要认识到这是一个国家安全问题,并开始将其视为国家安全问题。
这篇文章最初出现在法律费用.
发布于2024年4月11日上午7:01•查看评论