不在顯示錯誤的盲注

盲注介紹

在這裏插入圖片描述
盲注就是比如id=1 if()
也就是加上if條件判斷true或者false
盲注和常規注入的區別就是返回值不同
常規是根據返回的信息進行猜測
盲注是指的是在不知道數據庫返回值的情況下對數據中的內容進行猜測
即在盲注的sql查詢中,服務器只會返回是,不是兩種回答,因此就給我們的注入帶來了麻煩

我們使用sqli的Less-8
id=8或者id=1時
都是顯示you are in
輸錯了也不會回顯,這就增加難度了
在這裏插入圖片描述
打開Less-8的index.php
在這裏插入圖片描述
只有正確時纔會返回結果
錯誤時就註釋掉了

基於時間的盲注

在這裏插入圖片描述
substr()截取字符後的某一部分
字符串就是數據庫的第一個字母
然後轉化爲ascii碼和115比較
相等了就停留三秒

接下來我們開始實驗
以less-9爲例
瀏覽器輸入id=1
然後查看源代碼–網絡就可以看所用時間
結果就是顯示you are in

接下來我們使用基於時間盲注
原sql語句爲id=’id’ limit 0,1
瀏覽器輸入id=1’ if(assic(substr(database(),1,1)=115,1,sleep(3))) --+
數字1表示執行次數
然後回車,你會發現時間比之前常規注入時間長了
結果就是出現you are in
所以可以盲注

我們來進行Less-10測試
id=1” if(assic(substr(database(),1,1)==115,1,sleep(3))) --+
此時是雙引號

基於布爾的盲注

在這裏插入圖片描述
我們已Less-8爲例
基於布爾型的單引號盲注
你可以查看8的index.php
發現是id=‘id’
所以採用以下
id=1’ and length(database())=10 --+
如果數據庫正確,就顯示you are in
錯誤什麼都不顯示

Sqlmap安全測試

以上比較複雜
人來做很複雜
不如讓機器來做
使用sqlmap來
在這裏插入圖片描述
如果不加那個tech速度會很慢
是使用所有技術來注入
加了之後就使用特定技術來注入

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章