指定參數進行掃描,而不是掃描所有參數,這樣可以避免浪費時間到非注入點參數上,從而提高掃描效率。比如掃描以下URL,已知Submit是靜態參數,id是動態的,那么在掃描的時候只需要指定id就行了,指定多個參數時用雙引號包起來,並以逗號分隔。也可以指定HTTP請求頭中的參數,如User-Agent
sqlmap -u "http://test.dvwa.com/vulnerabilities/sqli/?id=1&Submit=Submit#" -p id
設置--skip跳過指定參數掃描,和-p作用相反,它用來跳過需要掃描的參數。如果不想掃描HTTP頭的Referfer和HOST參數
sqlmap -u "http://test.dvwa.com/vulnerabilities/sqli/?id=1&Submit=Submit#" --skip "Referfer,HOST"
設置--param-exclude不對包含具體內容參數的請求進行探測,如不對包含token和session參數的請求進行探測
sqlmap -u "http://test.dvwa.com/vulnerabilities/sqli/?id=1&Submit=Submit#" --param-exclude="token,session"
設置--skip-static掃描時忽略非動態參數
指定URI位置進行注入
當注入點在URI上時,除非手動將注入點指向URI上,否則Sqlmap不會對URI路徑執行任何自動測試,必須要在掃描時在URI上加星號(*)來指定這些注入點
sqlmap -u "http://test.dvwa.com/vulnerabilities/sqli*/?id=1&Submit=Submit#"