Pack2TheRoot (CVE-2026-41651): Kecacatan PackageKit yang menjejaskan Linux

Perkara utama:
  • Kegagalan ini berdasarkan keadaan perlumbaan (TOCTOU) dalam pengurusan transaksi D-Bus, yang memintas kebenaran polkit.
  • Ia secara langsung mempengaruhi pengedaran popular seperti Ubuntu, Debian, Fedora dan Rocky Linux dalam pemasangan lalai mereka.
  • Penyerang boleh menulis ganti bendera transaksi selamat dengan menghantar permintaan kedua sebelum penjadual memulakan operasi.
  • Kerentanan telah dibaiki dalam PackageKit 1.3.5, dan terdapat mitigasi sementara dengan mencipta peraturan tersuai dalam polkit.

Pack2TheRoot

Beberapa hari yang lalu Maklumat telah dikeluarkan tentang kelemahan kritikal baharu yang mempengaruhi persekitaran Linux yang dipanggil "Pack2TheRoot". Dikatalogkan di bawah CVE-2026-41651Kecacatan ini menjejaskan PackageKit (alat yang bertindak sebagai lapisan abstraksi D-Bus untuk menyatukan pengurusan pakej merentasi pelbagai pengedaran)

Disebutkan bahawa keputusan itu Ia membenarkan mana-mana pengguna setempat tanpa keistimewaan untuk memasang atau mengalih keluar pakej sewenang-wenangnya. Dengan mengeksploitasi kelemahan ini, penyerang boleh mendapatkan akses root penuh ke sistem yang dicerobohi. Kesannya agak ketara, memandangkan isu ini telah wujud sejak versi 1.0.2, yang dikeluarkan lebih dua belas tahun yang lalu (pada tahun 2014), dan menjejaskan konfigurasi lalai pengedaran popular seperti Ubuntu, Debian, Rocky Linux dan Fedora.

Pack2TheRoot: Kerentanan PackageKit memberikan akses pentadbir pada Linux

El Penemuan Pack2TheRoot adalah hasil daripada siasatan diketuai oleh Pasukan Merah Deutsche Telekom, yang Mereka menggunakan model kecerdasan buatan Claude Opus untuk membimbing analisis mereka tentang vektor peningkatan keistimewaan tempatan.

LoPara penyelidik pada mulanya memerhatikan bahawa arahan pemasangan pkcon boleh dilaksanakan tanpa memerlukan kata laluan.dalam konfigurasi Fedora tertentu, yang menimbulkan syak wasangka tentang kebenaran yang mendasarinya. Selepas mengesahkan dan melaporkan secara bertanggungjawab kerentanan kepada penyelenggara PackageKit, Satu eksploitasi kerja telah dibangunkan, walaupun penerbitan terperincinya telah ditangguhkan secara strategik untuk membolehkan pengguna dan pentadbir menggunakan kemas kini yang diperlukan.

Mekanik serangan itu

Akar daripada Kerentanan terletak pada keadaan kerjaya (Jenis TOCTOU: Masa-Pemeriksaan-ke-Masa-Penggunaan) dalam pengurusan transaksi proses latar belakang (daemon) PackageKitPackageKit, yang beroperasi sebagai pengguna root, mewakilkan kebenaran kepada sistem polkit. Apabila klien meminta untuk memasang pakej, contohnya menggunakan kaedah InstallFiles, ia menghantar satu set bendera yang menentukan tingkah laku transaksi.

Bendera tertentu, seperti SIMULATE atau ONLY_DOWNLOAD, mengarahkan PackageKit untuk melangkau kebenaran polkit. kerana ia mewakili operasi selamat yang, secara teorinya, tidak mengubah keadaan sistem. Kegagalan dicetuskan kerana pengendali transaksi menulis ganti Penunjuk-penunjuk ini disimpan dalam cache tanpa syarat dengan setiap panggilan baharu, tanpa mengesahkan sama ada transaksi telah dibenarkan atau sedang dalam proses pelaksanaan.

pack2theroot-poc2

Un Penyerang boleh memulakan transaksi menggunakan penunjuk "selamat" (dengan itu mengelakkan kebenaran polkit) dan, beberapa milisaat kemudian, hantar permintaan D-Bus kedua untuk transaksi yang sama, tetapi kali ini dengan bendera berniat jahat yang mengarahkan pemasangan sebenar. Disebabkan oleh seni bina keutamaan gelung peristiwa GLib (di mana mesej D-Bus diproses sebelum panggilan balik terbiar), permintaan kedua menulis ganti parameter sebelum penjadual memulakan operasi.

Akibatnya, transaksi yang sebelum ini dibenarkan sebagai "selamat" dilaksanakan dengan parameter yang digantikan., memasang pakej dengan keistimewaan pentadbir.

Penyelesaian dan mitigasi

Cabe señalar que la Kerentanan telah ditampal dalam PackageKit versi 1.3.5Oleh itu, pembangun menggesa pentadbir sistem untuk memeriksa sama ada sistem mereka terdedah dengan menyemak status perkhidmatan menggunakan arahan seperti systemctl status packagekit atau dengan memantau aktiviti dengan pkmon.

yang Pengedaran utama, termasuk Debian, Ubuntu dan Fedora, telah pun mula mengedarkan pakej. Kemas kini dikeluarkan melalui saluran rasmi mereka. Bagi sistem yang mana tampalan tidak tersedia dengan segera, penyelidik telah mencadangkan penyelesaian: menggunakan peraturan polkit tersuai.

ini Peraturan itu serta-merta dan senyap-senyap menafikan tindakan pemasangan PackageKit. Bagi mana-mana pengguna selain root, ini menghalang tetingkap keadaan perlumbaan daripada dibuka. Penting untuk diperhatikan bahawa, walaupun eksploit pantas dan senyap, ia meninggalkan jejak yang jelas dalam log sistem: selepas eksploit yang berjaya, daemon PackageKit ranap akibat kegagalan penegasan (penegasan gagal: (!transaction->priv->emitted_finished)). Walaupun systemd memulakan semula perkhidmatan, menghalang serangan penafian perkhidmatan, kehadiran mesej ini dalam journalctl adalah petunjuk kuat bahawa sistem telah dikompromi.

Akhir sekali, jika anda berminat untuk mengetahui lebih lanjut tentang ini, anda boleh merujuk kepada perincian dalam pautan berikut.


Tambah sebagai sumber pilihan