Pack2TheRoot (CVE-2026-41651): Cacat PackageKit yang membahayakan Linux

Poin kunci:
  • Kegagalan tersebut disebabkan oleh kondisi persaingan (TOCTOU) dalam manajemen transaksi D-Bus, yang melewati otorisasi polkit.
  • Hal ini secara langsung memengaruhi distribusi populer seperti Ubuntu, Debian, Fedora, dan Rocky Linux dalam instalasi default mereka.
  • Penyerang dapat menimpa flag transaksi aman dengan mengirimkan permintaan kedua sebelum penjadwal memulai operasi.
  • Kerentanan tersebut telah diperbaiki di PackageKit 1.3.5, dan terdapat mitigasi sementara dengan membuat aturan khusus di polkit.

Pack2TheRoot

Beberapa hari yang lalu Informasi telah dirilis mengenai kerentanan kritis baru. yang mempengaruhi lingkungan Linux yang disebut "Pack2TheRoot". Tercatat dalam katalog CVE-2026-41651Cacat ini memengaruhi PackageKit (sebuah alat yang bertindak sebagai lapisan abstraksi D-Bus untuk menyatukan manajemen paket di berbagai distribusi).

Disebutkan bahwa putusan tersebut Hal ini memungkinkan pengguna lokal mana pun tanpa hak akses untuk menginstal atau menghapus paket secara sembarangan. Dengan mengeksploitasi kerentanan ini, penyerang dapat memperoleh akses root penuh ke sistem yang disusupi. Dampaknya cukup besar, mengingat masalah ini telah ada sejak versi 1.0.2, yang dirilis lebih dari dua belas tahun yang lalu (pada tahun 2014), dan memengaruhi konfigurasi default dari distribusi populer seperti Ubuntu, Debian, Rocky Linux, dan Fedora.

Pack2TheRoot: Kerentanan PackageKit memberikan akses administrator di Linux

El Penemuan Pack2TheRoot adalah hasil dari sebuah investigasi. dipimpin oleh Tim Merah Deutsche Telekom, yang Mereka menggunakan model kecerdasan buatan Claude Opus. untuk memandu analisis mereka tentang vektor peningkatan hak akses lokal.

LoPara peneliti awalnya mengamati bahwa perintah pkcon install dapat dieksekusi tanpa memerlukan kata sandi.pada konfigurasi Fedora tertentu, yang menimbulkan kecurigaan tentang otorisasi yang mendasarinya. Setelah mengkonfirmasi dan melaporkan kerentanan tersebut secara bertanggung jawab kepada pengelola PackageKit, Sebuah celah keamanan yang berfungsi telah dikembangkan, meskipun publikasi detailnya sengaja ditunda untuk memberi kesempatan kepada pengguna dan administrator untuk menerapkan pembaruan yang diperlukan.

Mekanisme serangan

Akar dari Kerentanan terletak pada kondisi karier. (Tipe TOCTOU: Waktu Pemeriksaan ke Waktu Penggunaan) dalam manajemen transaksi proses latar belakang (daemon) dari PackageKitPackageKit, yang beroperasi sebagai pengguna root, mendelegasikan otorisasi ke sistem polkit. Ketika klien meminta untuk menginstal paket, misalnya menggunakan metode InstallFiles, ia mengirimkan serangkaian flag yang menentukan perilaku transaksi tersebut.

Flag khusus, seperti SIMULATE atau ONLY_DOWNLOAD, menginstruksikan PackageKit untuk melewati otorisasi polkit. karena hal tersebut mewakili operasi yang aman yang, secara teori, tidak mengubah keadaan sistem. Kegagalan tersebut terjadi karena penangan transaksi menimpa data yang sudah ada. Indikator-indikator ini disimpan dalam cache tanpa syarat pada setiap panggilan baru, tanpa memverifikasi apakah transaksi tersebut telah diotorisasi atau sedang dalam proses eksekusi.

pack2theroot-poc2

Un Penyerang dapat memulai transaksi menggunakan indikator yang "aman". (dengan demikian menghindari otorisasi polkit) dan, beberapa milidetik kemudian, mengirimkan permintaan D-Bus kedua. untuk transaksi yang sama, tetapi kali ini dengan flag berbahaya yang memerintahkan instalasi sebenarnya. Karena arsitektur prioritas event loop GLib (di mana pesan D-Bus diproses sebelum callback idle), permintaan kedua menimpa parameter tepat sebelum penjadwal memulai operasi.

Akibatnya, transaksi yang sebelumnya diotorisasi sebagai "aman" dieksekusi dengan parameter yang diganti., menginstal paket tersebut dengan hak akses administrator.

Solusi dan mitigasi

Perlu dicatat bahwa Kerentanan tersebut telah ditambal di PackageKit versi 1.3.5.Oleh karena itu, para pengembang mendesak administrator sistem untuk memeriksa apakah sistem mereka rentan dengan memeriksa status layanan menggunakan perintah seperti systemctl status packagekit atau dengan memantau aktivitas menggunakan pkmon.

itu Distribusi utama, termasuk Debian, Ubuntu, dan Fedora, telah mulai mendistribusikan paket. Pembaruan dirilis melalui saluran resmi mereka. Untuk sistem yang belum memiliki patch yang siap digunakan, para peneliti telah mengusulkan solusi alternatif: menerapkan aturan polkit khusus.

ini Aturan tersebut langsung dan tanpa suara menolak tindakan instalasi PackageKit. Bagi pengguna selain root, ini mencegah jendela race condition terbuka. Penting untuk dicatat bahwa, meskipun eksploitasi ini cepat dan senyap, ia meninggalkan jejak yang jelas dalam log sistem: setelah eksploitasi berhasil, daemon PackageKit mengalami crash karena kegagalan pernyataan (assertion failed: (!transaction->priv->emitted_finished)). Meskipun systemd memulai ulang layanan, mencegah serangan penolakan layanan, keberadaan pesan ini di journalctl merupakan indikator kuat bahwa sistem telah disusupi.

Terakhir, jika Anda tertarik untuk mempelajari lebih lanjut tentang hal ini, Anda dapat berkonsultasi dengan detailnya di tautan berikut.


Tambahkan sebagai sumber pilihan