返回

文章详情

AUR末日来临:近期AUR攻击回顾

Hacker News2026年6月19日 16:59

欢迎来到LWN.net。以下仅限订阅的内容由LWN订阅者提供。成千上万的订阅者依赖LWN获取来自Linux和自由软件社区的最新消息。如果您喜欢这篇文章,请考虑订阅LWN。感谢您访问LWN.net!近期,Arch用户库(AUR)遭受了一次持续的攻击。攻击者或攻击者们创建了一系列新账户,然后利用这些账户采用孤儿包,并推送恶意更新,这些更新会在用户的系统上安装恶意软件。目前尚不清楚此次攻击中有多少用户受到影响,但维护者们为了应对每一个新被攻陷的包而忙碌了好几天。该项目已暂时关闭了AUR的新用户注册,但尚不清楚其长期应对措施是什么,或者AUR是否可以在不进行重大更改现有协作模型的情况下安全。 为什么AUR特别容易受到攻击 Arch Linux提供的软件官方仓库(如core和extras),由Arch Linux开发者和包维护者监管(有关等级体系的更多信息请参见官方贡献者类别)。这些包经过维护者审核,并可通过pacman包管理器以二进制格式下载。而AUR则是一个尚未进入官方仓库的软件库,可能永远不会进入。Pacman并不直接使用AUR仓库,因此用户通常会使用单独的AUR助手应用程序(如paru或yay)来搜索AUR中的软件、下载PKGBUILD文件、解决依赖关系以及编译、安装和更新软件。AUR由Arch的包维护者维护,他们对请求孤儿包的收养或删除做出回应,并可能将包从AUR转移到官方extras仓库,例如,但对于包进入AUR或其更新没有正式的审查过程。AUR包含用户贡献的PKGBUILD文件,这些文件是从源代码编译软件所需的;没有提供二进制构建。目前AUR中有超过107,000个包,包含近14,000个当前孤儿并待收养的包。AUR用户注册通常对任何希望注册的人开放——目前注册用户超过141,000人。任何在AUR中拥有注册用户账户的人都可以收养并对孤儿包进行更改。用户在发布新包或收养孤儿包时,没有审查过程或审核;注册用户只需点击孤儿包页面上的“收养包”按钮,包的所有权会自动授予他们。 自行承担风险 Arch用户在使用AUR中的包时应谨慎;他们被警告AUR PKGBUILD文件是“完全非官方的,未经过彻底审核。使用所提供的文件完全自担风险”。理论上,用户在构建或安装软件之前会审查PKGBUILD文件;但在实践中,这种情况不太可能发生,尤其是在用户已经安装了某个包并执行更新时。虽然Arch Linux不提供AUR中包的构建,但允许使用“-bin” PKGBUILD文件,这些文件用于从其他位置下载预构建的二进制文件。例如,用户可以使用来自AUR的librewolf-bin包安装Firefox的LibreWolf分支,而无需从源代码构建它。这不仅对那些构建时间较长的开源软件来说更为方便;AUR政策也允许专有软件,这在源代码形式中不太可能发布。当然,这意味着用户必须相信AUR包维护者在二进制文件中没有提供任何恶意内容。Arch并不是唯一提供“自行承担风险”未经审核的用户提交内容的发行版;Fedora有Copr,openSUSE项目有开放构建服务(OBS),Ubuntu有个人包档案(PPA)。这些服务都允许个人在没有任何审核流程的情况下注册,并为其他用户构建可下载的包。然而,这些服务与AUR之间存在重要差异。它们提供的构建环境与官方发行版包所使用的相似,不允许提供预构建的二进制文件或专有软件。Copr、OBS和PPA的模型是用户在自己的用户命名空间下创建项目;用户必须单独添加这些服务中的每个仓库。例如,niri创建者Ivan Molodetskikh维护了一个Copr仓库,供希望运行平铺的Wayland合成器的Fedora用户使用。要从Copr安装niri,用户必须特定地启用该仓库。其他Copr用户也可以创建类似的内容。

赞助内容

NordVPN Next-gen Antivirus

本站免费、广告极少。如果觉得有帮助,可以请我们喝杯咖啡 —— 任何金额都对持续运营有实际帮助。

请我喝杯咖啡