core.https_address),或者部署了 MicroCloud 集群的 Ubuntu 节点才处于高危。攻击者凭受信任客户端的公开证书,即可在握手阶段伪造中间证书链接管宿主机 root 权限。sudo snap refresh lxd;未使用的 Ubuntu 服务器直接彻底卸载 lxd-installer 与残留 Snap,收敛攻击面。一、 发行版边界:为什么非 Ubuntu 系统完全无需关注?
很多自媒体和扫描告警把该漏洞笼统地称为“Linux 满分 10.0 致命漏洞”,直接引发了整个运维圈的无端焦虑。我们首先要把发行版边界划清楚:
结论:100% 安全,完全无需关注,不需要做任何升级或配置更改。
原因:LXD 和 MicroCloud 是 Canonical 自己的专属产品,底层深度依赖 Canonical 的 Snap 包管理器。Red Hat 系(CentOS/RHEL/Rocky)、Debian 官方源以及 Alpine 等极轻量系统,默认根本没有 Snap,更不会去安装和运行 Canonical 的 LXD 守护进程。它们使用的是标准的 KVM、Podman、Docker 或 containerd,根本不存在脆弱的代码路径。
👉 如果你的生产服务器跑在 CentOS、RHEL 或纯 Debian 上,你可以直接关闭这篇通报,继续专注于业务,完全无需折腾。
二、 Ubuntu 宿主机 30 秒自查:到底有没有运行脆弱的 LXD?
如果你管理的是 Ubuntu 服务器,请立即登录终端,按顺序执行以下三步排查:
1. 检查 LXD 守护进程是否在后台实际常驻运行
systemctl is-active snap.lxd.daemon.service 2>/dev/null || pgrep -a lxd
👉 判定标准: 如果回显为 inactive 且没有输出任何进程 PID,说明你的 Ubuntu 系统根本没有常驻运行 LXD 容器服务。
2. 检查默认监听端口 8443 是否对外暴露
ss -tlnp | grep -E ':8443\b'
👉 判定标准: 如果回显为空,说明无论是 LXD 还是其他组件,都没有在网络层开放该端口,攻击报文物理上打不进来。
3. 检查 LXD 是否开启了远程 HTTPS 监听
lxc config get core.https_address 2>/dev/null
👉 判定标准: 如果返回为空,说明该节点仅走本地 UNIX 套接字(unix.socket)通信,无法从远程网络发起握手。
三、 谁是虚惊一场?这 2 类 Ubuntu 服务器完全无需修复
即使在 Ubuntu 用户群体中,绝大部分服务器也是完全安全的:
- 1. 纯 Docker / K8s / containerd 业务服务器(绝大多数 Web 生产环境): 国内绝大多数 SaaS 服务商、独立开发者和团队,核心运行的是 Docker CE 或 K8s。虽然 Docker 和 LXD 底层都基于 Linux Namespace 和 Cgroups,但 LXD 是系统级容器套件。Docker 引擎与 LXD 毫无代码重叠,没有运行 LXD 的服务器完全不受波及。
- 2. 预装了 lxd-installer 但从未初始化的干净 Ubuntu 系统: 在 Ubuntu 20.04/22.04/24.04 官方云镜像中,系统默认放了一个名为
lxd-installer的引导过渡包。但只要管理员从未在终端敲击初始化并启动过 LXD,后台就不会有任何常驻进程与网络监听端口,属于纯静态休眠文件。
四、 谁处于真实危险?必须立即更新的受损边界
真正面临威胁、必须立即打补丁的,只有以下两类明确场景:
- 高危边界 1:开启了远程 HTTPS 接口的独立 Ubuntu LXD 宿主机: 很多多机编排集群、CI/CD 自动化构建机或内网多租户服务器,为了方便远程管理,对外开放了
8443端口。如果此端口直连公网或处于宽松的办公大内网,攻击者可直接发起鉴权绕过。 - 高危边界 2:Ubuntu MicroCloud 超融合集群: MicroCloud 在集群成员加入和自动发现时深度依赖该组件。局域网内的攻击者可截获新加入节点的公开 TLS 证书,伪造身份接管整套超融合集群。
▼ 为什么这个缺陷能评到 CVSS 10.0 满分?
LXD 远程接口采用双向 TLS(mTLS)认证。按正常的公钥基础设施(PKI)逻辑,客户端必须向服务端出示由私钥签名的“叶子证书(Leaf Certificate)”。
但在有缺陷的版本中,LXD 的校验逻辑存在低级遍历缺陷:只要客户端发来的证书链中,包含了服务端信任库中的任一证书,就直接放行!
这意味着:攻击者根本不需要窃取管理员的私钥,只需拿到管理员的公开证书(公钥),将其伪造成证书链的中间层(Intermediary),就能骗过 LXD 服务端,直接获取宿主机最高权限。
五、 1 分钟处置指南:在役安全升级与无用组件彻底拔除
方案 A:真实业务在役节点的升级与加固
如果你正在使用 LXD 支撑业务,请立即通过 Snap 刷新官方修复包:
sudo snap refresh lxd
sudo snap refresh microcloud
官方安全基线对照表(刷新后检查必须达到):
6/stable分支: 达到 6.10.15.21/stable分支: 达到 5.21.95.0/stable分支: 达到 5.0.114.0/stable分支: 达到 4.0.15microcloud: 达到 2.1.5 或 3.4.1
💡 临时应急建议:若线上业务暂时无法热更,立刻在云防火墙/安全组上封禁 8443 端口,收敛至内网 VPN 访问。
方案 B:未用系统的彻底拔除(收敛暴露面)
如果你的 Ubuntu 服务器只跑 Docker 或普通应用,根本不需要 LXD,建议彻底拔除,避免未来误触发:
# 1. 卸载并清除系统的 lxd 自动引导器
sudo apt purge -y lxd-installer
# 2. 清除 Snap 中残留的 lxd 组件
sudo snap remove --purge lxd
六、 生产运维的定力:面对满分通报如何保持克制?
作为一线运维人员,面对突发高危通报,成熟的应对三步曲始终是:
- 看发行版与组件栈: 是不是你当前环境的核心依赖(如本次非 Ubuntu 系统直接豁免);
- 看网络拓扑物理边界: 利用链入口在网络上是否能被外界触达(如 8443 端口是否暴露);
- 最小动作阻断: 先通过端口封堵或局部更新阻断风险,切勿恐慌性做系统级大升级。
看清边界与真实拓扑,才是数字运维最踏实的定力。
📚 生产排险与数字运维实录专辑: