Sql盲注與普通注入的區別

2021-08-16 19:33:01 字數 1592 閱讀 5163

在學習sql注入的時候,好多同學都是不弄清楚原理,去瀏覽器上狂搜一下注入語句,就開始對老師給的靶機注入,雖然能注入成功,但是不清楚原理,對以後的學習和工作沒有多大的好處。現在我就講一下sql盲注與普通注入的區別!

首先,何為sql盲注?可能這個問題一下子就把你問蒙蔽了。

盲注就是在sql注入過程中,sql語句執行的選擇後,選擇的資料不能回顯到前端頁面。此時,我們需要利用一些方法進行判斷或者嘗試,這個過程稱之為盲注。

我們拿兩個靶機來講一下盲注與顯錯式注入的區別吧

首先是第乙個靶機,shop靶機

當我們看到id=485的時候,首先要想到的是這個可能是個注入點,接下來我們測試一下

當在該url後面加乙個'時出現沒有此商品

當在後面加 and 1=1 時

看到並沒有什麼錯誤,再輸入and 1=2時發現報錯了

這說明我們後面輸入的語句被伺服器執行了   而且是乙個數字型的注入

那我們現在開始盲注,判斷它目前使用的資料庫吧  在後面輸入

and exists(select count(*) from admin)

這句話的意思是判斷這個**有沒有這個表

我們可以看到返回的是true  因為頁面沒有發生變化

我們再輸入 and exists(select count(*) from hahaha)試試

發現返回的是false

盲注就是這樣  頁面只能返回true和false  true說明我們注入是正確

下面再看另乙個靶機  dvwa

我們提交 1 發現返回有兩列  我們再輸入 1'

就開始報錯了  這種為顯錯式注入  我們可以根據它報的錯誤走入正軌,這報的錯誤為『附近有語法錯誤  我們可以確定這是乙個字元型注入  我們可以直接把它的資料庫給返回出來  如輸入 1' union select 1, database()#

但是盲注就不能把資料庫給返回出來  我們只能一點一點的猜測

sql注入與盲注

實驗環境要求 1 安裝win7或win10的筆記本或pc電腦一台,硬碟100gb,記憶體8gb 2 安裝vmware workstation 14以上 總體目標 基於centos7搭建dvwa web服務靶機,使用主機上的瀏覽器和kali虛擬機器作為攻擊機。使用kali中的burpsuite和主機上...

sql注入 盲注

一,盲注介紹 所謂盲注就是在伺服器沒有錯誤回顯的時候完成注入攻擊。盲注分為布林盲注和時間盲注 布林盲注 boolean 根據注入資訊返回true or fales 沒有任何報錯資訊 時間盲注 介面返回值ture 無論輸入任何值,返回的情況都是正常的來處。加入特定的時間函式,通過檢視web頁面返回的時...

sql注入 盲注

一,盲注介紹 所謂盲注就是在伺服器沒有錯誤回顯的時候完成注入攻擊。盲注分為布林盲注和時間盲注 布林盲注 boolean 根據注入資訊返回true or fales 沒有任何報錯資訊 時間盲注 介面返回值ture 無論輸入任何值,返回的情況都是正常的來處。加入特定的時間函式,通過檢視web頁面返回的時...