1. 程式人生 > >sqlmap之命令詳解

sqlmap之命令詳解

 sqlmap文件地址:https://github.com/sqlmapproject/sqlmap/wiki/Usage

中英對照:

Usage: python sqlmap.py [options]
 
Options(選項):
 
  -h, --help            Show basic help message and exit        顯示此幫助訊息並退出
  -hh                   Show advanced help message and exit     展示先進的幫助資訊並退出
  --version             Show program's version number and exit  顯示程式的版本號並退出
  -v VERBOSE            Verbosity level: 0-6 (default 1)        詳細級別:0-6(預設為1) 
 
  Target(目標):
 
    At least one of these options has to be provided to define the  
    target(s)
    以下至少需要設定其中一個選項,設定目標URL。
 
    -d DIRECT           Connection string for direct database connection        直接連線到資料庫。
    -u URL, --url=URL   Target URL (e.g. "http://www.site.com/vuln.php?id=1")   目標URL。
    -l LOGFILE          Parse target(s) from Burp or WebScarab proxy log file   解析目標(s)從Burp或WebScarab代理日誌檔案
    -x SITEMAPURL       Parse target(s) from remote sitemap(.xml) file          解析目標(s)從遠端站點地圖檔案(.xml)
    -m BULKFILE         Scan multiple targets given in a textual file           掃描文字檔案中給出的多個目標
    -r REQUESTFILE      Load HTTP request from a file                           從檔案載入HTTP請求
    -g GOOGLEDORK       Process Google dork results as target URLs              處理Google dork的結果作為目標URL。
    -c CONFIGFILE       Load options from a configuration INI file              從INI配置檔案中載入選項。
 
  Request(請求):
 
    These options can be used to specify how to connect to the target URL   這些選項可以用來指定如何連線到目標URL。
 
    --method=METHOD     Force usage of given HTTP method (e.g. PUT)          強制使用給定的HTTP方法(e.g. PUT)
    --data=DATA         Data string to be sent through POST                  通過POST傳送的資料字串
    --param-del=PARA..  Character used for splitting parameter values        用於拆分引數值的字元
    --cookie=COOKIE     HTTP Cookie header value                             HTTP Cookie頭的值
    --cookie-del=COO..  Character used for splitting cookie values           用於分割Cookie值的字元
    --load-cookies=L..  File containing cookies in Netscape/wget format      包含Netscape / wget格式的cookie的檔案
    --drop-set-cookie   Ignore Set-Cookie header from response               從響應中忽略Set-Cookie頭
    --user-agent=AGENT  HTTP User-Agent header value                         指定 HTTP User - Agent頭  
    --random-agent      Use randomly selected HTTP User-Agent header value   使用隨機選定的HTTP User - Agent頭 
    --host=HOST         HTTP Host header value                                HTTP主機頭值
    --referer=REFERER   HTTP Referer header value                             指定 HTTP Referer頭
    -H HEADER, --hea..  Extra header (e.g. "X-Forwarded-For: 127.0.0.1")      額外header
    --headers=HEADERS   Extra headers (e.g. "Accept-Language: fr\nETag: 123") 額外header
    --auth-type=AUTH..  HTTP authentication type (Basic, Digest, NTLM or PKI) HTTP認證型別(Basic, Digest, NTLM or PKI)
    --auth-cred=AUTH..  HTTP authentication credentials (name:password)       HTTP認證憑證(name:password)
    --auth-file=AUTH..  HTTP authentication PEM cert/private key file         HTTP認證 PEM認證/私鑰檔案
    --ignore-401        Ignore HTTP Error 401 (Unauthorized)                  忽略HTTP錯誤401(未經授權)
    --proxy=PROXY       Use a proxy to connect to the target URL              使用代理連線到目標網址
    --proxy-cred=PRO..  Proxy authentication credentials (name:password)      代理認證證書(name:password) 
    --proxy-file=PRO..  Load proxy list from a file                           從檔案中載入代理列表
    --ignore-proxy      Ignore system default proxy settings                  忽略系統預設代理設定
    --tor               Use Tor anonymity network                             使用Tor匿名網路
    --tor-port=TORPORT  Set Tor proxy port other than default                 設定Tor代理埠而不是預設值
    --tor-type=TORTYPE  Set Tor proxy type (HTTP (default), SOCKS4 or SOCKS5) 設定Tor代理型別
    --check-tor         Check to see if Tor is used properly                  檢查Tor是否正確使用
    --delay=DELAY       Delay in seconds between each HTTP request             每個HTTP請求之間的延遲(秒)
    --timeout=TIMEOUT   Seconds to wait before timeout connection (default 30) 秒超時連線前等待(預設30)
    --retries=RETRIES   Retries when the connection timeouts (default 3)       連線超時時重試(預設值3)
    --randomize=RPARAM  Randomly change value for given parameter(s)           隨機更改給定引數的值(s)
    --safe-url=SAFEURL  URL address to visit frequently during testing         在測試期間頻繁訪問的URL地址
    --safe-post=SAFE..  POST data to send to a safe URL                        POST資料傳送到安全URL
    --safe-req=SAFER..  Load safe HTTP request from a file                     從檔案載入安全HTTP請求
    --safe-freq=SAFE..  Test requests between two visits to a given safe URL   在兩次訪問給定安全網址之間測試請求
    --skip-urlencode    Skip URL encoding of payload data                      跳過有效載荷資料的URL編碼
    --csrf-token=CSR..  Parameter used to hold anti-CSRF token                 引數用於儲存anti-CSRF令牌
    --csrf-url=CSRFURL  URL address to visit to extract anti-CSRF token        提取anti-CSRF URL地址訪問令牌
    --force-ssl         Force usage of SSL/HTTPS                               強制使用SSL / HTTPS
    --hpp               Use HTTP parameter pollution method                    使用HTTP引數pollution的方法
    --eval=EVALCODE     Evaluate provided Python code before the request (e.g. 評估請求之前提供Python程式碼
                        "import hashlib;id2=hashlib.md5(id).hexdigest()")
 
  Optimization(優化):
 
    These options can be used to optimize the performance of sqlmap    這些選項可用於優化sqlmap的效能
 
    -o                  Turn on all optimization switches                        開啟所有優化開關
    --predict-output    Predict common queries output                            預測常見的查詢輸出
    --keep-alive        Use persistent HTTP(s) connections                       使用持久的HTTP(S)連線
    --null-connection   Retrieve page length without actual HTTP response body   從沒有實際的HTTP響應體中檢索頁面長度
    --threads=THREADS   Max number of concurrent HTTP(s) requests (default 1)    最大的HTTP(S)請求併發量(預設為1)
 
  Injection(注入):
 
    These options can be used to specify which parameters to test for,
    provide custom injection payloads and optional tampering scripts 
    這些選項可以用來指定測試哪些引數, 提供自定義的注入payloads和可選篡改指令碼。
 
    -p TESTPARAMETER    Testable parameter(s)                                      可測試的引數(S)
    --skip=SKIP         Skip testing for given parameter(s)                        跳過對給定引數的測試
    --skip-static       Skip testing parameters that not appear to be dynamic      跳過測試不顯示為動態的引數
    --param-exclude=..  Regexp to exclude parameters from testing (e.g. "ses")     使用正則表示式排除引數進行測試(e.g. "ses")
    --dbms=DBMS         Force back-end DBMS to this value                          強制後端的DBMS為此值  
    --dbms-cred=DBMS..  DBMS authentication credentials (user:password)            DBMS認證憑證(user:password) 
    --os=OS             Force back-end DBMS operating system to this value         強制後端的DBMS作業系統為這個值
    --invalid-bignum    Use big numbers for invalidating values                    使用大數字使值無效
    --invalid-logical   Use logical operations for invalidating values             使用邏輯操作使值無效
    --invalid-string    Use random strings for invalidating values                 使用隨機字串使值無效
    --no-cast           Turn off payload casting mechanism                         關閉有效載荷鑄造機制
    --no-escape         Turn off string escaping mechanism                         關閉字串轉義機制
    --prefix=PREFIX     Injection payload prefix string                            注入payload字串字首
    --suffix=SUFFIX     Injection payload suffix string                            注入payload字串字尾  
    --tamper=TAMPER     Use given script(s) for tampering injection data           使用給定的指令碼(S)篡改注入資料
 
  Detection(檢測):
 
    These options can be used to customize the detection phase 這些選項可以用來指定在SQL盲注時如何解析和比較HTTP響應頁面的內容。
 
    --level=LEVEL       Level of tests to perform (1-5, default 1)          執行測試的等級(1-5,預設為1)
    --risk=RISK         Risk of tests to perform (1-3, default 1)           執行測試的風險(0-3,預設為1)
    --string=STRING     String to match when query is evaluated to True     查詢時有效時在頁面匹配字串 
    --not-string=NOT..  String to match when query is evaluated to False    當查詢求值為無效時匹配的字串
    --regexp=REGEXP     Regexp to match when query is evaluated to True     查詢時有效時在頁面匹配正則表示式
    --code=CODE         HTTP code to match when query is evaluated to True  當查詢求值為True時匹配的HTTP程式碼
    --text-only         Compare pages based only on the textual content     僅基於在文字內容比較網頁
    --titles            Compare pages based only on their titles            僅根據他們的標題進行比較
 
  Techniques(技巧):
 
    These options can be used to tweak testing of specific SQL injection
    techniques 
    這些選項可用於調整具體的SQL注入測試。 
 
    --technique=TECH    SQL injection techniques to use (default "BEUSTQ")      SQL注入技術測試(預設BEUST)
    --time-sec=TIMESEC  Seconds to delay the DBMS response (default 5)          DBMS響應的延遲時間(預設為5秒)
    --union-cols=UCOLS  Range of columns to test for UNION query SQL injection  定列範圍用於測試UNION查詢注入
    --union-char=UCHAR  Character to use for bruteforcing number of columns     用於暴力猜解列數的字元
    --union-from=UFROM  Table to use in FROM part of UNION query SQL injection  要在UNION查詢SQL注入的FROM部分使用的表
    --dns-domain=DNS..  Domain name used for DNS exfiltration attack            域名用於DNS漏出攻擊
    --second-order=S..  Resulting page URL searched for second-order response   生成頁面的URL搜尋為second-order響應
 
  Fingerprint(指紋):
 
    -f, --fingerprint   Perform an extensive DBMS version fingerprint           執行檢查廣泛的DBMS版本指紋
 
  Enumeration(列舉):
 
    These options can be used to enumerate the back-end database
    management system information, structure and data contained in the
    tables. Moreover you can run your own SQL statements                  
    這些選項可以用來列舉後端資料庫管理系統的資訊、表中的結構和資料。此外,您還可以執行您自己的SQL語句。  
 
    -a, --all           Retrieve everything                             檢索一切
    -b, --banner        Retrieve DBMS banner                            檢索資料庫管理系統的標識  
    --current-user      Retrieve DBMS current user                      檢索資料庫管理系統的標識  
    --current-db        Retrieve DBMS current database                  檢索資料庫管理系統當前資料庫  
    --hostname          Retrieve DBMS server hostname                   檢索資料庫伺服器的主機名
    --is-dba            Detect if the DBMS current user is DBA          檢測DBMS當前使用者是否DBA  
    --users             Enumerate DBMS users                            列舉資料庫管理系統使用者
    --passwords         Enumerate DBMS users password hashes            列舉資料庫管理系統使用者密碼雜湊
    --privileges        Enumerate DBMS users privileges                 列舉資料庫管理系統使用者的許可權  
    --roles             Enumerate DBMS users roles                      列舉資料庫管理系統使用者的角色  
    --dbs               Enumerate DBMS databases                        列舉資料庫管理系統資料庫
    --tables            Enumerate DBMS database tables                  列舉的DBMS資料庫中的表  
    --columns           Enumerate DBMS database table columns           列舉DBMS資料庫表列
    --schema            Enumerate DBMS schema                           列舉資料庫架構
    --count             Retrieve number of entries for table(s)         檢索表的條目數
    --dump              Dump DBMS database table entries                轉儲資料庫管理系統的資料庫中的表項
    --dump-all          Dump all DBMS databases tables entries               轉儲資料庫管理系統的資料庫中的表項
    --search            Search column(s), table(s) and/or database name(s)   搜尋列(S),表(S)和/或資料庫名稱(S)
    --comments          Retrieve DBMS comments                               檢索資料庫的comments(註釋、評論)
    -D DB               DBMS database to enumerate                           要進行列舉的資料庫名 
    -T TBL              DBMS database table(s) to enumerate                  要進行列舉的資料庫表
    -C COL              DBMS database table column(s) to enumerate           要進行列舉的資料庫列 
    -X EXCLUDECOL       DBMS database table column(s) to not enumerate       要不進行列舉的資料庫列 
    -U USER             DBMS user to enumerate                               用來進行列舉的資料庫使用者 
    --exclude-sysdbs    Exclude DBMS system databases when enumerating tables   列舉表時排除系統資料庫 
    --pivot-column=P..  Pivot column name                                       主列名稱
    --where=DUMPWHERE   Use WHERE condition while table dumping                 使用WHERE條件進行錶轉儲
    --start=LIMITSTART  First query output entry to retrieve                    第一個查詢輸出進入檢索
    --stop=LIMITSTOP    Last query output entry to retrieve                     最後查詢的輸出進入檢索
    --first=FIRSTCHAR   First query output word character to retrieve           第一個查詢輸出字的字元檢索 
    --last=LASTCHAR     Last query output word character to retrieve            最後查詢的輸出字字元檢索 
    --sql-query=QUERY   SQL statement to be executed                            要執行的SQL語句
    --sql-shell         Prompt for an interactive SQL shell                     提示互動式SQL的shell
    --sql-file=SQLFILE  Execute SQL statements from given file(s)               從給定檔案執行SQL語句
 
  Brute force(蠻力):
 
    These options can be used to run brute force checks         這些選項可以被用來執行蠻力檢查。
 
    --common-tables     Check existence of common tables        檢查存在共同表 
    --common-columns    Check existence of common columns       檢查存在共同列
 
  User-defined function injection(使用者自定義函式注入):
    These options can be used to create custom user-defined functions   這些選項可以用來建立使用者自定義函式。
 
    --udf-inject        Inject custom user-defined functions        注入使用者自定義函式  
    --shared-lib=SHLIB  Local path of the shared library            共享庫的本地路徑 
 
  File system access(訪問檔案系統):
 
    These options can be used to access the back-end database management      
    system underlying file system
    這些選項可以被用來訪問後端資料庫管理系統的底層檔案系統。
 
    --file-read=RFILE   Read a file from the back-end DBMS file system        從後端的資料庫管理系統檔案系統讀取檔案  
    --file-write=WFILE  Write a local file on the back-end DBMS file system   編輯後端的資料庫管理系統檔案系統上的本地檔案
    --file-dest=DFILE   Back-end DBMS absolute filepath to write to           後端的資料庫管理系統寫入檔案的絕對路徑
 
  Operating system access(作業系統訪問):
 
    These options can be used to access the back-end database management
    system underlying operating system  
    這些選項可以用於訪問後端資料庫管理系統的底層作業系統。
 
    --os-cmd=OSCMD      Execute an operating system command                     執行作業系統命令 
    --os-shell          Prompt for an interactive operating system shell        互動式的作業系統的shell
    --os-pwn            Prompt for an OOB shell, Meterpreter or VNC             獲取一個OOB shell,meterpreter或VNC 
    --os-smbrelay       One click prompt for an OOB shell, Meterpreter or VNC   一鍵獲取一個OOB shell,meterpreter或VNC 
    --os-bof            Stored procedure buffer overflow exploitation           儲存過程緩衝區溢位利用
    --priv-esc          Database process user privilege escalation              資料庫程序使用者許可權提升
    --msf-path=MSFPATH  Local path where Metasploit Framework is installed      Metasploit Framework本地的安裝路徑
    --tmp-path=TMPPATH  Remote absolute path of temporary files directory       遠端臨時檔案目錄的絕對路徑
 
  Windows registry access(Windows登錄檔訪問):
 
    These options can be used to access the back-end database management
    system Windows registry     
    這些選項可以被用來訪問後端資料庫管理系統Windows登錄檔。
 
    --reg-read          Read a Windows registry key value           讀一個Windows登錄檔項值
    --reg-add           Write a Windows registry key value data     寫一個Windows登錄檔項值資料
    --reg-del           Delete a Windows registry key value         刪除Windows登錄檔鍵值
    --reg-key=REGKEY    Windows registry key                        Windows登錄檔鍵 
    --reg-value=REGVAL  Windows registry key value                  Windows登錄檔項值 
    --reg-data=REGDATA  Windows registry key value data             Windows登錄檔鍵值資料  
    --reg-type=REGTYPE  Windows registry key value type             Windows登錄檔項值型別
 
  General(一般):
 
    These options can be used to set some general working parameters    這些選項可以用來設定一些一般的工作引數。 
 
    -s SESSIONFILE      Load session from a stored (.sqlite) file                   儲存和恢復檢索會話檔案的所有資料
    -t TRAFFICFILE      Log all HTTP traffic into a textual file                    記錄所有HTTP流量到一個文字檔案中
    --batch             Never ask for user input, use the default behaviour         從不詢問使用者輸入,使用所有預設配置。 
    --binary-fields=..  Result fields having binary values (e.g. "digest")          具有二進位制值的結果欄位
    --charset=CHARSET   Force character encoding used for data retrieval            強制用於資料檢索的字元編碼
    --crawl=CRAWLDEPTH  Crawl the website starting from the target URL              從目標網址開始抓取網站
    --crawl-exclude=..  Regexp to exclude pages from crawling (e.g. "logout")       正則表示式排除網頁抓取
    --csv-del=CSVDEL    Delimiting character used in CSV output (default ",")       分隔CSV輸出中使用的字元
    --dump-format=DU..  Format of dumped data (CSV (default), HTML or SQLITE)       轉儲資料的格式
    --eta               Display for each output the estimated time of arrival       顯示每個輸出的預計到達時間
    --flush-session     Flush session files for current target                      重新整理當前目標的會話檔案
    --forms             Parse and test forms on target URL                          在目標網址上解析和測試表單
    --fresh-queries     Ignore query results stored in session file                 忽略在會話檔案中儲存的查詢結果
    --hex               Use DBMS hex function(s) for data retrieval                 使用DBMS hex函式進行資料檢索
    --output-dir=OUT..  Custom output directory path                                自定義輸出目錄路徑
    --parse-errors      Parse and display DBMS error messages from responses        解析和顯示響應中的DBMS錯誤訊息
    --save=SAVECONFIG   Save options to a configuration INI file                    儲存選項到INI配置檔案
    --scope=SCOPE       Regexp to filter targets from provided proxy log            使用正則表示式從提供的代理日誌中過濾目標
    --test-filter=TE..  Select tests by payloads and/or titles (e.g. ROW)           根據有效負載和/或標題(e.g. ROW)選擇測試
    --test-skip=TEST..  Skip tests by payloads and/or titles (e.g. BENCHMARK)       根據有效負載和/或標題跳過測試(e.g. BENCHMARK)
    --update            Update sqlmap                                                更新SqlMap
 
  Miscellaneous(雜項):
 
    -z MNEMONICS        Use short mnemonics (e.g. "flu,bat,ban,tec=EU")         使用簡短的助記符
    --alert=ALERT       Run host OS command(s) when SQL injection is found      在找到SQL注入時執行主機作業系統命令
    --answers=ANSWERS   Set question answers (e.g. "quit=N,follow=N")           設定問題答案
    --beep              Beep on question and/or when SQL injection is found     發現SQL注入時提醒
    --cleanup           Clean up the DBMS from sqlmap specific UDF and tables   SqlMap具體的UDF和表清理DBMS 
    --dependencies      Check for missing (non-core) sqlmap dependencies        檢查是否缺少(非核心)sqlmap依賴關係
    --disable-coloring  Disable console output coloring                         禁用控制檯輸出顏色
    --gpage=GOOGLEPAGE  Use Google dork results from specified page number      使用Google dork結果指定頁碼
    --identify-waf      Make a thorough testing for a WAF/IPS/IDS protection    對WAF / IPS / IDS保護進行全面測試
    --skip-waf          Skip heuristic detection of WAF/IPS/IDS protection      跳過啟發式檢測WAF / IPS / IDS保護
    --mobile            Imitate smartphone through HTTP User-Agent header       通過HTTP User-Agent標頭模仿智慧手機
    --offline           Work in offline mode (only use session data)            在離線模式下工作(僅使用會話資料)
    --page-rank         Display page rank (PR) for Google dork results          Google dork結果顯示網頁排名(PR)
    --purge-output      Safely remove all content from output directory         安全地從輸出目錄中刪除所有內容
    --smart             Conduct thorough tests only if positive heuristic(s)    只有在正啟發式時才進行徹底測試
    --sqlmap-shell      Prompt for an interactive sqlmap shell                  提示互動式sqlmap shell
    --wizard            Simple wizard interface for beginner users              給初級使用者的簡單向導介面