Serangan peretas yang sering terjadi membuktikan bahwa keamanan web tetap menjadi masalah terpenting bagi siapa pun yang berbisnis di Internet. Server paling sering menjadi target serangan ini karena informasi yang mereka simpan. Itulah mengapa perlu untuk memastikan perlindungan server yang andal.
Mengamankan PHP di Apache
Mulai protokol "phpinfo ()" dan periksa baris dengan perintah "open_basedir". Dengan perintah ini Anda dapat menentukan direktori dasar untuk semua pengguna. Setelah menetapkan nilai ini, mereka tidak akan lagi dapat membuka file di luar folder root ini atau subdirektorinya seperti "C: / Windows".
Jika Anda memiliki direktori struktural lain, tentukan sebagai direktori dasar dengan perintah "www_root". Namun, satu pengguna juga dapat membaca dan memodifikasi file pengguna lain. Ini harus dicegah.
Sayangnya, tidak ada opsi dalam file php.ini untuk mencegah satu pengguna mengakses data orang lain.
Namun ada satu cara yang menarik jika PHP dijalankan di Apache. Di phpinfo() Anda akan menemukan dua kolom: Nilai Utama dan Nilai Lokal. Yang pertama adalah nilai di "php.ini". Yang kedua adalah nilai yang ditentukan saat server sedang berjalan.
Jika nilai utama kecil dalam hal numerik, maka dapat diubah dalam skrip menggunakan perintah "ini_set ()". Ini tidak berlaku untuk "open_basedir" karena nilai ini sangat penting untuk keamanan dan hanya dapat diubah oleh administrator.
Di Apache, file konfigurasi "httpd.conf" dapat ditentukan dalam manual di bawah nilai lokal "open_basedir".
Pengaturan PHP lainnya
Dengan menyetel "disable_functions" di file "php.ini", Anda harus menonaktifkan fungsi yang berpotensi berbahaya.
Pikirkan baik-baik tentang setiap tindakan yang Anda ambil. Menonaktifkan fungsi berarti beberapa skrip akan berhenti bekerja.
Beberapa fitur sangat berbahaya dan biasanya tidak diperlukan untuk pembuatan skrip. Lainnya mungkin diperlukan untuk tujuan tertentu. Oleh karena itu, tidak mudah menonaktifkan semua fungsi yang mungkin berbahaya, tetapi juga mempertimbangkan keputusan Anda dengan cermat.
Jangan percaya bahwa fungsi "safe_mode = On" saja sudah cukup. Ini mungkin menonaktifkan beberapa fitur yang berguna dan mungkin tidak menyelesaikan masalah keamanan yang dijelaskan di atas. Mode aman tidak digunakan lagi di PHP 5.3.0 dan dihapus di PHP 6.0.0.
Masalah perlindungan
Ada beberapa kesalahan yang dapat dilakukan pengembang web dan membuat situs web tidak aman.
Misalnya, jika Anda membuat blog dan mengizinkan pengguna mengunggah gambar, ini bisa menjadi bahaya serius ketika kode ditulis oleh pemula. Ada beberapa kesalahan yang dapat dilakukan oleh seorang programmer pada halaman login, dll. Salah satu yang paling umum adalah tidak adanya larangan mengunduh algoritma berbahaya.
Poin penting adalah bahwa satu situs yang tidak aman di hosting publik merupakan ancaman bagi seluruh server. Juga menginstal proyek Open Source seperti PHP-Nuke bisa berisiko. Beberapa kerentanan dalam proyek serupa telah ditemukan.