sql注入学习——时间盲注
前言:之前通過(guò)前九關(guān)學(xué)習(xí)到了回顯注入、報(bào)錯(cuò)注入、布爾盲注等一些方法,這次就來(lái)詳細(xì)的學(xué)習(xí)時(shí)間盲注。
在上一篇博客中,了解了布爾盲注,其實(shí)布爾盲注和時(shí)間盲注大致相同,注入原理是一致的,區(qū)別就是一個(gè)還是有回顯的,一個(gè)徹底沒(méi)有回顯,通過(guò)構(gòu)造語(yǔ)句,通過(guò)頁(yè)面響應(yīng)的時(shí)長(zhǎng),來(lái)判斷信息,這就是時(shí)間盲注。
先來(lái)學(xué)習(xí)一下時(shí)間盲注所需要的函數(shù)
sleep()/延遲函數(shù) if(condition,true,false)/若條件為真 返回true,若條件為假 返回false substring("string",strart,length)主要的也就是這幾個(gè)了,下面就通過(guò)sqli-labs第十關(guān)來(lái)練習(xí)時(shí)間盲注
猜測(cè)數(shù)據(jù)庫(kù)名長(zhǎng)度
payload:
這里執(zhí)行失敗的話(huà)將睡十秒,能更快的判斷,當(dāng)然也可以將sleep()函數(shù),放在執(zhí)行成功的位置。
根據(jù)瀏覽器的反應(yīng)來(lái)判斷出數(shù)據(jù)庫(kù)名長(zhǎng)度(如果是手動(dòng)注入的話(huà)切記網(wǎng)速得好,要不然就好玩了。。。)
爆出數(shù)據(jù)庫(kù)名
payload:
根據(jù)瀏覽器的反應(yīng),來(lái)猜測(cè)出數(shù)據(jù)庫(kù)名,其實(shí)時(shí)間注入就是比布爾盲注多了一個(gè)if函數(shù),sleep()函數(shù)就相當(dāng)于布爾盲注中的true或false,其他語(yǔ)句大致都相同。
爆表名
payload:
同樣也是觀察瀏覽器反應(yīng)時(shí)間,如果沒(méi)有睡10秒則表名條件正確,繼續(xù)嘗試
爆列名
payload:
爆值
payload:
可以看出其實(shí)時(shí)間盲注和布爾盲注語(yǔ)句基本相同,只不過(guò)是時(shí)間盲注通過(guò)if語(yǔ)句來(lái)執(zhí)行sleep函數(shù),從而判斷。如果理解了布爾盲注,時(shí)間盲注也很好理解。
但還是最好寫(xiě)一下腳本,手工注入效率低且容易出錯(cuò)。這次就先學(xué)習(xí)到這里,了解了時(shí)間盲注,等到腳本能力提高了,自己寫(xiě)出一個(gè)腳本跑一下。
總結(jié)
以上是生活随笔為你收集整理的sql注入学习——时间盲注的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: sql注入学习——布尔盲注
- 下一篇: python学习(字典、用户输入和whi