PackageKit - CVE-2026-41651

Date de publication :

Il s'agit d'une vulnérabilité de condition de concurrence temporelle (TOCTOU) dans la gestion des flags de transaction du démon PackageKit.

PackageKit est une couche d'abstraction D-Bus pour la gestion de paquets logiciels sous Linux. Elle fournit une API unifiée et multi-distributions pour l'installation, la suppression et la mise à jour de paquets, utilisée par des environnements de bureau (GNOME Software, Cockpit) et des outils de gestion système sur les distributions majeures.

La fonction InstallFiles() écrase sans contrôle le champ cached_transaction_flags même lorsqu'une transaction est déjà en cours d'exécution. La machine à états rejette silencieusement les transitions illicites sans annuler cet écrasement, et les flags corrompus sont lus par le backend au moment de l'exécution plutôt qu'au moment de l'autorisation. Un attaquant local peut ainsi déclencher une seconde invocation D-Bus pendant une transaction autorisée pour forcer l'exécution avec des droits root, y compris l'exécution de scriptlets d'installation arbitraires.

Elle permet à un utilisateur local sans privilège d'installer ou supprimer des paquets système arbitraires en tant que root, aboutissant à une élévation de privilèges locale complète.

Informations

La faille est activement exploitée : Non

Un correctif existe : Oui

Une mesure de contournement existe : Non

Risques

•   Exécution de code arbitraire (à distance)
•   Élévation de privilèges

Exploitation

La vulnérabilité exploitée est du type
CWE-367 : Time-of-check Time-of-use (TOCTOU) Race Condition

Détails sur l'exploitation
•   Vecteur d'attaque : Local
•   Complexité de l'attaque : Faible
•   Privilèges nécessaires pour réaliser l'attaque : Authentification utilisateur simple
•   Interaction d'un utilisateur ayant accès au produit est-elle nécessaire : Non
•   L'exploitation de la faille permet d'obtenir des droits privilégiés : En attente d’information

Preuve de concept
Une preuve de concept est disponible en sources ouvertes.

Systèmes ou composants affectés

PackageKit versions 1.0.2 jusqu'à 1.3.4 inclus (dont les versions EOL, confirmé sur Ubuntu 18.04 EOL)

Solutions ou recommandations

•   PackageKit version 1.3.5 et supérieures
•   Fedora 42-44 : PackageKit-1.3.4-3 et supérieures (via Koji)
•   Ubuntu : correctif disponible via les dépôts de sécurité Ubuntu (voir launchpad.net/bugs/cve/2026-41651)
•   Debian : correctif disponible via le security tracker Debian (voir security-tracker.debian.org/tracker/CVE-2026-41651)