聽(tīng)到兩個(gè)菜雞在爭(zhēng)論,笑死我了,哈哈哈哈哈......
情況是這樣,有次組里新來(lái)了幾個(gè)實(shí)習(xí)生,然后呢不知道為什么吵了起來(lái)。
過(guò)了會(huì)才搞明白,在爭(zhēng)論滲透注入這個(gè)事情,其中一個(gè)看家另外一個(gè)在研究手工注入,然后說(shuō)了句SB,另外一個(gè)人肯定不樂(lè)意了啊,最后就吵了起來(lái)。(起名小王和小李)
小王:有現(xiàn)成的工具不用,瞎研究 手工注入干什么?
小李:我承認(rèn)工具是很強(qiáng),把網(wǎng)站鏈接扔進(jìn)去一下子就可以出來(lái),但是你想過(guò)背后發(fā)生了什么么?剛開(kāi)始用工具是很快,但是不夠深入啊!
小王:浪費(fèi)時(shí)間
我看這不是個(gè)事啊,還是去緩和下吧,然后我就開(kāi)始了 我的表演!
一、從原理說(shuō)起
我先簡(jiǎn)單說(shuō)一句,你倆分析這句話對(duì)不對(duì)?
“Sql 注入攻擊是通過(guò)將惡意的 Sql 查詢或添加語(yǔ)句插入到應(yīng)用的輸入?yún)?shù)中,再在后臺(tái) Sql 服務(wù)器上解析執(zhí)行進(jìn)行的攻擊
本質(zhì)上就是對(duì)數(shù)據(jù)庫(kù)進(jìn)行相關(guān)的讀寫操作。
理所當(dāng)然,這句話肯定沒(méi)問(wèn)題,一頓小雞啄米般的點(diǎn)頭。
那么我們回到剛才你倆爭(zhēng)論的點(diǎn),一個(gè)說(shuō)工具為王,一個(gè)說(shuō)原理為王。
這句話我認(rèn)為對(duì),也不對(duì)。
本質(zhì)上工具都是代碼構(gòu)成,大家在大學(xué)里應(yīng)該都學(xué)過(guò)一門課程,c++,后面還會(huì)使用visual studio自己編寫程序并且生成exe文件。
其實(shí)不過(guò)是一些參數(shù)的傳遞應(yīng)用,工具只是省略了一些步驟,這些步驟在應(yīng)用工具時(shí)候?qū)υ蹅兪峭该鞯模止ぷ⑷胫徊贿^(guò)是沒(méi)有透明,所以你倆沒(méi)必要太過(guò)爭(zhēng)論應(yīng)用方面的事情。
你們不管怎么做都已經(jīng)在應(yīng)用了原理,只不過(guò)有的透明,有的不透明而已。
工具只是很基礎(chǔ)的,到了后面,你會(huì)發(fā)現(xiàn)更多的是從代碼層面,也就是原理需要了解的夠多,這樣才能得心應(yīng)手。
如果你不知道原理就很尷尬了,現(xiàn)在的工具一般都需要首先找到注入點(diǎn)才可以放在工具里面應(yīng)用,最常見(jiàn)的做法就是 or1=11=2)進(jìn)行簡(jiǎn)單的判斷,當(dāng)然還有更深入的,其實(shí)都是和數(shù)據(jù)庫(kù)相關(guān)。
說(shuō)的有點(diǎn)多,還是給你們做個(gè)實(shí)驗(yàn)看看。
這次我就不使用網(wǎng)站了,使用一個(gè)DVWA環(huán)境直接驗(yàn)證。(省的違法,這個(gè)簡(jiǎn)單直接)
二、小實(shí)驗(yàn)——手工注入
、環(huán)境
搭建不多說(shuō),直接看結(jié)果
上面這個(gè)看左側(cè),直接可以模擬多種漏洞,廢話不多說(shuō),直接進(jìn)入主題。
、輸入值查詢
數(shù)據(jù)查詢成功,繼續(xù)測(cè)試:輸入1′and ’1 ‘=’2,查詢失敗,返回為空
我天,莫名開(kāi)始激動(dòng)了,兩次結(jié)果不同,可能存在注入點(diǎn),繼續(xù)測(cè)試,驗(yàn)證結(jié)果。
輸入1′or ’1234 ‘=’1234,查詢成功,說(shuō)明存在注入。
、原理分析
上面只是手工注入的一小部分內(nèi)容,這次不繼續(xù)深入,現(xiàn)在我們看下原理到底是怎么回事呢?
這次我要高大點(diǎn),直接讓你們看源碼,結(jié)合源碼來(lái)說(shuō),注入的一瞬間到底發(fā)生了什么事情。
把剛剛注入成功的語(yǔ)句拼接進(jìn)去看看。1′or ’1234 ‘=’1234
原理其實(shí)很簡(jiǎn)單,就是通過(guò)一個(gè)條件語(yǔ)句判斷,如果where后面的條件語(yǔ)句為真,就可以進(jìn)行查詢,如果條件判斷為假,就為錯(cuò),不返回任何結(jié)果。
三、總結(jié)
其實(shí)這個(gè)裝逼我很滿意,講了這么簡(jiǎn)單的一點(diǎn)東西,就收獲了兩個(gè)崇拜,哈哈!
玩笑話,原理說(shuō)白了都是很簡(jiǎn)單的,不管你工具怎么變換,都是從這個(gè)原理出發(fā)的。
手工注入還有哪些內(nèi)容呢?shell怎么獲取到呢?
未完待續(xù),下期繼續(xù)更新。