Mengaktifkan ruang nama pengguna yang tidak memiliki hak istimewa dapat membuat kerentanan parah di kernel Linux jauh lebih mudah dieksploitasi. Jika Anda tidak bermaksud mengaktifkannya, Anda harus memastikannya dinonaktifkan. Banyak kerentanan yang ditemukan secara teratur seringkali hanya dapat dieksploitasi oleh pengguna yang tidak memiliki hak jika ruang nama pengguna yang tidak memiliki hak didukung dan diaktifkan oleh kernel. Kecuali Anda benar-benar membutuhkannya, nonaktifkan saja.
Alasan untuk hal ini adalah banyak dari kernel yang hanya dimaksudkan untuk dapat dijangkau oleh UID 0 tidak diaudit dengan baik, karena kode biasanya dianggap dapat dipercaya. Artinya, bug yang membutuhkan UID 0 jarang dianggap sebagai bug yang serius. Sayangnya, ruang nama pengguna yang tidak memiliki hak memungkinkan untuk tidak memiliki hak pengguna untuk mengakses kode yang sama ini dan mengeksploitasi bug keamanan.
Beberapa contoh kerentanan yang hanya dapat dieksploitasi pada sistem dengan ruang nama pengguna yang tidak memiliki hak istimewa:
-
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-16120
-
https://brauner.github.io/2019/02/12/privileged-containers.html
-
https://www.halfdog.net/Security/2016/UserNamespaceOverlayfsXattrSetgidPrivilegeEscalation/
-
https://www.halfdog.net/Security/2015/UserNamespaceOverlayfsSetuidWriteExec/
-
https://googleprojectzero.blogspot.com/2017/05/exploiting-linux-kernel-via-packet.html
-
https://seclists.org/fulldisclosure/2016/Feb/123
-
https://seclists.org/oss-sec/2016/q4/607
-
https://www.openwall.com/lists/oss-security/2015/12/31/5
-
https://www.rapid7.com/db/modules/exploit/linux/local/nested_namespace_idmap_limit_priv_esc/
-
https://lwn.net/Articles/543539/
-
https://lwn.net/Articles/543442/
Ini menonaktifkan sedikit "pengerasan" yang ditambal Debian ke dalam kernel distribusi mereka. Jika Anda tidak menjalankan kernel seperti itu, itu akan gagal dan tidak melakukan apa-apa, karena pengaturan seperti itu bahkan tidak ada di kernel Linux arus utama. Jika Anda menjalankan kernel yang ditambal seperti itu, semua yang dilakukannya adalah menonaktifkan fungsionalitas tambalan itu, dan membiarkan kernel Anda bekerja seperti setiap kernel lainnya, memungkinkan pengguna yang tidak memiliki hak untuk menggunakan unshare -U
. Bertentangan dengan jawaban hutan, saya tidak percaya ini berbahaya. Secara khusus, jika pengguna dapat sudo
untuk melakukan root (seperti yang diperlukan untuk mematikannya), mereka sudah dapat melakukan semua hal yang memungkinkan mereka melakukannya.