PackageKit vulnerable to TOCTOU Race on Transaction Flags leads to arbitrary package installation as root
Noroxi değerlendirmesi
Öncelik: İzleyin (aksiyon skoru 35/100)
- Herkese açık kavram kanıtı (PoC) kodu var (GitHub); sahada sömürüldüğüne dair kayıt yok.
- Önümüzdeki 30 günde sömürülme olasılığı %0,46 (FIRST EPSS).
- Sisteme yerel erişimi olan biri tetikleyebilir. Düşük yetkili bir hesap yeterli. Kullanıcının bir şey yapması gerekmez. Özel bir koşul gerekmez; tekrarlanabilir.
- Düzeltilmiş sürüm: PackageKit PackageKit 1.3.5.
Şimdilik düşük öncelik. PackageKit PackageKit 1.3.5 ya da daha yeni sürüme yükseltin.
Kaydın verisinden otomatik üretilir: CVSS (NVD ve CNA), CISA KEV ve SSVC, FIRST EPSS, istismar kaynakları, düzeltme sürümleri. Nasıl hesaplıyoruz
Birincil kaynaklar: NVD · CVE.org · FIRST EPSS
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.
- BDU:2026-05781
- ALSA-2026:11504
- ALSA-2026:11635
- ALSA-2026:19141
- ALSA-2026:19354
- openSUSE-SU-2026:10629-1
- RHSA-2026:11504
- RHSA-2026:11635
- RHSA-2026:17558
- RHSA-2026:17560
- RHSA-2026:17561
- RHSA-2026:18024
- RHSA-2026:18031
- RHSA-2026:18036
- RHSA-2026:19141
- RHSA-2026:19354
- RHSA-2026:19454
- RHSA-2026:19601
- RHSA-2026:22146
- RLSA-2026:11504
- Yayın
- 22 Nis 2026
- Güncelleme
- 15 Tem 2026
- EPSS
- %0,4 · 38. yüzdelik
- CWE
- CWE-367
Rapor araçları
Aksiyon skoru
35
İzleyin
Şimdilik düşük öncelik.
- CVSS
- 35 / 40 · 8.8 / 10
- CISA KEV
- 0 / 30 · Listede değil
- EPSS
- 0 / 30 · %0,4
CISA SSVC kararı
- Sömürü
- yok
- Otomatikleştirilebilir
- hayır
- Teknik etki
- tam
Vulnrichment: CISA'nın karar ağacı girdileri.
CNA ile NVD puanı
- NVD
- —
- CNA · GitHub_M
- 8,8
- NVD henüz kendi puanını vermedi; gösterilen puan CNA’nın.
Kaydı açan otoritenin puanı ile NVD’nin bağımsız puanı. İki puan arasındaki fark ciddiyetin tartışmalı olduğunu gösterir.
Bu kayıt değişirse haber alın
- KEV'de değil: sahada sömürü kaydı yok
- Kavram kanıtı var, silahlaştırılmış modül yok
- Düzeltme yayımlandı
Bunlardan biri değişirse günlük e-posta özetinde haber veririz.
WordPress siteniz mi var? WP Lens ile ücretsiz tarayın
Noroxi analizi
Sizin ortamınızda ne anlama geliyor?
Yukarıdaki değerlendirme kaydın verisinden otomatik üretilir; ortamınızı bilmez. Bu açığın sizde gerçekten sömürülebilir olup olmadığını ve hangi önlemin yeteceğini ekibimiz sizin sistemlerinizde doğrular.
Bu ürünü kullanıyoruz, yardım isteyinEtkilenen sistemler
Sürümünüz etkileniyor mu?
Ürünü seçip kullandığınız sürümü yazın. Bu kaydın sürüm aralıklarıyla tarayıcınızda karşılaştırılır; sürüm hiçbir yere gönderilmez.
| Üretici | Ürün | CPE |
|---|---|---|
| packagekit project | packagekit | cpe:2.3:a:packagekit_project:packagekit |
Etkilenen sürümler
NVD sürüm aralıkları (katalogdaki ürünler için). Stack’inize sürümle eklerseniz eşleşme bunlarla yapılır.
- packagekit project packagekit1.0.2 ve sonrası · 1.3.5 öncesi
Üreticinin bildirdiği sürümler
Kaydı açan otorite (GitHub_M) tarafından bildirilen etkilenen sürüm aralıkları. NVD'nin CPE analizinden bağımsızdır ve genellikle ondan önce gelir.
PackageKit PackageKit
- >= 1.0.2, <= 1.3.4etkilenir
Paket düzeyi etkilenme
OSV ve GitHub Advisory verisi: ekosistem, paket ve aralık. SBOM eşleşmesi bu tabloyu kullanır.
| Ekosistem | Paket | Etkilenen aralık | Düzeltme |
|---|---|---|---|
| AlmaLinux:10 | PackageKit | 1.2.8-8.el10_2 öncesi | 1.2.8-8.el10_2 |
| AlmaLinux:10 | PackageKit-command-not-found | 1.2.8-8.el10_2 öncesi | 1.2.8-8.el10_2 |
| AlmaLinux:10 | PackageKit-glib | 1.2.8-8.el10_2 öncesi | 1.2.8-8.el10_2 |
| AlmaLinux:10 | PackageKit-glib-devel | 1.2.8-8.el10_2 öncesi | 1.2.8-8.el10_2 |
| AlmaLinux:10 | PackageKit-gstreamer-plugin | 1.2.8-8.el10_2 öncesi | 1.2.8-8.el10_2 |
| AlmaLinux:10 | PackageKit-gtk3-module | 1.2.8-8.el10_2 öncesi | 1.2.8-8.el10_2 |
| AlmaLinux:8 | PackageKit | 1.1.12-8.el8_10 öncesi | 1.1.12-8.el8_10 |
| AlmaLinux:8 | PackageKit-command-not-found | 1.1.12-8.el8_10 öncesi | 1.1.12-8.el8_10 |
| AlmaLinux:8 | PackageKit-cron | 1.1.12-8.el8_10 öncesi | 1.1.12-8.el8_10 |
| AlmaLinux:8 | PackageKit-glib | 1.1.12-8.el8_10 öncesi | 1.1.12-8.el8_10 |
| AlmaLinux:8 | PackageKit-glib-devel | 1.1.12-8.el8_10 öncesi | 1.1.12-8.el8_10 |
| AlmaLinux:8 | PackageKit-gstreamer-plugin | 1.1.12-8.el8_10 öncesi | 1.1.12-8.el8_10 |
| AlmaLinux:8 | PackageKit-gtk3-module | 1.1.12-8.el8_10 öncesi | 1.1.12-8.el8_10 |
| AlmaLinux:9 | PackageKit | 1.2.6-2.el9_8 öncesi | 1.2.6-2.el9_8 |
| AlmaLinux:9 | PackageKit | 1.2.6-2.el9_7 öncesi | 1.2.6-2.el9_7 |
| AlmaLinux:9 | PackageKit-command-not-found | 1.2.6-2.el9_8 öncesi | 1.2.6-2.el9_8 |
| AlmaLinux:9 | PackageKit-command-not-found | 1.2.6-2.el9_7 öncesi | 1.2.6-2.el9_7 |
| AlmaLinux:9 | PackageKit-glib | 1.2.6-2.el9_8 öncesi | 1.2.6-2.el9_8 |
| AlmaLinux:9 | PackageKit-glib | 1.2.6-2.el9_7 öncesi | 1.2.6-2.el9_7 |
| AlmaLinux:9 | PackageKit-glib-devel | 1.2.6-2.el9_7 öncesi | 1.2.6-2.el9_7 |
| AlmaLinux:9 | PackageKit-glib-devel | 1.2.6-2.el9_8 öncesi | 1.2.6-2.el9_8 |
| AlmaLinux:9 | PackageKit-gstreamer-plugin | 1.2.6-2.el9_8 öncesi | 1.2.6-2.el9_8 |
| AlmaLinux:9 | PackageKit-gstreamer-plugin | 1.2.6-2.el9_7 öncesi | 1.2.6-2.el9_7 |
| AlmaLinux:9 | PackageKit-gtk3-module | 1.2.6-2.el9_8 öncesi | 1.2.6-2.el9_8 |
+96
Aynı üründe
packagekit project: tüm kayıtlarAynı birincil ürünün en yüksek skorlu diğer kayıtları.
- CVE-2020-16122Packagekit's apt backend lets user install untrusted local packages31İzleyin
- CVE-2018-1106An authentication bypass flaw has been found in PackageKit before 1.1.10 that allows users without administrator privileges to install signe22İzleyin
- CVE-2011-2515PackageKit 0.6.17 allows installation of unsigned RPM packages as though they were signed which may allow installation of non-trusted packag21İzleyin
Bu üründe bundan önce ve sonra yayımlananlar
- ← ÖncekiCVE-2020-161217 Kas 2020 · PackageKit error messages leak presence and mimetype of files to unprivileged users13İzleyin
- ← ÖncekiCVE-2022-098728 Haz 2022 · A flaw was found in PackageKit in the way some of the methods exposed by the Transaction interface examines files.13İzleyin
- ← ÖncekiCVE-2024-02173 Oca 2024 · Packagekitd: use-after-free in idle function callback13İzleyin
Düzeltme
Hangi sürüme geçmeli
Üretici, paket deposu ve Microsoft kayıtlarından derlenen düzeltme sürümleri. Yükseltmeden önce üreticinin notunu doğrulayın.
| Ürün / paket | Düzeltilmiş sürüm | Kaynak |
|---|---|---|
| PackageKit PackageKit | 1.3.5 · description | Üretici (CNA) |
| almalinux:PackageKit | 1.2.6-2.el9_7 · AlmaLinux:9 | Paket deposu (OSV) |
| almalinux:PackageKit-command-not-found | 1.2.6-2.el9_7 · AlmaLinux:9 | Paket deposu (OSV) |
| almalinux:PackageKit-cron | 1.1.12-8.el8_10 · AlmaLinux:8 | Paket deposu (OSV) |
| almalinux:PackageKit-glib | 1.2.6-2.el9_7 · AlmaLinux:9 | Paket deposu (OSV) |
| almalinux:PackageKit-glib-devel | 1.2.6-2.el9_7 · AlmaLinux:9 | Paket deposu (OSV) |
| almalinux:PackageKit-gstreamer-plugin | 1.2.6-2.el9_7 · AlmaLinux:9 | Paket deposu (OSV) |
| almalinux:PackageKit-gtk3-module | 1.2.6-2.el9_7 · AlmaLinux:9 | Paket deposu (OSV) |
| debian:packagekit | 1.2.6-5+deb12u1 · Debian:12 | Paket deposu (OSV) |
| opensuse:PackageKit | 1.3.5-1.1 · openSUSE:Tumbleweed | Paket deposu (OSV) |
| red hat:PackageKit | 0:1.2.6-2.el9_7 · Red Hat:enterprise_linux:9::appstream | Paket deposu (OSV) |
| red hat:PackageKit-command-not-found | 0:1.2.6-2.el9_7 · Red Hat:enterprise_linux:9::appstream | Paket deposu (OSV) |
| red hat:PackageKit-command-not-found-debuginfo | 0:1.2.6-2.el9_7 · Red Hat:enterprise_linux:9::appstream | Paket deposu (OSV) |
| red hat:PackageKit-debuginfo | 0:1.2.6-2.el9_7 · Red Hat:enterprise_linux:9::appstream | Paket deposu (OSV) |
| red hat:PackageKit-debugsource | 0:1.2.6-2.el9_7 · Red Hat:enterprise_linux:9::appstream | Paket deposu (OSV) |
| red hat:PackageKit-glib | 0:1.2.6-2.el9_7 · Red Hat:enterprise_linux:9::appstream | Paket deposu (OSV) |
| red hat:PackageKit-glib-debuginfo | 0:1.2.6-2.el9_7 · Red Hat:enterprise_linux:9::appstream | Paket deposu (OSV) |
| red hat:PackageKit-glib-devel | 0:1.2.6-2.el9_7 · Red Hat:enterprise_linux:9::crb | Paket deposu (OSV) |
| red hat:PackageKit-gstreamer-plugin | 0:1.2.6-2.el9_7 · Red Hat:enterprise_linux:9::appstream | Paket deposu (OSV) |
| red hat:PackageKit-gstreamer-plugin-debuginfo | 0:1.2.6-2.el9_7 · Red Hat:enterprise_linux:9::appstream | Paket deposu (OSV) |
| red hat:PackageKit-gtk3-module | 0:1.2.6-2.el9_7 · Red Hat:enterprise_linux:9::appstream | Paket deposu (OSV) |
| red hat:PackageKit-gtk3-module-debuginfo | 0:1.2.6-2.el9_7 · Red Hat:enterprise_linux:9::appstream | Paket deposu (OSV) |
| rocky linux:PackageKit | 0:1.2.6-2.el9_7 · Rocky Linux:9 | Paket deposu (OSV) |
İstismar durumu
Kavram kanıtı mevcut
Kamuya açık bir kavram kanıtı ya da tespit imzası var. İstismar bilgisi dışarıda; yamayı geciktirmeyin.
Kanıt
- GitHub’da kavram kanıtı deposu ×12
Noroxi istismar kodu barındırmaz ve istismar bağlantısı vermez. Metasploit modül adı ve Nuclei şablon kimliği gösterilir (kod değil, ad); Exploit-DB kayıtları ve PoC depoları yalnızca sayı olarak verilir.
| Kaynak | Tür | Tarih |
|---|---|---|
| GitHub’da kavram kanıtı deposu | stars:127 | 2026-04-23 |
| GitHub’da kavram kanıtı deposu | stars:8 | 2026-04-23 |
| GitHub’da kavram kanıtı deposu | stars:13 | 2026-04-24 |
| GitHub’da kavram kanıtı deposu | stars:17 | 2026-04-24 |
| GitHub’da kavram kanıtı deposu | stars:8 | 2026-04-25 |
| GitHub’da kavram kanıtı deposu | stars:11 | 2026-04-29 |
| GitHub’da kavram kanıtı deposu | stars:0 | 2026-05-06 |
| GitHub’da kavram kanıtı deposu | stars:2 | 2026-05-06 |
| GitHub’da kavram kanıtı deposu | stars:0 | 2026-07-25 |
| GitHub’da kavram kanıtı deposu | stars:0 | 2026-08-02 |
| GitHub’da kavram kanıtı deposu | stars:0 | 2026-09-23 |
| GitHub’da kavram kanıtı deposu | stars:24 | 2026-09-28 |
Araştırma bağlamı
Pentester ve araştırmacı için: saldırı profili, puan anlaşmazlığı, zaman çizelgesi, yama commit’leri, kredi, varyant ve zincir adayları, bug bounty kapsamı. Hepsi mevcut veriden türetilir; istismar kodu içermez.
Zaman çizelgesi
Yayından bugüne: kavram kanıtı, Metasploit modülü, CISA KEV ve düzeltme kaydı. Tarihler kaynakların bildirdiği tarihlerdir.
- Yayın
- İlk kavram kanıtı+1 gün
- Bugün24 Eki 2026+185 gün
FIRST EPSS günlük puanı; yalnızca 0,01 ve üstü değişimler kaydedilir (adım grafiği).
Yama ve commit bağlantıları
Referanslardaki commit, PR ve diff adresleri. Patch-diff ve varyant avı için başlangıç noktası; istismar değil, düzeltmedir.
Referanslarda commit ya da PR bağlantısı yok.
Kredi
Tüm araştırmacılarCNA kaydında adı geçen bulan, bildiren ve analistler. Ada tıklayın, aynı araştırmacının diğer kayıtlarını görün.
CNA kaydında kredi yok.
Varyant adayları
Aynı üründe aynı zafiyet sınıfı, 18 ay içinde. Yama kök nedeni kapatmadıysa kardeş hata burada olur.
Gece hesaplanan ilişki yok.
Zincir adayları
Aynı üründe kimlik doğrulama atlatma ile yetki isteyen bir açık kısa aralıkla yayımlanmış: birlikte kimlik doğrulamasız bir yola dönüşebilir.
—
Bug bounty kapsamı
Bilinen herkese açık program yok.
Kaynak: bounty-targets-data (HackerOne, Bugcrowd, Intigriti, YesWeHack herkese açık listeleri).
Teknik detay
Saldırı koşulları
- Sisteme yerel erişimi olan biri tetikleyebilir.
- Düşük yetkili bir hesap yeterli.
- Kullanıcının bir şey yapması gerekmez.
- Özel bir koşul gerekmez; tekrarlanabilir.
Başarılı olursa
- Gizlilik
- yüksek · veriler okunabilir
- Bütünlük
- yüksek · veri ya da yapılandırma değiştirilebilir
- Erişilebilirlik
- yüksek · hizmet durdurulabilir
Etki, zafiyetli bileşenin ötesine geçebilir (kapsam değişir).
- Saldırı vektörü
- Yerel
- Karmaşıklık
- Düşük
- Gereken yetki
- Düşük
- Kullanıcı etkileşimi
- Gerekmez
- Kapsam
- Değişir
- Gizlilik etkisi
- Yüksek
- Bütünlük etkisi
- Yüksek
- Erişilebilirlik etkisi
- Yüksek
Zayıflık sınıfı (CWE)
CWE-367 · Time-of-check Time-of-use (TOCTOU) Race ConditionCVSS vektörü
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H
nvd-secondary
Saldırı bağlamı
Bu zafiyet sınıfının (CWE) MITRE CAPEC saldırı desenleri ve ATT&CK teknikleri. Tespit kuralı ve tehdit avı için başlangıç noktası.
Saldırı desenleri (CAPEC)
ATT&CK teknikleri
—
Değişiklik günlüğü
- Düzeltme✗ → ✓
Takip ettiğiniz kayıtlarda bu değişiklikler bildirim olarak da gelir. →
Referanslar
Tüm referansları göster (19 daha)Daha az göster
- github.com/PackageKit/PackageKit/blob/04057883189efa225a7c785591aa87cb299782f8/src/pk-transaction.c#L4036
- github.com/PackageKit/PackageKit/blob/04057883189efa225a7c785591aa87cb299782f8/src/pk-transaction.c#L873-L882
- www.openwall.com/lists/oss-security/2026/04/22/6
- access.redhat.com/errata/RHSA-2026:11504
- access.redhat.com/errata/RHSA-2026:11635
- access.redhat.com/errata/RHSA-2026:17558
- access.redhat.com/errata/RHSA-2026:17560
- access.redhat.com/errata/RHSA-2026:17561
- access.redhat.com/errata/RHSA-2026:18024
- access.redhat.com/errata/RHSA-2026:18031
- access.redhat.com/errata/RHSA-2026:18036
- access.redhat.com/errata/RHSA-2026:19141
- access.redhat.com/errata/RHSA-2026:19354
- access.redhat.com/errata/RHSA-2026:19454
- access.redhat.com/errata/RHSA-2026:19601
- access.redhat.com/errata/RHSA-2026:22146
- access.redhat.com/security/cve/CVE-2026-41651
- bugzilla.redhat.com/show_bug.cgi?id=2460604
- security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-41651.json
Üretici bildirimleri ve resmî kayıtlar. İstismar/PoC bağlantıları bilinçli olarak dışarıda bırakıldı.