Rumah >pembangunan bahagian belakang >tutorial php >Adakah `mysql_real_escape_string()` dan `mysql_escape_string()` Cukup untuk Melindungi Aplikasi Anda?

Adakah `mysql_real_escape_string()` dan `mysql_escape_string()` Cukup untuk Melindungi Aplikasi Anda?

Barbara Streisand
Barbara Streisandasal
2024-11-01 06:29:31595semak imbas

Are `mysql_real_escape_string()` and `mysql_escape_string()` Enough to Secure Your Application?

Adakah mysql_real_escape_string() dan mysql_escape_string() mencukupi untuk keselamatan apl?

Adakah mysql_real_escape_string() mencukupi untuk perlindungan suntikan SQL?

Satu had mysql_real_escape_string() ialah ia hanya melarikan diri dari data berubah-ubah. Ia tidak berkesan terhadap serangan yang menyasarkan nama jadual, nama lajur atau LIMIT medan. Sebagai contoh, penyerang masih boleh menyuntik SQL berniat jahat ke dalam pertanyaan dengan menggunakan operator LIKE untuk mencari nilai seperti '%%', yang akan mengembalikan semua rekod.

Selain itu, mysql_real_escape_string() hanya berkesan terhadap serangan suntikan SQL yang diketahui. Ia tidak dapat melindungi daripada serangan baharu atau tidak diketahui yang mengeksploitasi kelemahan dalam pelayan pangkalan data.

Pernyataan yang disediakan sebagai pertahanan proaktif

Daripada bergantung pada langkah reaktif seperti melarikan diri, adalah disyorkan untuk menggunakan pernyataan yang disediakan . Penyata yang disediakan ialah penyata SQL yang telah disusun terlebih dahulu oleh pelayan pangkalan data sebelum ia dilaksanakan. Ini menghalang SQL berniat jahat daripada disuntik ke dalam pertanyaan, kerana pelayan hanya melaksanakan pernyataan yang telah dikompilasi.

Pernyataan yang disediakan ialah pertahanan proaktif terhadap suntikan SQL dan serangan lain, kerana ia direka untuk mengendalikan SQL dalam cara selamat. Mereka kurang terdedah kepada kelemahan dan memberikan tahap keselamatan yang lebih tinggi daripada melarikan diri.

Atas ialah kandungan terperinci Adakah `mysql_real_escape_string()` dan `mysql_escape_string()` Cukup untuk Melindungi Aplikasi Anda?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn