網(wǎng)管員日記:網(wǎng)站SQL注入防御實(shí)戰(zhàn) |
發(fā)布時間: 2012/8/11 17:31:45 |
SQL注入作為直接威脅web業(yè)務(wù)的最嚴(yán)重攻擊行為,已經(jīng)被大多數(shù)的網(wǎng)站管理員所了解,這種通過HTTP標(biāo)準(zhǔn)端口,利用網(wǎng)頁編碼不嚴(yán)謹(jǐn),提交精心構(gòu)造的代碼實(shí)現(xiàn)對數(shù)據(jù)庫非授權(quán)訪問的攻擊方法,已經(jīng)被越來越多的scriptguy(腳本小子)成功掌握并廣泛實(shí)踐。沒錯,他們可能并不知道SQL注入的原理,不知道ASP,不知道PHP,但他們有工具,全自動的,完善的,高效率的工具,這些工具使得任何一個有簡單網(wǎng)絡(luò)知識的中學(xué)學(xué)生可以很容易的拿到某個政府網(wǎng)站的最高管理員權(quán)限,而且做這些事情并不會比你在周六的中午下樓去買一聽可樂要更困難。
而隨著互聯(lián)網(wǎng)黑色產(chǎn)業(yè)鏈的浮出水面,駭客們發(fā)現(xiàn)攻擊網(wǎng)站不僅僅可以用作向朋友炫耀的資本,還可以作為購買游戲點(diǎn)卡或者是數(shù)碼相機(jī)的資金來源:在被攻擊的網(wǎng)站嵌入腳本木馬,可以輕易盜竊那些訪問了受攻擊網(wǎng)站,但個人PC安全防護(hù)措施不全面用戶的私密信息,比如游戲賬號密碼,或者是銀行賬號密碼。 經(jīng)常使用google的用戶一定對這段話不陌生“該網(wǎng)站可能含有惡意軟件,有可能會危害您的電腦”,這意味著這個網(wǎng)站也許已經(jīng)遭遇掛馬黑手,成為駭客們的眾多取款點(diǎn)之一。本文就一例真實(shí)案例,來介紹一下網(wǎng)站的安全防護(hù)。 某市房地產(chǎn)網(wǎng)站的管理員小李剛上班就被叫到領(lǐng)導(dǎo)辦公室去了,因?yàn)榫W(wǎng)站帶上了google小尾巴:“該網(wǎng)站可能含有惡意軟件,有可能會危害您的電腦”,購房者看到這一提示信息,紛紛給該市房產(chǎn)管理局打電話,于是就有了上面的一幕;氐阶簧系男±钜换I莫展:網(wǎng)站服務(wù)器已經(jīng)全盤殺毒好幾次了,沒有發(fā)現(xiàn)病毒存在的痕跡,看來只能找專業(yè)安全廠商解決了。小李選擇的是網(wǎng)絡(luò)安全公司啟明星辰,在向啟明星辰公司提交web日志的第二天,小李就收到了回信,從日志的分析結(jié)果中,可以清楚的看到駭客的攻擊走向:這是一次非常典型的SQL注入攻擊,首先使用dEcLaRe建立游標(biāo),遍歷數(shù)據(jù)庫中所有允許寫入字符串的相關(guān)字段,并通過執(zhí)行exec操作,使用update語句替換了網(wǎng)站頁面的正常文件,插入了如下一段十六進(jìn)制字符:
經(jīng)過解密,可以得到如下字符串
經(jīng)過一天的奮力工作,網(wǎng)頁中所有的小尾巴都清理干凈了,在啟明星辰安全工程師的建議下,小李還向StopBadware.org 申請了重新的索引,并向google提交了審核申請。做完了這些之后,小李又一次陷入了困擾:如何防范網(wǎng)站再次遭受SQL注入攻擊呢?網(wǎng)絡(luò)上提供了一些代碼修改級的防御方法,可是需要對每一個頁面都做仔細(xì)的檢查,看著自己所負(fù)責(zé)網(wǎng)站的10000余個頁面,小李只能是苦笑,聯(lián)想起2007年夏天那次微軟英國網(wǎng)站被SQL注入的案例,小李在內(nèi)心否認(rèn)了徹底檢查一遍頁面代碼的做法。關(guān)鍵時刻,又是啟明星辰的安全工程師提出了建議:部署天清入侵防御產(chǎn)品,利用天清IPS的基于注入攻擊手法的檢測原理,可以對各種SQL注入攻擊的變種進(jìn)行防御。和傳統(tǒng)的SQL注入防御方法不一樣的是,天清入侵防御產(chǎn)品可以獨(dú)立部署,不需要對被保護(hù)的web系統(tǒng)做任何修改,而且和那些基于特征的檢測方法不一樣的是,天清IPS采用的VSID算法關(guān)注的是攻擊手法而非攻擊代碼,其檢測準(zhǔn)確率有很大改善。 在部署了入侵防御產(chǎn)品的當(dāng)天晚上,小李就在入侵防御產(chǎn)品的控制中心看到了發(fā)現(xiàn)了SQL注入攻擊并被阻斷的報警信息,而網(wǎng)站安然無恙。 友情提示:對于防御SQL注入攻擊,檢查網(wǎng)頁代碼是必要的,駭客獲得網(wǎng)站權(quán)限,并不僅僅為了炫耀,可能還會有更骯臟的目的;其次,你需要做的事是挽回名譽(yù)損失,畢竟掛上google小尾巴不是件光榮的事;最后,你絕對不能忘記的事還有修補(bǔ)漏洞,在沒有“打掃”干凈你的系統(tǒng)前,駭客進(jìn)出你的網(wǎng)絡(luò)將會像喝下午茶一樣簡單,你可以選擇修改源代碼來過濾關(guān)鍵字(記住不要矯枉過正,筆者就見過不允許用戶名叫select/and等SQL關(guān)鍵字的網(wǎng)站),或者是你也可以選擇使用專業(yè)的IPS產(chǎn)品。 本文出自:億恩科技【mszdt.com】 服務(wù)器租用/服務(wù)器托管中國五強(qiáng)!虛擬主機(jī)域名注冊頂級提供商!15年品質(zhì)保障!--億恩科技[ENKJ.COM] |