本文給出4個函數,足夠你抵擋一切SQL注入漏洞!讀懂代碼,你就能融會貫通。
注意要對所有的request對象進行過濾:包括request.cookie, request.ServerVariables 等等容易被忽視的對象:
代碼如下:
function killn(byval s1) '過濾數值型參數
if not isnumeric(s1) then
killn=0
else
if s1<0 or s1>2147483647 then
killn=0
else
killn=clng(s1)
end if
end if
end function
function killc(byval s1) 過濾貨幣型參數
if not isnumeric(s1) then
killc=0
else
killc=formatnumber(s1,2,-1,0,0)
end if
end function
function killw(byval s1) '過濾字符型參數
if len(s1)=0 then
killw=
else
killw=trim(replace(s1,',))
end if
end function
function killbad(byval s1) 過濾所有危險字符,包括跨站腳本
If len(s1) = 0 then
killbad=
else
killbad = trim(replace(replace(replace(replace(replace(replace(replace(replace(s1,Chr(10), <br>), Chr(34), ), >, >), <, <), & , &),chr(39),'),chr(32), ),chr(13),))
end if
end function