Kesalahan Konfigurasi Keamanan
Kesalahan Konfigurasi Keamanan muncul saat pengaturan Keamanan ditetapkan, diterapkan, dan dipertahankan sebagai default. Keamanan yang baik memerlukan konfigurasi aman yang ditentukan dan diterapkan untuk aplikasi, server web, server basis data, dan platform. Sama pentingnya untuk memperbarui perangkat lunak.
Contoh
Beberapa contoh klasik kesalahan konfigurasi keamanan seperti yang diberikan -
Jika daftar Direktori tidak dinonaktifkan di server dan jika penyerang menemukan hal yang sama maka penyerang dapat dengan mudah membuat daftar direktori untuk menemukan file apa pun dan menjalankannya. Dimungkinkan juga untuk mendapatkan basis kode aktual yang berisi semua kode kustom Anda dan kemudian menemukan kelemahan serius dalam aplikasi.
Konfigurasi server aplikasi memungkinkan pelacakan tumpukan dikembalikan ke pengguna, berpotensi mengungkap kelemahan yang mendasarinya. Penyerang mengambil informasi tambahan yang disediakan oleh pesan kesalahan yang cukup untuk mereka tembus.
Server aplikasi biasanya dilengkapi dengan aplikasi sampel yang tidak diamankan dengan baik. Jika tidak dihapus dari server produksi akan mengakibatkan kompromi pada server Anda.
Tangan di atas
Step 1- Luncurkan Webgoat dan arahkan ke bagian konfigurasi yang tidak aman dan biarkan kami mencoba menyelesaikan tantangan itu. Snapshot yang sama disediakan di bawah -
Step 2- Kami dapat mencoba opsi sebanyak yang kami bisa pikirkan. Yang kita butuhkan untuk menemukan URL file konfigurasi dan kita tahu bahwa para pengembang mengikuti jenis konvensi penamaan untuk file konfigurasi. Bisa apa saja yang tercantum di bawah ini. Biasanya dilakukan dengan teknik BRUTE force.
- web.config
- config
- appname.config
- conf
Step 3 - Setelah mencoba berbagai opsi, kami menemukan bahwa 'http://localhost:8080/WebGoat/conf' berhasil. Halaman berikut ditampilkan jika upaya tersebut berhasil -
Mekanisme Pencegahan
Semua lingkungan seperti Pengembangan, QA, dan lingkungan produksi harus dikonfigurasi secara identik menggunakan kata sandi berbeda yang digunakan di setiap lingkungan yang tidak dapat diretas dengan mudah.
Pastikan bahwa arsitektur aplikasi yang kuat diadopsi yang menyediakan pemisahan yang efektif dan aman antar komponen.
Itu juga dapat meminimalkan kemungkinan serangan ini dengan menjalankan pemindaian otomatis dan melakukan audit secara berkala.