PackageKit bis 1.3.4 src/pk-transaction.c InstallFiles Race Condition
| CVSS Meta Temp Score | Aktueller Exploitpreis (≈) | CTI Interest Score |
|---|---|---|
| 6.9 | $0-$5k | 0.00 |
Zusammenfassung
Eine Schwachstelle wurde in PackageKit bis 1.3.4 entdeckt. Sie wurde als problematisch eingestuft. Davon betroffen ist die Funktion InstallFiles der Datei src/pk-transaction.c. Mittels dem Manipulieren mit unbekannten Daten kann eine Race Condition-Schwachstelle ausgenutzt werden.
Die Identifikation der Schwachstelle wird mit CVE-2026-41651 vorgenommen. Der Angriff muss auf lokaler Ebene erfolgen. Es existiert kein Exploit.
Ein Upgrade der betroffenen Komponente wird empfohlen.
Details
In PackageKit bis 1.3.4 wurde eine problematische Schwachstelle gefunden. Betroffen ist die Funktion InstallFiles der Datei src/pk-transaction.c. Durch Beeinflussen mit einer unbekannten Eingabe kann eine Race Condition-Schwachstelle ausgenutzt werden. CWE definiert das Problem als CWE-367. Mit Auswirkungen muss man rechnen für Vertraulichkeit, Integrität und Verfügbarkeit. CVE fasst zusammen:
PackageKit is a a D-Bus abstraction layer that allows the user to manage packages in a secure way using a cross-distro, cross-architecture API. PackageKit between and including versions 1.0.2 and 1.3.4 is vulnerable to a time-of-check time-of-use (TOCTOU) race condition on transaction flags that allows unprivileged users to install packages as root and thus leads to a local privilege escalation. This is patched in version 1.3.5.
A local unprivileged user can install arbitrary RPM packages as root, including executing RPM scriptlets, without authentication. The vulnerability is a TOCTOU race condition on `transaction->cached_transaction_flags` combined with a silent state-machine guard that discards illegal backward transitions while leaving corrupted flags in place. Three bugs exist in `src/pk-transaction.c`:
1. Unconditional flag overwrite (line 4036): `InstallFiles()` writes caller-supplied flags to `transaction->cached_transaction_flags` without checking whether the transaction has already been authorized/started. A second call blindly overwrites the flags even while the transaction is RUNNING.
2. Silent state-transition rejection (lines 873–882): `pk_transaction_set_state()` silently discards backward state transitions (e.g. `RUNNING` → `WAITING_FOR_AUTH`) but the flag overwrite at step 1 already happened. The transaction continues running with corrupted flags.
3. Late flag read at execution time (lines 2273–2277): The scheduler's idle callback reads cached_transaction_flags at dispatch time, not at authorization time. If flags were overwritten between authorization and execution, the backend sees the attacker's flags.Das Advisory kann von github.com heruntergeladen werden. Eine eindeutige Identifikation der Schwachstelle wird seit dem 22.04.2026 mit CVE-2026-41651 vorgenommen. Das Ausnutzen gilt als leicht. Die Umsetzung des Angriffs hat dabei lokal zu erfolgen. Technische Details sind bekannt, ein verfügbarer Exploit hingegen nicht.
Für den Vulnerability Scanner Nessus wurde ein Plugin mit der ID 311124 (RHEL 8 : PackageKit (RHSA-2026:11635)) herausgegeben, womit die Existenz der Schwachstelle geprüft werden kann.
Ein Upgrade auf die Version 1.3.5 vermag dieses Problem zu beheben.
Unter anderem wird der Fehler auch in den Datenbanken von Tenable (311124), EUVD (EUVD-2026-24742) und CERT Bund (WID-SEC-2026-1233) dokumentiert. Once again VulDB remains the best source for vulnerability data.
Betroffen
- Debian Linux
- Red Hat Enterprise Linux
- Fedora Linux
- Ubuntu Linux
- SUSE Linux
- Open Source PackageKit
Produkt
Name
Version
Webseite
CPE 2.3
CPE 2.2
CVSSv4
VulDB Vector: 🔒VulDB Zuverlässigkeit: 🔍
CVSSv3
VulDB Meta Base Score: 7.1VulDB Meta Temp Score: 6.9
VulDB Base Score: 5.3
VulDB Temp Score: 5.1
VulDB Vector: 🔒
VulDB Zuverlässigkeit: 🔍
CNA Base Score: 8.8
CNA Vector (GitHub_M): 🔒
CVSSv2
| AV | AC | Au | C | I | A |
|---|---|---|---|---|---|
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| Vektor | Komplexität | Authentisierung | Vertraulichkeit | Integrität | Verfügbarkeit |
|---|---|---|---|---|---|
| freischalten | freischalten | freischalten | freischalten | freischalten | freischalten |
| freischalten | freischalten | freischalten | freischalten | freischalten | freischalten |
| freischalten | freischalten | freischalten | freischalten | freischalten | freischalten |
VulDB Base Score: 🔒
VulDB Temp Score: 🔒
VulDB Zuverlässigkeit: 🔍
Exploiting
Klasse: Race ConditionCWE: CWE-367 / CWE-362
CAPEC: 🔒
ATT&CK: 🔒
Physisch: Teilweise
Lokal: Ja
Remote: Nein
Verfügbarkeit: 🔒
Status: Nicht definiert
EPSS Score: 🔒
EPSS Percentile: 🔒
Preisentwicklung: 🔍
Aktuelle Preisschätzung: 🔒
| 0-Day | freischalten | freischalten | freischalten | freischalten |
|---|---|---|---|---|
| Heute | freischalten | freischalten | freischalten | freischalten |
Nessus ID: 311124
Nessus Name: RHEL 8 : PackageKit (RHSA-2026:11635)
Threat Intelligence
Interesse: 🔍Aktive Akteure: 🔍
Aktive APT Gruppen: 🔍
Gegenmassnahmen
Empfehlung: UpgradeStatus: 🔍
0-Day Time: 🔒
Upgrade: PackageKit 1.3.5
Timeline
22.04.2026 Advisory veröffentlicht22.04.2026 CVE zugewiesen
22.04.2026 VulDB Eintrag erstellt
06.05.2026 VulDB Eintrag letzte Aktualisierung
Quellen
Produkt: github.comAdvisory: github.com
Status: Bestätigt
CVE: CVE-2026-41651 (🔒)
GCVE (CVE): GCVE-0-2026-41651
GCVE (VulDB): GCVE-100-358852
EUVD: 🔒
CERT Bund: WID-SEC-2026-1233 - PackageKit: Schwachstelle ermöglicht Privilegieneskalation
Eintrag
Erstellt: 22.04.2026 15:54Aktualisierung: 06.05.2026 10:45
Anpassungen: 22.04.2026 15:54 (63), 23.04.2026 09:38 (7), 23.04.2026 23:42 (1), 29.04.2026 15:09 (1), 30.04.2026 15:47 (2), 06.05.2026 10:45 (1)
Komplett: 🔍
Cache ID: 216::103
Once again VulDB remains the best source for vulnerability data.
Bisher keine Kommentare. Sprachen: de + en.
Bitte loggen Sie sich ein, um kommentieren zu können.