1. 程式人生 > >用於測試2 模板修改

用於測試2 模板修改

通過sqli-labs學習sql注入——基礎挑戰之less1

 

之前只是簡單瞭解過SQL注入,只僅僅侷限於會使用sqlmap等注入工具,但是手工注入方面就懂的很少了,所以準備通過sqli-lab這個注入平臺的學習好好研究下常見的手工注入方面的知識

 

環境準備:

Phpstudy  (PHP+Apache+Mysql)

Sql-lab

 

首先了解下基礎知識:

URL編碼:

         因為在瀏覽器中,當我們訪問一個網址的時候,瀏覽器會自動將使用者輸入的網址進行URL編碼,因為Http協議中引數的傳輸是"key=value"這種鍵值對形式的,所以會將“=”,“#”等字常見的字元進行URL編碼。等號的URL編碼為%23,空格是%20,單引號是%27, 井號是%23,雙引號是%22等,(詳情可參考

http://www.w3school.com.cn/tags/html_ref_urlencode.html)

 

因為涉及到Mysql資料庫,在插入資料庫語句時會用到Mysql資料庫的註釋符,MySQL支援三種註釋方式:

1.從‘#'字元從行尾。

2.從‘-- '序列到行尾。請注意‘-- '(雙破折號)註釋風格要求第2個破折號後面至少跟一個空格符(例如空格、tab、換行符(用%20或者+表示空格)等等)。

3.從/*序列到後面的*/序列。結束序列不一定在同一行中,因此該語法允許註釋跨越多行。

 

瞭解SQL手工注入的基本流程:

1、首先判斷是什麼型別的注入,有沒過濾了關鍵字,能不能通過加入註釋符繞過

2、接著獲取當前資料庫使用者,版本,當前連線的資料庫等資訊。

3、然後一般是獲取使用者賬戶密碼的那個資料庫表的資訊

4、接著獲取列資訊

5、最後就獲取資料了