我目前在學(xué)ASP(注意:不是ASP.NET)和JAVA。ASP只有一年不到的經(jīng)驗,所以如果文中有什么不妥之處請見諒,并請留言告知,謝謝了^-^.
1.在遞交表單的時候可以用checkStr來check一下,這樣可以過濾SQL非法字符。
函數(shù)定義:
Rem 過濾SQL非法字符
function checkStr(str)
if isnull(str) then
checkStr = ""
exit function
end if
checkStr=replace(str,"'","''")
end function 使用方法:
check=checkStr(request.form("check")) 2.過濾關(guān)鍵字。一般打開一個信息頁面的時候都會出現(xiàn)類似于shownews.asp?id=2的地址,如果shownews.asp存在漏洞,很容易就會被注入,但是如果用HTMLEncode在shownews.asp頁面中過濾一下關(guān)鍵字id,你就會發(fā)現(xiàn)掃描軟件根本找不到注入點.
函數(shù)定義:
Rem 過濾HTML代碼
function HTMLEncode(fString)
if not isnull(fString) then
fString = replace(fString, ">", ">")
fString = replace(fString, "<", "<")

fString = Replace(fString, CHR(32), " ")
fString = Replace(fString, CHR(9), " ")
fString = Replace(fString, CHR(34), """)
fString = Replace(fString, CHR(39), "'")
fString = Replace(fString, CHR(13), "<BR>")
fString = Replace(fString, CHR(10) & CHR(10), "</P><P> ")
fString = Replace(fString, CHR(10), "<BR> ")

HTMLEncode = fString
else
HTMLEncode=fstring
end if
end function 使用方法:
id=HTMLEncode(id) 3.如果你有服務(wù)器管理權(quán),最好把錯誤返回頁面之相同一個頁面,這樣可以躲避很多軟件的掃描。
4.如果你還是害怕數(shù)據(jù)庫信息會被泄露,你可以構(gòu)造難以想到的表名比如:dbajhkhkjsdfl等等,掃面軟件掃面的表名是固定的,而人就更想不到了.
以上就是我這一年來對ASP防注的經(jīng)驗,一般來說如果你的功夫不深寫代碼都會出現(xiàn)注入漏洞,我想以上方法會對你有很大的幫助,如果你有什么好的方法,大家可以起交流^-^,QQ17477260 msn:tigertian17@hotmail.com
---------------------------------------------------------
專注移動開發(fā)
Android, Windows Mobile, iPhone, J2ME, BlackBerry, Symbian
posted on 2005-07-06 12:03
TiGERTiAN 閱讀(974)
評論(1) 編輯 收藏 所屬分類:
VB/ASP