打开网易新闻 查看精彩图片

应对大语言模型驱动的漏洞检测,有一种简单粗暴却行之有效的策略——加快删除老旧代码。代码一旦消失,其中存在的漏洞也就无从追究。

近来,机器人自动化漏洞检测成为业界热议话题。有报告指出,自动化工具发现软件缺陷和安全漏洞的速度,远超未借助工具的人类。其中不乏存在数十年之久的"老顽固",例如OpenBSD中一个已有27年历史的漏洞,以及Linux内核NFS代码中一个长达23年的缺陷。就连稳定内核的主要维护者Greg Kroah-Hartman也承认,这类自动化检测确实有效。

值得关注的是,应对这一问题有一种相当直接的方式:如果漏洞存在于老旧硬件的陈年驱动中,与其费力修复,不如直接将其移除。这一思路已成为近期多项Linux内核变更背后的主要逻辑。

Andrew Lunn提交了一个包含18个补丁的系列更新,移除了3Com旗下3C509、3C515、3C574、3C589和3C59x等硬件的驱动程序,同时还移除了另外13款设备的支持,其中包括若干老款Xircom并行端口卡和PCMCIA插槽卡。

此外,Hamachi和Yellowfin PCI千兆网卡适配器也在被移除之列——这些设备虽比上述设备稍新,但也已有超过二十年的历史。AX.25和HAM无线电驱动,以及异步传输模式(ATM)网络支持,同样面临被删除的命运。回想起来,尽管TCP/IP在20世纪90年代末迅速崛起,ATM当时仍被宣传为"公共与私有网络互联的最佳选择",而今看来不过是历史的遗迹。ISDN CAPI支持,包括通过蓝牙传输的相关功能,预计也将一并移除。Linux基准测试与资讯网站Phoronix估计,仅以太网设备相关代码的清理,就将删除接近3万行代码。

另一项可能在内核7.1版本中落地的移除,是对80486处理器的支持。早在约一年前的6.15内核讨论中,这一提案就已被提出,实际上相关讨论早在2022年便已开始。

不过,即便上述所有变更均获批准,也不意味着立即断绝支持:包含相关支持的旧版内核仍将维护多年。

T2发行版的首席维护者René Rebe也就此表态,向我们表示:"T2/Linux当然会继续支持这些设备。支持早期简单的32位CPU对我们来说并不困难。过去几年我们一直提供i486版本,近期还修复了一些漏洞,目前仍在最快的i486级CPU(AMD 5x86,超频至160 MHz)以及Vortex86嵌入式和工业主板上运行。"

我们在今年于布鲁塞尔举办的FOSDEM大会上见到了Rebe,T2项目在现场展示了该发行版在多台老款RISC计算机上的运行情况,包括一台双核PowerMac G5,在T2/Linux上流畅运行最新版Firefox,并支持硬件加速3D图形与视频播放。

Q&A

Q1:Linux内核为什么要移除老旧硬件驱动

A:主要原因是为了应对大语言模型驱动的自动化漏洞检测。这类工具能以远超人类的速度发现代码中的安全漏洞,包括存在了数十年的老旧缺陷。对于那些服务于早已淘汰硬件的驱动程序,与其耗费精力修复漏洞,不如直接将其从内核中移除,从根本上消除安全隐患。此次清理涉及3Com网卡、Xircom接口卡、ATM网络支持、ISDN CAPI等多类设备,仅以太网相关代码预计就将删除近3万行。

Q2:移除80486处理器支持后,还有发行版会继续支持吗?

A:有。T2发行版的首席维护者René Rebe明确表示,T2/Linux将继续支持80486及早期32位CPU,称这在技术上"并不困难"。过去几年T2一直提供i486版本,近期还进行了漏洞修复,并在AMD 5x86(超频160 MHz)及Vortex86工业主板上持续运行。此外,即便主线内核移除相关支持,现有的包含该支持的旧版内核仍将维护多年。

Q3:ATM网络支持为什么会被Linux内核移除?

A:ATM(异步传输模式)是一种曾在20世纪90年代被广泛推广的网络技术,一度被认为是公共与私有网络互联的最佳方案。然而随着TCP/IP协议的迅速普及,ATM逐渐被市场淘汰。如今该技术早已退出主流应用场景,相关硬件也基本绝迹,继续在内核中维护其驱动只会带来不必要的安全风险,因此在本轮老旧代码清理中,ATM网络支持也被列入移除名单。