bin
belum benar untuk apa pun selama seumur hidup Linux.
Seperti run-level dan init
pemijahan getty
karena catatan /etc/inittab
, bin
akun itu usang di dunia Unix sebelum Linux bahkan diciptakan. Itu adalah ide dari tahun 1980-an yang rusak oleh penemuan dan adopsi NFS (Network File System) dan nobody
penggunanya. Kehadirannya yang terus-menerus dalam basis data akun pengguna pada akhir 2010-an ketika orang-orang di dunia komersial Unix secara aktif menghentikan penggunaannya pada 1990-an merupakan bukti inersia.
Idenya adalah bahwa bin
pengguna memiliki berbagai direktori seperti /bin
dan /usr/bin
(dan memang beberapa yang lain disebutkan di /unix//a/448799/5132 seperti /usr/mbin
dan /usr/5bin
) dan non-set-UID / non- set-GID file di dalamnya. Itu juga memiliki file dan direktori dokumen, seperti halaman manual.
(Dalam kasus yang lebih ekstrem pada beberapa Unites, ia bahkan memiliki /
dan /etc
, meskipun yang terakhir adalah kesalahan yang diakui dalam pembuatan citra sistem operasi SunOS. Yang pertama hanya dikepalai.)
Dengan demikian izin untuk membuat pembaruan perangkat lunak, berjalan sebagai pengguna bin
, bukan izin selimut, berjalan sebagai pengguna super, untuk melakukan tindakan apa pun terhadap sistem. Pembaruan perangkat lunak tidak dapat membaca / menulis file pengguna pribadi, mengakses kotak surat, dan sebagainya; yang memperbarui perangkat lunak sebagai superuser tentu saja bisa.
Beberapa entri akun khusus lainnya dalam /etc/passwd
file Anda harus memiliki kata sandi. Ini adalah rekening administratif - bin
, daemon
, sys
, uucp
, lp
, dan adm
. [...] Alasan utama untuk keberadaan akun ini adalah kepemilikan perintah, skrip, file, dan perangkat yang aman. Dan beberapa administrator memasang kata sandi untuk akun ini dan benar-benar menggunakannya. [...] bin
Akun bebas kata sandi sangat berguna untuk pemecah sistem.
- Rebecca Thomas dan Rik Farrow (1989). UNIX Administrasi Panduan untuk Sistem V . Prentice Hall. ISBN 9780139428890. hlm. 452.
NFS ditemukan pada awal 1980-an, dan mematahkan ide ini sepenuhnya.
Itu sudah di tanah yang goyah, sebagaimana kutipan yang disinggung sebelumnya menyinggung. Ini karena kemampuan untuk memperbarui file gambar program untuk utilitas dasar yang dijalankan superuser sebagai hal yang biasa, seperti /bin/ls
misalnya, adalah vektor langsung untuk mendapatkan hak pengguna superuser, dan pembagian akses dalam menggunakan bin
akun hanya dicegah secara tidak sengaja memodifikasi direktori yang salah alih-alih mencegah malefactor mendapatkan akses pengguna super.
Munculnya NFS menyoroti ini. Meskipun NFS memiliki mekanisme untuk memetakan ulang akun superuser ke akun pengguna non-sistem biasa, NFS tidak memiliki yang sama untuk akun non-root-like bin
. Jadi jika seseorang bisa mendapatkan bin
akses pada klien NFS itu memberi mereka bin
akses ke file sistem operasi pada server NFS. Memang, itu memungkinkan pengguna super pada klien NFS, yang sebaliknya akan dipetakan kembali ke pengguna non-sistem biasa di server, untuk mendapatkan akses pemilik ke file sistem operasi dan direktori.
Ini adalah pengetahuan umum pada awal 1990-an, dan pada saat itu menerima kebijaksanaan adalah untuk chown
hal-hal yang dimiliki oleh bin
yang dimiliki oleh pengguna super, untuk memasang lubang ini yang sudah menjadi item pelaporan standar dalam alat audit keamanan Unix dan diperingatkan di suka dari dokumen instalasi untuk Sendmail.
Sejauh menyangkut pertanyaan M. Hess, ide ini tidak pernah diadopsi pada Debian, yang baru muncul bertahun-tahun setelah dikenal sebagai ide buruk di dunia Unix, yang memang tahu itu adalah ide yang buruk sebelum Linux sendiri ditemukan. Sistem operasi BSD yang sejarah tidak kembali peregangan ke tahun 1980-an sudah lama dilakukan jauh dengan kepemilikan yang sebenarnya, tapi tetap mempertahankan akun pengguna dalam database akun. FreeBSD dikonversi bin
: bin
kepemilikan menjadi root
: wheel
kepemilikan kembali pada tahun 1998 , misalnya.
Bacaan lebih lanjut