2026 年 6 月 13 日,据 The Hacker News 报道,Arch Linux 的用户软件仓库(AUR,Arch User Repository)遭到恶意攻击,超过 400 个软件包被植入恶意代码。攻击者通过修改构建脚本,在用户编译这些包时自动下载并执行窃密程序。该恶意软件能够窃取浏览器 Cookie、SSH 密钥、GitHub 凭证、AI 服务 Token 等高度敏感信息,并上传至临时分享服务 temp.sh。如果获得 root 权限,它还会加载 eBPF Rootkit 隐藏自身痕迹。所有在受影响时间段内从 AUR 编译过这些软件包的开发者,都应视为可能已被入侵。 本文将还原攻击细节、分析危害范围,并提供完整的自查与防御方案。
一、 事件回顾:一场针对开发者供应链的精准投毒
1.1 攻击方式
攻击者没有直接替换软件包源码,而是修改了 PKGBUILD 中的构建脚本。当用户通过 makepkg 编译这些包时,恶意脚本会从远程服务器下载一个用 Rust 编写的二进制程序并执行。该二进制程序负责信息窃取和持久化。
受影响的软件包超过 400 个,涵盖多种常用工具和库。由于 PKGBUILD 的历史记录未被篡改,普通用户很难通过肉眼发现异常。
1.2 窃取的数据范围
该恶意程序具备极强的信息收集能力:
| 数据类型 | 具体内容 |
|---|---|
| 浏览器数据 | Chrome、Edge 等浏览器的 Cookie、登录 Token、本地存储数据 |
| 开发者凭证 | SSH 私钥(~/.ssh/id_rsa 等)、GitHub 凭证、Git 配置 |
| AI 服务 Token | OpenAI / ChatGPT Bearer Token、其他 API 密钥 |
| Electron 应用会话 | 基于 Electron 的应用(如 Discord、VS Code、Slack)的本地存储和会话 |
| 系统信息 | 主机名、用户名、环境变量等 |
所有窃取的数据被打包后上传至 temp.sh(一个临时文件分享服务),攻击者可以从该服务下载窃取结果。
1.3 Rootkit 隐藏能力
如果恶意程序以 root 权限 运行(例如用户使用 sudo makepkg 或通过 sudo 编译),它会尝试加载一个 eBPF Rootkit。该 Rootkit 能够在内核层面隐藏恶意进程、网络连接和文件,使得传统的安全检测工具难以发现。
二、 影响范围与风险等级
- 受影响人群:所有使用 Arch Linux 或基于 Arch 的发行版(如 Manjaro、EndeavourOS),并在 2026 年 5 月下旬至 6 月上旬 从 AUR 编译安装过软件包的开发者。
- 危害等级:严重。窃取的数据包括 SSH 私钥和 GitHub 凭证,攻击者可利用这些凭证登录你的服务器、代码仓库,进行横向渗透或供应链二次投毒。
- 持久性:即使删除恶意软件,eBPF Rootkit 可能仍在内核中运行。最彻底的解决方案是重装系统。
三、 紧急自查与处置指南
3.1 检查是否中招
- 查看编译日志:检查
/var/log/pacman.log或makepkg的输出,确认近期是否编译过可疑包。 - 检查网络连接:使用
ss -tunap或netstat查看是否有进程连接到temp.sh或未知境外 IP。 - 检查进程:运行
ps auxf | grep -v grep | grep -E "temp|curl|wget",查找可疑后台进程。 - 检查 SSH 密钥:查看
~/.ssh/id_rsa等文件的修改时间,确认是否被读取(注意:读取操作不会修改时间戳,但可通过日志辅助判断)。
3.2 立即采取的措施
| 优先级 | 行动 | 说明 |
|---|---|---|
| 最高 | 轮换所有敏感凭证 | 立即更换 SSH 密钥、GitHub Token、OpenAI API Key、所有浏览器保存的密码 |
| 高 | 检查 GitHub 账户活动 | 查看是否有异常的 SSH 密钥添加、仓库克隆或 Actions 执行记录 |
| 高 | 重装系统(如怀疑被 rootkit 感染) | eBPF Rootkit 难以彻底清除,建议备份重要数据后重装 |
| 中 | 检查服务器 | 如果你使用该开发机 SSH 连接过生产服务器,请一并检查服务器上是否有异常登录 |
3.3 长期防御建议
- 使用容器或虚拟机编译 AUR 包:在 Docker 容器或虚拟机中执行
makepkg,隔离风险。 - 审查 PKGBUILD:在编译前手动检查
PKGBUILD中的source、sha256sums、build()和package()函数,避免执行未知脚本。 - 使用 AUR 助手的安全模式:如
yay或paru提供--builddir选项,可将构建过程限制在临时目录。 - 部署主机入侵检测(HIDS):实时监控异常的进程创建、文件读写和网络连接。
四、 为什么传统杀毒软件可能无效?
- eBPF Rootkit 在内核层隐藏:传统杀毒软件运行在用户态,无法感知内核级的隐藏行为。
- 恶意程序仅在编译时下载:并非常驻服务,安装完成即自删,静态扫描难以捕获。
- 攻击者使用 Rust 编写:二进制文件经过混淆,特征多变。
因此,仅依赖杀毒软件不足以防御此类攻击。纵深防御是关键:
- 使用 Web 应用防火墙(WAF) 保护你的线上服务,即使开发者凭证泄露,攻击者也无法直接利用 Web 漏洞入侵。
- 在开发环境中启用 行为监控,如 Falco 或 Tracee,检测异常的 eBPF 加载和内核模块插入。
五、 对开发者的警示:供应链安全没有“局外人”
Arch Linux AUR 的投毒事件再次证明:开源生态的信任链极其脆弱。一个未经审核的 PKGBUILD 修改,就能让数千台开发机沦为肉鸡。
主机吧建议:
- 对于企业开发团队,应建立内部镜像仓库,对第三方包进行安全扫描后再分发。
- 对于个人开发者,不要盲目信任 AUR 上的任何包,尤其是最近更新的包。
- 在访问代码仓库、云控制台等敏感系统时,启用多因素认证(MFA),即使密钥泄露,也能降低风险。
如果你担心自己的开发环境已被入侵,或希望为服务器部署专业的 WAF 和主机安全产品,欢迎联系 主机吧。我们提供免费安全评估和应急响应支持。
主机吧 | 百度云防护官方合作伙伴
提供 WAF 接入、高防 CDN、高防 IP、高防服务器、SSL 证书一站式服务
让供应链攻击无处遁形,让每一次编译都安全可靠。
