Enkripsi disk dan mount nosuid terdengar seperti variasi dari gagasan yang sama, dan keduanya sama sekali tidak berhubungan. Yang satu melindungi data saat diam, dan yang lain memutuskan apakah kernel akan menghormati bit hak istimewa pada saat program dimulai. Helper yang tidak mencapai identitas yang diharapkannya sedang mengeluhkan hal kedua. Anggapan bahwa yang pertama bertanggung jawab membuat orang memasang ulang klien yang sebenarnya tidak pernah rusak.

Dua Sifat yang Tidak Berhubungan

Enkripsi disk menjawab siapa yang dapat membaca blok saat mesin mati. Opsi mount menjawab apa yang akan dilakukan kernel terhadap bit mode sebuah berkas saat seseorang menjalankannya. Tidak ada apa pun pada yang pertama yang membatasi yang kedua, dan laptop yang terenkripsi penuh dapat me-mount sistem berkas dengan semua pembatasan terpasang.

Membacanya sebagai satu sifat itulah yang menghasilkan teori bahwa direktori home terenkripsi mencegah akses root. Teori itu bertahan karena kedua gejala muncul pada mesin yang sama, bukan karena keduanya berbagi sebab.

Apa yang Sebenarnya Menekan Transisi

Referensi execve menjelaskan bagaimana berkas yang dapat dieksekusi dengan set-user-ID mengubah identitas efektif proses baru menjadi milik pemilik berkas. Halaman yang sama mendaftar kondisi yang menekan transisi itu dan padanannya untuk pengenal grup: pengaturan no_new_privs, sistem berkas yang di-mount dengan nosuid, dan proses yang sedang dilacak. Kemampuan berkas diabaikan dalam kondisi yang sama. Keempat aturan itu mencakup hampir setiap laporan semacam ini.

Daftar itu menjelaskan mengapa mode yang dicetak ls tidak pernah menjadi seluruh kisah otorisasi. Daftar itu tidak memberi tahu kondisi mana yang menyebabkan satu pesan kegagalan tertentu, dan aplikasi mungkin melaporkan operasi kredensial yang tidak berhubungan dengan kata-kata yang sama. Catat program, peluncur, dan urutan galat yang tepat sebelum menarik kesimpulan.

Identifikasi berkas yang dapat dieksekusi yang dipasang paket yang didukung, pemiliknya, jalur sebenarnya, dan kebijakan sistem berkas yang menampungnya. Salinan yang ada di folder unduhan bukan helper yang terpasang, apa pun kata modenya.

Apa yang Jangan Dilakukan

Memasang bit set-user-ID pada biner yang belum diverifikasi dan memindahkannya ke sana ke mari sampai pembatasannya hilang bukanlah perbaikan. Itu menggantikan kebijakan yang tidak Anda pahami dengan hak istimewa yang tidak dapat Anda audit, dan teknik yang sama yang diterapkan pada helper adalah jalur eskalasi yang terkenal. Menghapus nosuid dari sebuah mount lebih buruk, karena itu memengaruhi setiap program pada sistem berkas itu, bukan hanya satu.

Jalur yang didukung adalah pemasangan helper atau layanan sesuai dokumentasi klien, yang dilakukan oleh administrator, yang menempatkan biner di tempat yang diharapkan kebijakan. Dengan begitu tetap ada satu mekanisme hak istimewa, bukan dua.

Pastikan Konteks Peluncuran yang Sebenarnya

Setelah koreksi resmi, jalankan helper sebagaimana produk menjalankannya, bukan dari shell root. Keberhasilan sebagai root tidak membuktikan apa pun tentang jalur yang dilalui pengguna biasa, dan perbedaan antara kedua konteks itu justru menjadi pokok kegagalannya.

Kemudian pastikan operasi jaringan yang menjadi alasan keberadaan helper. Helper yang mulai tetapi tidak dapat mengonfigurasi antarmuka telah memindahkan masalahnya satu tahap lebih jauh, bukan menyelesaikannya.

findmnt -no TARGET,OPTIONS /home
getcap /usr/libexec/openvpn-helper 2>/dev/null; ls -l /usr/libexec/openvpn-helper

Catat opsi mount dan kepemilikan helper dalam catatan yang sama. Jika tidak, orang berikutnya yang men-debug ini akan mengulangi teori enkripsi dari awal.

Artikel terkait