
CVE-2026-39875-macOS-CUPS-LPE — Mis à jour !
Utilisateur non privilégié à root sur macOS Sonoma, Sequoia et Tahoe. Corrigé dans macOS 26.6 / 15.7.8 / 14.8.8.
CVE-2026-39875-macOS-CUPS-LPE
Élévation d'un utilisateur non privilégié à root via une vulnérabilité CUPS affectant macOS Tahoe, Sequoia et Sonoma avant macOS 26.6 / 15.7.8 / 14.8.8.
Démonstrations de preuve de concept
macOS Tahoe 26.4.1

macOS Sequoia 15.7.5

macOS Sonoma 14.8.5

Cause racine
La vulnérabilité provient de deux défauts logiques enchaînés dans le démon privilégié cupsd.
1. Jeton d'authentification privilégié transmis à travers une frontière de confiance.
Lorsque CUPS sonde une imprimante nouvellement enregistrée, il transmet un jeton d'authentification Local valide au backend de l'imprimante — le point de terminaison spécifié par le device-uri de l'imprimante. Comme un utilisateur non privilégié contrôle ce device-uri, il peut enregistrer une imprimante pointant vers un écouteur qu'il contrôle et recevoir un jeton qui n'était jamais destiné à quitter la frontière du sous-système de confiance. La conception suppose que le backend est de confiance ; autoriser des utilisateurs non privilégiés à enregistrer des imprimantes brise cette hypothèse.
2. E/S de fichiers avec privilèges root accessibles avant la fin de la validation de l'authentification.
Dans une fenêtre temporelle reproductible de manière fiable pendant l'enregistrement de l'imprimante, cupsd effectue une écriture de fichier avec les privilèges root avant que la validation de l'authentification ne soit terminée. Les E/S privilégiées ne sont pas conditionnées à la résolution de la vérification d'authentification, et le chemin de destination ainsi que le contenu du fichier sont influencés par l'attaquant au moment de l'écriture.
Démonstration
python3 poc.py
La preuve de concept enchaîne les deux défauts en trois étapes.
Étape 1 — Capture du jeton.
L'attaquant enregistre une imprimante dont le device-uri pointe vers un écouteur local qu'il contrôle, puis déclenche une sonde. cupsd transmet un jeton d'authentification Local valide à l'écouteur contrôlé par l'attaquant.
Étape 2 — Rejeu du jeton.
L'attaquant rejoue le jeton capturé pour enregistrer une seconde imprimante avec un device-uri file:// ciblant un chemin arbitraire, non protégé par SIP, de son choix.
Étape 3 — Écriture arbitraire en tant que root.
L'attaquant soumet un travail d'impression avec un contenu contrôlé par l'attaquant à la seconde imprimante. cupsd écrit les données du travail dans le chemin spécifié en tant que root. Aucune interaction de l'utilisateur n'est requise à aucune étape
Ensuite, le script vérifiera que le fichier a été créé en tant que root, démontrant ainsi la vulnérabilité.
Remarque : Cette preuve de concept démontre uniquement l'écriture arbitraire de fichier en tant que root. Elle n'élève pas les privilèges.
Crédits
Découverte indépendamment par Dallas Dubs ; Apple crédite également Aaron Grattafiori - NVIDIA AI Red Team, XBreach.ai, Andreas Jaegersberger & Ro Achterberg de Nosebeard Labs