目錄
- 參數類型
- 明確請求方法
- 1.GET請求
- 2.POST請求
- 3.COOKIE注入
- 4.http頭注入
- 總結
參數類型
這里說的參數是源碼中存在注入的地方。
其中參數類型有:數字、字符、搜索、json等。
其中sql語句干擾符號有:',",%,),}等,過濾首先考慮閉合這些符號,再進行注入測試。
例如php中的代碼:
$name = $_GET['x']
$sql = "select * from user where name='$name'";
請求時:
http://www.xxx.com/x.php?id=xxx and 1=1
返回sql語句:
select * from user where name='xxx and 1=1'
過濾方法:
http://www.xxx.com/x.php?id='xxx and '1'='1
許多網站有搜索功能,其搜索框可能存 在注入點,注入時需閉合%。
sql中的搜索:
select *from user where name like '%參數%';
明確請求方法
請求方法有:GET、POST、COOKIE、REQUEST、HTTP頭等
GET請求:通過url直接請求
POST請求:通過請求正文進行請求
COOKIE:cookie屬于請求頭部分,有些網站可通過cookie請求的數據進行注入
REQUEST請求:既可以通過GET請求,也可以通過POST請求
HTTP頭:HTTP請求頭域中有些參數值可能存在可以訪問服務器中數據庫中某些信息,可能存在注入
1.GET請求
sqlilabs第5關:
提交無反應,說明參數有有東西,查看源碼
發(fā)現參數用單引號括起來了,需要閉合。
提交無反應,說明是無回顯注入,暫時介紹到這里,后續(xù)在講無回顯注入方法。
sqlilabs第6關
第六關仍是無回顯
查看源碼
發(fā)現參數用雙引號括起來的,要過濾雙引號
2.POST請求
sqlilabs第11關
抓個包試試:
是post請求方法,直接構造post請求方法進行注入
3.COOKIE注入
sqlilabs第20關
被轉義,嘗試cooki注入:
測試可行。
4.http頭注入
sqlilab第18關
顯示ip和User Agent,通過分析源碼,這里對uname和passwd參數進行了處理,但是還有兩個新的全局變量可控,ip和user-agent:
修改User-Agent內容為xxx,發(fā)包:
通過修改User-Agent進行報錯注入:
總結
到此這篇關于sql注入教程之類型以及提交注入的文章就介紹到這了,更多相關sql注入類型及提交內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
您可能感興趣的文章:- 利用SQL注入漏洞登錄后臺的實現方法
- 有效防止SQL注入的5種方法總結
- 利用SQL注入漏洞拖庫的方法
- SQL注入中繞過 單引號 限制繼續(xù)注入
- sql注入之手工注入示例詳解
- MySQL 及 SQL 注入與防范方法
- 防御SQL注入的方法總結
- SQL數據庫的高級sql注入的一些知識
- SQL 注入式攻擊的終極防范
- 關于SQL注入中文件讀寫的方法總結