Tulis program anti-injeksi ASP umum untuk memilih blog dari ph4studio
Tulis program anti-injeksi ASP yang umum untuk kata kunci
Sumber
Injeksi SQL dimainkan oleh para peretas yang disebut di tingkat novis. Saya menemukan bahwa sebagian besar intrusi peretas sekarang didasarkan pada injeksi SQL.
, Sayangnya, siapa yang membuat ini mudah untuk memulai? Oke, saya tidak akan berbicara omong kosong lagi, sekarang saya mulai mengatakan jika saya menulis program anti-injeksi SQL umum
Permintaan HTTP umum tidak lebih dari mendapatkan dan memposting, jadi selama kami memfilter semua posting atau mendapatkan informasi parameter permintaan dalam file
Karakter ilegal sudah cukup, sehingga kita dapat menggunakan filter informasi permintaan HTTP untuk menentukan apakah itu tunduk pada serangan injeksi SQL.
IIS diteruskan ke ASP.dll adalah dalam bentuk string, ketika diteruskan ke data request.querystring,
ASP Parser akan menganalisis informasi permintaan.QueryString, dan kemudian membagi data di setiap array sesuai dengan "&"
Jadi dicegat sebagai berikut
Pertama, kami mendefinisikan bahwa permintaan tersebut tidak dapat berisi karakter berikut
'| dan | Exec | Sisipkan | Pilih | Hapus | Pembaruan | Hitung |*|%| Chr | Mid | Master | Truncate | Char | Deklarasi
Setiap karakter dipisahkan oleh "|", dan kemudian kami menilai permintaan.QueryString
Kode spesifiknya adalah sebagai berikut
DIMSQL_INJDATA
Sql_injData = "'| dan | exec | masukkan | pilih | hapus | pembaruan | hitung |*|%| chr | mid | master | truncate | char | declare"
Sql_inj = split (sql_injdata, "|")
IfRequest.QueryString <> "" Lalu
Foreachsql_getinrequest.querystring
Forsql_data = 0toubound (sql_inj)
ifinstr (request.queryString (sql_get), sql_inj (sql_data))> 0then
Response.write "<scriptLanguage = ****> alert ('Tianxia Movie Alliance SQL Universal Anti-Injection System Prompts ↓ nnplease tidak termasuk karakter ilegal dalam parameter dan mencoba menyuntikkan!'); History.back (-1) </script>"
Respons.end
endif
Berikutnya
Berikutnya
Endif
Dengan cara ini, kami menerapkan intersepsi dari injeksi permintaan GET, tetapi kami juga harus menyaring permintaan pos, jadi kami harus terus mempertimbangkan permintaan. Bentuk, yang juga ada dalam bentuk array, kami hanya perlu masuk ke loop untuk membuat penilaian lagi. Kodenya adalah sebagai berikut
IfRequest.Form <> "" Lalu
Foreachsql_postinrequest.form
Forsql_data = 0toubound (sql_inj)
ifinstr (request.Form (sql_post), sql_inj (sql_data))> 0then
Response.write "<scriptLanguage = ****> alert ('Tianxia Movie Alliance SQL Universal Anti-Injeksi Sistem Prompts ↓ nnplease tidak termasuk karakter ilegal dalam parameter dan mencoba menyuntikkan! Nnhttp: //www.521movie.com'); history.back (-1) <//////script.1)
Respons.end
endif
Berikutnya
Berikutnya
endif
OK, pekerjaan sudah selesai, kami telah menerapkan intersepsi informasi dari permintaan GET dan POST. Anda hanya perlu merujuk halaman ini sebelum membuka file database seperti Conn.asp. Terus kembangkan program Anda dengan percaya diri, tidak perlu mempertimbangkan apakah itu masih akan diserang oleh SQL Injection. Bukan?