Ini muncul dalam komentar untuk pertanyaan lain dan saya akan senang jika seseorang dapat menjelaskan alasannya kepada saya.
Saya menyarankan agar Apache mencatat kesalahan untuk VHost yang diberikan ke direktori home pengguna. Ini ditembak jatuh karena tidak aman. Mengapa?
Saya meminta klarifikasi dalam komentar balasan tetapi yang saya dapatkan adalah tidak aman untuk menulis root di folder yang tidak dimiliki oleh root. Sekali lagi, bisakah seseorang menjelaskan?
Terima kasih,
Bart.
linux
security
permissions
Bart B
sumber
sumber
Jawaban:
Karena suatu pengguna jahat jahat dapat mencoba untuk menunjukkan file
root
menulis ke lokasi yang berbeda . Ini tidak begitu sederhana, tetapi sangat mungkin.Sebagai contoh, jika pengguna akan menemukan cara untuk membuat symlink dari log Apache yang seharusnya, katakanlah, / etc / shadow tiba-tiba Anda akan tiba-tiba memiliki sistem yang tidak dapat digunakan. Apache (
root
) akan menimpa kredensial pengguna Anda yang membuat sistem salah.Jika file access.log tidak dapat ditulisi oleh pengguna, bisa jadi sulit untuk membajaknya, tetapi menghindari kemungkinan itu lebih baik!
Kemungkinan bisa menggunakan logrotate untuk melakukan pekerjaan itu , membuat tautan ke file yang belum ada, tetapi logrotate itu akan menimpa segera setelah log tumbuh:
Catatan :
The symlink Metode ini hanya salah satu kemungkinan serangan, diberikan sebagai bukti dari konsep.
Keamanan harus dibuat dengan pikiran Daftar Putih , bukan daftar hitam apa yang kita ketahui sebagai masalah.
sumber
+t
bit sticky diatur), bahkan jika mereka tidak memiliki izin menulis ke file itu sendiri (karena unlink () adalah menulis ke direktori, bukan mengajukan). Bahkan jika root membuat file sebelumnya, pemilik direktori masih dapat menghapusnya dan menggantinya dengan symlink ke sesuatu yang lain.Prinsip umum tidak memiliki proses menulis ke direktori yang tidak mereka miliki atau percayai adalah prinsip yang baik. Tetapi dalam kasus khusus ini, masuk akal untuk percaya bahwa kode Apache membuka log dengan
O_NOFOLLOW
dll: masuk ke direktori home pengguna adalah pengaturan umum.sumber