日本免费全黄少妇一区二区三区-高清无码一区二区三区四区-欧美中文字幕日韩在线观看-国产福利诱惑在线网站-国产中文字幕一区在线-亚洲欧美精品日韩一区-久久国产精品国产精品国产-国产精久久久久久一区二区三区-欧美亚洲国产精品久久久久

一 網(wǎng)頁(yè)腳本攻擊防范全攻略( 二 )


<%=CHK(Username)%>
Username=CHK(replace(request(“username”),”’”,””))
使用Include把函數(shù)寫(xiě)在公有頁(yè)面上,這樣效率是最好的 。
等等,由于程序上過(guò)濾的不嚴(yán)密,使攻擊者既得不到什么可用的,但又使的他可以進(jìn)行搗亂的目的 。以目前很多站點(diǎn)的免費(fèi)服務(wù),或者是自身站點(diǎn)的程序上也是有過(guò)濾不嚴(yán)密的問(wèn)題 。
2. 危險(xiǎn)的腳本攻擊
這類(lèi)腳本攻擊已經(jīng)過(guò)度到可以竊取管理員或者是其他用戶(hù)信息的程度上了 。比如大家都知道的cookies竊取,利用腳本對(duì)客戶(hù)端進(jìn)行本地的寫(xiě)操作等等 。
3. Sql Injection 漏洞攻擊
可以說(shuō),這個(gè)攻擊方式是從動(dòng)網(wǎng)論壇和BBSXP開(kāi)始的 。利用SQL特殊字符過(guò)濾的不嚴(yán)密,而對(duì)數(shù)據(jù)庫(kù)進(jìn)行跨表查詢(xún)的攻擊 。比如:
http://127.0.0.1/forum/showuser.asp?id=999 and 1=1
http://127.0.0.1/forum/showuser.asp?id=999 and 1=2
http://127.0.0.1/forum/showuser.asp?id=999 and 0<>(select count(*) from admin)
http://127.0.0.1/forum/showuser.asp?id=999’; declare @a sysname set @a="xp_""cmdshell" exec @a "dir c:"---&aid=9
得到了管理員的密碼也就意味著已經(jīng)控制的整站,雖然不一定能得到主機(jī)的權(quán)限,但也為這一步做了很大的鋪墊 。類(lèi)似的SQL Injection攻擊的方式方法很多,對(duì)不同的文件過(guò)濾不嚴(yán)密所采取的查詢(xún)方式也不同 。所以說(shuō)想做好一個(gè)完整的字符過(guò)濾程序不下一凡功夫是不可能的 。
4. 遠(yuǎn)程注入攻擊
某站點(diǎn)的所謂的過(guò)濾只是在提交表格頁(yè)上進(jìn)行簡(jiǎn)單的JS過(guò)濾 。對(duì)于一般的用戶(hù)來(lái)說(shuō),你大可不必防范;對(duì)早有預(yù)謀的攻擊者來(lái)說(shuō),這樣的過(guò)濾似乎根本沒(méi)作用 。我們常說(shuō)的POST攻擊就是其中一例 。通過(guò)遠(yuǎn)程提交非法的信息以達(dá)到攻擊目的 。
通過(guò)上面的攻擊方法的介紹,我們大致的了解了攻擊者的攻擊途徑,下面我們就開(kāi)始重點(diǎn)的介紹,如何有效的防范腳本攻擊!
讓我們還是從最簡(jiǎn)單的開(kāi)始:
l 防范腳本攻擊
JS腳本 和HTML腳本攻擊的防范其實(shí)很簡(jiǎn)單:server.HTMLEncode(Str)完事 。當(dāng)然你還不要大叫,怎么可能?你讓我把全站類(lèi)似<%=uid%>都加過(guò)濾我還不累死?為了方便的過(guò)濾,我們只需要將HTML腳本和JS腳本中的幾個(gè)關(guān)鍵字符過(guò)濾掉就可以了:程序體(1)如下:
‘以下是過(guò)濾函數(shù)
<%
function CHK(fqyString)
fqyString = replace(fqyString, ">", ">")
fqyString = replace(fqyString, "<", "<")
fqyString = replace(fqyString, "&#", "&")
fqyString = Replace(fqyString, CHR(32), " ")
fqyString = Replace(fqyString, CHR(9), " ")
fqyString = Replace(fqyString, CHR(34), """)
fqyString = Replace(fqyString, CHR

推薦閱讀