sql注入 學習之路

2021-10-02 19:47:58 字數 1458 閱讀 5814

因為之前進行了sql注入的學習,但是對於注入點的查詢和判斷一直是一知半解,所以這次將sql注入點的查詢判斷方法和原理進行一下總結。

first:我們要先判斷是否有注入點。

通過在引數後面加入單引號。

?id=1',如果頁面出現錯誤,說明存在注入點。

原理:無論字元型和數字型都會因為單引號個數不匹配而出現錯誤。

ps:頁面正確,也可能是原始碼把單引號過濾了。

second:然後判斷注入型別。

數字型判斷:

1:輸入and 1=1,若頁面返回正常,進行下一步。

2:輸入and 1=2, 若頁面返回錯誤,說明sql注入為數字型。

原理:當進行第一步時,後台sql語句判斷為:

id=x and 1=1

語句正確,邏輯為真,所以頁面返回正常。

當進行第二步時,後台sql語句判斷為:

id=x and 1=2

語句正常,邏輯為假,所以頁面返回錯誤。

所以判斷為數字型判斷。

假設sql注入為字元型——

第一步:id='x and 1=1'

第二步:id='x and 1=2'

sql語句把語句都轉換成了字串,所以頁面都返回錯誤。

字元型判斷

1:輸入id=x' and '1' ='1,若頁面返回正常,進行下一步。

2:輸入id=x' and '1'='2,若頁面返回錯誤,說明sql注入為字元型。

原理:當進行第一步時,後台sql語句判斷為:

id='x' and '1'='2'

語句正確,邏輯為真,所以頁面返回正常。

當進行第二步時,後台sql語句判斷為:

id='x' and '1'='2'

語句正確,邏輯為假,頁面返回錯誤。

在判斷同時要注意,後台原始碼可能會對閉合方式進行轉換,例如雙引號,單引號括號,雙引號括號,我們還是要多進行嘗試。

尋找後台:在sql注入查詢到敏感資料後,可通過谷歌語法或者御劍等工具掃瞄後台。。。

關於sql注入點的學習還有其他方式方法,希望能夠得到大佬的指點。

繞過方法總結:

謝謝大佬。

當concat函式被過濾的時候,我們可以通過limit函式來依次查詢。

如果表名,庫名被檢測了,我們可以通過十六進製制等方式編碼來繞過。

關於sql注入的學習還有很多東西,革命尚未成功,同志仍需努力。

SQL注入學習

通常情況下,可能存在 sql 注入漏洞的 url 是類似這種形式 對 sql 注入的判斷,主要有兩個方面 可能存在 sql 注入攻擊的 asp php jsp 動態網頁中,乙個動態網頁中可能只有乙個引數,有時可能有多個引數。有時是整型引數,有時是字串型引數,不能一概而論。總之只要是帶有引數的 動態網...

SQL注入學習

2018 02 03 grant 授權語句 revoke 取消許可權 get 方式url的後面可以跟上?query語句 post方式可以上傳檔案或表單 cookie 需要關注的注入點 構造語句 admin or 1 1 回顯 使用union聯合語句 正常可執行 不正常會報錯 不回顯的叫盲注 whal...

關於SQL注入學習

知道sql injection 但是平時懶的去做這方面的東西,以後一定還得注意 net的專案看來要用儲存過程和分層方式來寫了 sql injection 講解 方法 網上蒐集 1.帶引數的的儲存過程來完成使用者驗證的過程 2.使用者通過 提交過來的變數引數進行檢查的 發現客戶端提交的引數中有 exe...