运维工程师来活了,Linux 又报了两个超级漏洞(附解决方案)
2025年6月17日,Qualys研究团队披露了两个关键的Linux漏洞:CVE-2025-6018和CVE-2025-6019。该漏洞可以链式利用,允许攻击者从普通角色提升到root角色,影响多个Linux发行版本,包括Ubuntu、Debian、Fedora、openSUSE Leap 15和SUSE Enterprise 15。该漏洞只需要SSH登录就可以触发。
以下是两个漏洞的核心信息:
漏洞
CVE
受影响组件
影响
受影响的发行版
本地权限提升
CVE-2025-6018
PAM 配置
授予 "allow_active" 状态,启用特权操作
openSUSE Leap 15, SUSE Linux Enterprise 15
根访问权限漏洞
CVE-2025-6019
libblockdev 通过 udisks 守护进程
结合 CVE-2025-6018 时,启用完全根访问权限
Ubuntu, Debian, Fedora, openSUSE Leap 15
2. 关键风险完全系统接管:黑客可获得root权限,控制系统和更改所有数据。规避端点检测:黑客可以绕过常见监控工具。持久后门:黑客可无感知留后门,从而实现长期控制系统。横向移动:黑客可利该漏洞攻击网络中的其他设备。3. 技术背景(1) PAM(Pluggable Authentication Modules)
PAM 是 Linux 系统中的一个用户认证框架模块,它可以通过配置文件例如: /etc/pam.d/ 或者 /etc/pam.conf 中来管理和定义认证策略。CVE-2025-6018 漏洞源于 PAM 配置中的一个漏洞,具体来说就是允许远程用户(例如通过 SSH 登录)获得 "allow_active" 的状态。通常这个状态只会授予本地登陆的用户(比如通过控制台登录),但配置错误会导致远程用户也能获得特权。
(2) polkit(PolicyKit)
polkit 是一个权限管理框架,用于控制非root用户对root权限操作的访问(如挂载设备或修改系统设置等)。CVE-2025-6019 利用了 polkit 的默认规则,特别是 org.freedesktop.udisks2.modify-device,当其设置为 allow_active=yes 时,允许用户无需认证即可执行这些root权限的动作。
(3) libblockdev 和 udisks
libblockdev:一个 C 语言库,用于与块设备(如硬盘、分区)交互,提供对存储设备的底层操作支持。udisks2:通过 D-Bus 接口提供用户空间对存储设备的访问,依赖 libblockdev。CVE-2025-6019 的漏洞存在于 libblockdev 中,通过 udisks 守护进程允许黑客执行root角色的操作。4. 漏洞利用机制Qualys 研究团队通过概念验证(PoC)代码,证明了这些漏洞在受影响发行版上是可以执行的。流程如下:
CVE-2025-6018:通过 SSH 登录,利用 PAM 配置错误获得 "allow_active" 状态。CVE-2025-6019:利用 libblockdev 的漏洞,通过 udisks 守护进程执行root角色操作,结合 CVE-2025-6018 的特权状态,最终获得root权限。这种攻击链利用了系统中原生的服务(如 udisks 和 PAM),无需额外工具。
5. 哪些版本值得关注?管理员需检查系统是否运行以下受影响的发行版:
openSUSE Leap 15 和 SUSE Linux Enterprise 15(CVE-2025-6018 和 CVE-2025-6019)Ubuntu(CVE-2025-6019)Debian(CVE-2025-6019)Fedora(CVE-2025-6019)检查方法:
查libblockdev 和 udisks2 的版本:
Debian/Ubuntu:dpkg -l | grep libblockdev 或 dpkg -l | grep udisks2Fedora:dnf list libblockdev 或 dnf list udisks2openSUSE:zypper info libblockdev 或 zypper info udisks2检查 PAM 配置文件(如 /etc/pam.d/sshd)是否存在 user_readenv=1 设置。
6. 补救措施(1) 立即打补丁
各发行版已发布或正在发布补丁,具体如下:
发行版
包名
版本
安全公告
Debian bullseye (11)
libblockdev
2.25-2+deb11u1
DLA-4221-1
Debian bookworm (12)
libblockdev
2.28-2+deb12u1
DSA-5943-1
Debian sid/trixie
libblockdev
3.3.0-2.1
Debian Tracker
Ubuntu 25.04 (plucky)
libblockdev
3.3.0-2ubuntu0.1
Ubuntu CVE-2025-6019
Ubuntu 24.10 (oracular)
libblockdev
3.1.1-2ubuntu0.1
Ubuntu CVE-2025-6019
Ubuntu 24.04 LTS (noble)
libblockdev
3.1.1-1ubuntu0.1
Ubuntu CVE-2025-6019
Ubuntu 22.04 LTS (jammy)
libblockdev
2.26-1ubuntu0.1
Ubuntu CVE-2025-6019
Ubuntu 20.04 LTS (focal)
libblockdev
2.23-2ubuntu3+esm1
Ubuntu CVE-2025-6019
Ubuntu 18.04 LTS (bionic)
libblockdev
2.16-2ubuntu0.1~esm1
Ubuntu CVE-2025-6019
Fedora
libblockdev, udisks2
最新版本
待确认,建议运行 dnf update
注意:
Ubuntu 对 CVE-2025-6018 不受影响,因其未在远程认证配置文件中设置 user_readenv=1。Fedora 的补丁信息尚未公开,建议管理员定期检查 Fedora 安全更新。操作步骤:
Debian/Ubuntu:运行 apt update && apt upgrade。Fedora:运行 dnf update。openSUSE:运行 zypper update。(2) 修改 polkit 规则
默认的 polkit 规则可能允许未经认证的操作,需调整 org.freedesktop.udisks2.modify-device 规则以要求管理员认证。
修改步骤:
创建或编辑 /etc/polkit-1/rules.d/50-local.rules 文件:注意:不同发行版的 polkit 配置路径可能略有差异,建议参考官方文档。
(3) 加强 SSH 安全性
由于漏洞可通过 SSH 登录利用,需加强 SSH 配置:
禁用 root 登录:编辑 /etc/ssh/sshd_config,设置 PermitRootLogin no。使用密钥认证:生成 SSH 密钥对,禁用密码登录(PasswordAuthentication no)。限制访问:使用 AllowUsers 或 AllowGroups 限制 SSH 用户。启用防火墙:使用 ufw 或 firewalld 限制 SSH 访问来源 IP。重启 SSH 服务:systemctl restart sshd。(4) 系统监控与检测
管理员应监控系统以发现潜在入侵迹象:
使用 auditd:配置审计规则,监控系统调用和重要文件是否有变更。(5) 备份与恢复
定期备份:使用工具如 rsync 或 Timeshift 备份系统关键数据。测试恢复:定期验证备份可用性,确保在系统被接管时可快速恢复。隔离备份:将备份存储在离线或只读介质上,防止被恶意软件破坏。7. 结论CVE-2025-6018和CVE-2025-6019是linux系统的一个重要的漏洞。系统工程师应给足够的重视、调整polkit配置,加固SSH,并实施监控和备份。