Fungsi Permintaan Aman (ParaName,ParaType)
'--- Masukkan parameter---
'ParaName: nama parameter - tipe karakter
'ParaType: Tipe parameter - tipe numerik (1 menunjukkan bahwa parameter di atas adalah angka, 0 menunjukkan bahwa parameter di atas adalah karakter)
Redupkan ParaValue
ParaValue=Permintaan(ParaNama)
Jika ParaType=1 maka
Jika bukan isNumeric(ParaValue) maka
Parameter Response.write & ParaName & harus berupa numerik!
Respon.akhir
Berakhir jika
Kalau tidak
ParaValue=ganti(ParaValue, ', ' ')
Berakhir jika
Permintaan Aman=ParaValue
Fungsi akhir
Gunakan SafeRequest(ParaName,ParaType) alih-alih request.form() dan request..querystring()
******************************************************* * **************************************************** ** *****
--------------------------------------------------- --------------------------------------------------- ---------------------------------------
******************************************************* * **************************************************** ** *****
<%
dimsql_injdata
sql_injdata= '|dan|exec|masukkan|pilih|hapus|perbarui|hitungan|*|%|chr|mid|master|truncate|char|deklarasikan
sql_injHint=ganti(sql_injdata,|, )
sql_injHint=ganti(sql_injHint, ', ')
sql_inj=berpisah(sql_injdata,|)
jika request.querystring<> maka
untuk setiap getData di request.querystring
untuk i=0 hingga ubound(sql_inj)
jika instr(lcase(request.querystring(getData)),sql_inj(i))>0 maka
petunjuk=alert( 'Untuk memastikan keamanan informasi pengguna, mohon jangan menggunakan karakter injeksi ilegal. Karakter berikut ini ilegal: @sql_injHint@ ');
petunjuk=ganti(petunjuk,@sql_injHint@,sql_injHint)
respon.tulis <script bahasa=javascript>
respon.tulis petunjuk
respon.tulis riwayat.kembali()
respon.tulis </script>
respon.akhir
berakhir jika
Berikutnya
Berikutnya
berakhir jika
jika request.form<> lalu
untuk setiap getData di request.querystring
untuk i=0 hingga ubound(sql_inj)
jika instr(lcase(request.form(getData)),sql_inj(i))>0 maka
petunjuk=alert( 'Untuk memastikan keamanan informasi pengguna, mohon jangan menggunakan karakter injeksi ilegal. Karakter berikut ini ilegal: @sql_injHint@ ');
petunjuk=ganti(petunjuk,@sql_injHint@,sql_injHint)
respon.tulis <script bahasa=javascript>
respon.tulis petunjuk
respon.tulis riwayat.kembali()
respon.tulis </script>
respon.akhir
berakhir jika
Berikutnya
Berikutnya
berakhir jika
%>Bentuk kode ini menjadi sebuah file (seperti: defanj.asp), dan tambahkan semua file yang perlu digunakan dalam database ke header <!--#include file=defanj.asp-->