Rumah > Artikel > pembangunan bahagian belakang > Perlindungan keselamatan PHP: mengukuhkan kawalan kebenaran direktori
Dalam pembangunan web, direktori merupakan bahagian penting dalam menyediakan sumber yang diperlukan oleh aplikasi web. Walau bagaimanapun, jika kebenaran akses direktori fail tidak betul, ia boleh menyebabkan masalah keselamatan Web dengan mudah. Sebagai contoh, pihak ketiga yang tidak dibenarkan boleh memuat naik fail berniat jahat ke pelayan anda, menyebabkan pelayan diserang. Oleh itu, semasa proses pembangunan aplikasi web, kawalan kebenaran direktori mesti diperkukuh untuk mengelakkan capaian haram dan muat naik fail berniat jahat.
Untuk mengukuhkan kawalan kebenaran direktori, kami boleh mengambil langkah berikut:
Dalam sistem Linux, anda boleh menggunakan arahan chmod untuk Kawalan kebenaran direktori. Perintah khusus adalah seperti berikut:
chmod 700 /var/www/html/uploads/
Maksud arahan di atas ialah hanya pemilik direktori (biasanya proses pelayan web) mempunyai akses, menulis dan kebenaran pelaksanaan ke direktori, dan orang lain tidak mempunyai akses kebenaran.
Sesetengah direktori digunakan untuk menyimpan fail skrip, seperti fail skrip PHP, yang boleh dilaksanakan oleh proses pelayan web. Jika proses pelayan web terjejas, direktori ini boleh digunakan untuk menyimpan dan melaksanakan skrip berniat jahat. Untuk mengelakkan perkara ini berlaku, kami boleh melumpuhkan pelaksanaan fail skrip dalam direktori melalui fail konfigurasi Apache. Kaedah khusus adalah seperti berikut:
Dalam fail konfigurasi Apache, cari kod berikut:
<Directory /var/www/html/> Options Indexes FollowSymLinks AllowOverride None Require all granted </Directory>
Ubah suai kepada:
<Directory /var/www/html/> Options Indexes FollowSymLinks AllowOverride None Require all granted AddHandler txt .txt AddHandler html .html AddHandler htm .htm AddHandler php .php .inc </Directory> <FilesMatch ".(php|inc)$"> Order Deny,Allow Deny from all </FilesMatch>
Dalam fail konfigurasi di atas, kami menambah beberapa jenis MIME yang membolehkan pelayan Apache menyediakan fail HTML, TXT dan PHP. Kemudian, dengan memadankan nama fail PHP dan INC dalam teg b5b7f795fbd764be2f6705fd2f78034b kami melumpuhkan pelaksanaan fail PHP dan INC dalam semua direktori.
Dalam sesetengah aplikasi web, pengguna boleh memuat naik gambar, dokumen dan fail lain. Walau bagaimanapun, fail yang dimuat naik ini mungkin mengandungi kod hasad, dan penyerang boleh mengeksploitasi kelemahan muat naik fail muatan untuk menghantar fail berniat jahat kepada pelayan. Untuk mengelakkan serangan, kami boleh meningkatkan keselamatan muat naik fail dengan:
Secara amnya, apabila membangunkan aplikasi web, mengukuhkan kawalan kebenaran direktori adalah cara penting untuk mempertahankan diri daripada serangan web. Dengan mengawal kebenaran akses direktori fail secara munasabah dan ketat, tingkah laku berniat jahat boleh dikurangkan dengan berkesan. Kawalan kebenaran direktori adalah prasyarat yang diperlukan untuk keselamatan Web, dan kedua-dua pengaturcara dan pengurus harus memberi perhatian kepadanya.
Atas ialah kandungan terperinci Perlindungan keselamatan PHP: mengukuhkan kawalan kebenaran direktori. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!