Pengalaman keamanan server: mencegah login ilegal
Penulis:Eve Cole
Waktu Pembaruan:2009-07-24 15:42:20
1. Konfigurasikan keamanan database, seperti akun/kata sandi/izin yang digunakan oleh program Anda untuk terhubung ke database. Jika Anda menelusuri berita, gunakan izin hanya-baca, Anda dapat menggunakan akun/izin yang berbeda untuk modul yang berbeda; selain itu, prosedur tersimpan mana dari database yang dapat dipanggil juga harus dikonfigurasi secara ketat, dan semua prosedur yang tidak digunakan dinonaktifkan (terutama cmd) untuk mencegah penggunaan prosedur tersimpan dalam database untuk melakukan panggilan sistem setelah injeksi;
2. Saat mendapatkan parameter yang dikirimkan oleh klien, lakukan pemfilteran ketat, termasuk panjang parameter, jenis parameter, dll.;
3. Lindungi latar belakang administrator secara ketat. Jika memungkinkan, ini harus disetel untuk hanya mengizinkan akses IP tertentu (misalnya, hanya mengizinkan akses ke segmen jaringan administrator) - ini tergantung pada situasi sebenarnya;
4. Konfigurasikan sistem operasi dengan aman untuk mencegah pemanggilan fungsi sistem setelah injeksi, seperti
cmd.exe/tftp.exe/ftp.exe/net.exe
Semua file ini ditransfer ke direktori lain, dan izin ketat diberikan ke direktori;
5. Mengatur kontrol akses jaringan;
6. Jika memungkinkan, konfigurasikan pemfilteran konten untuk HTTP untuk menyaring virus, skrip berbahaya, dll.;
7. Jika perlu, Anda dapat mempertimbangkan untuk memilih HTTPS, yang dapat mencegah banyak pemindaian alat injeksi. Ketika saya mengembangkan sendiri alat pendeteksi injeksi, saya mempertimbangkan untuk mendukung HTTPS, tetapi belum diterapkan.
Saya yakin Anda juga memperhatikan bahwa secara umum, program ini terutama mempertimbangkan masalah seperti izin dan pemfilteran parameter, terutama mencakup izin penjelajahan IIS dan izin panggilan basis data. Selain itu, konfigurasi keamanan database dan sistem operasi juga harus diperhatikan. Selain itu, saya ingin tahu apakah Anda akan menggunakan komponen yang dikembangkan oleh orang lain selama proses pengembangan, seperti pengunggahan gambar. Sudahkah Anda mempelajari keamanan komponen tersebut? Atau selama proses pengembangan, kebanyakan orang akan menggunakannya. kode yang dibuat yang disediakan di Internet dan di buku, seperti verifikasi login pengguna, dll., juga harus dipelajari.