1. 程式人生 > 實用技巧 >sql注入9:sqlmap常用引數2

sql注入9:sqlmap常用引數2

接上文:

九、身份認證

  引數:“-auth-type”和“-auth-cred”

  這些引數用於進行身份認證。“-auth-type”用於指定認證方式,支援以下三種身份認證方式:

  1.Basic

  2.Digest

  3.NTLM

  “-auth-cred”用於給出身份認證的憑證,格式是“username:password”,如:

sqlmap.py -u "http://192.168.1.5/admin.php?id=1" --auth-type Basic --auth-cred "
test:test"

十、忽略401

  引數:-ignore-401

  使用該引數忽略401錯誤(未認證)

十一、HTTP(S)代理

  引數:“-proxy”、“-proxy-cred”、“-proxy-filed”和“-ignore-proxy”

  使用引數“-proxy”來設定一個HTTP(S)代理,格式是“http(s)://url:port”。若代理需要認證,使用引數“-proxy-cred”來提供認證憑證,格式是“username:password”。

  使用引數“-proxy-file”指定一個儲存著代理列表的檔案,Sqlmap會依次使用檔案中的代理,當某個代理有任何連線問題時就會被棄用而換下一個代理。

  使用引數“-ignore-proxy”忽略本地代理設定

十二、HTTP請求之間新增延遲

  引數:-delay

  過於頻繁地傳送請求可能會被網站察覺或有其他不良後果。使用引數“-delay”來指定HTTP請求之間的延遲,單位為秒,型別是浮點數,如“-delay 1.5”表示延遲1.5秒。預設是沒有延遲的。

十三、超時

  引數:-timeout

  超時時間預設為30秒,可以用引數“-tiomeout”指定超時時間,如“-timeout 30.5”表示設定超時時間為30.5秒。

十四、超時後最大重試次數

  引數:-retries

  超時後sqlmap會進行重試,最大重試次數預設為3,可以用引數“-retries”指定最大重試次數。

十五、隨機化引數值

  引數:-randomize

  使用該引數,Sqlmap會隨機生成每次HTTP請求中引數的值,值的型別和長度依照於原始值。

十六、關閉URL編碼

  引數:-skip-urlencode

  Sqlmap預設會對URL編碼,可以用該引數關閉URL編碼。

十七、繞過CSRF保護

  引數:-csrf-token和-csrf-url

  現在有很多網站通過在表單中新增值為隨機生成的token的隱藏欄位來防止CSRF攻擊,Sqlmap會自動識別出這種保護方式並繞過。但自動識別有可能失效,此時就要用到這兩個引數。

  “-csrf-token‘用於指定包含token的隱藏欄位名,若這個欄位名不是常見的防止CSRF攻擊的欄位名Sqlmap可能不能自動識別出,需要手動指定。如Django中該欄位名為”csrfmiddlewaretoken“,明顯與CSRF攻擊有關。

  ”-csrf-url“用於從任意的URL中回收token值。若最初有漏洞的目標URL中沒有包含token值而又要求在其他地址提取token值時該引數就很有用。

十八、強制使用SSL

  引數:-force-ssl

十九、在每次請求執行特定Python程式碼

  引數:-eval

  如:

sqlmap.py -u "http://192.168.1.5/admin.php?id=1&hash=casfa46a6sv76av67adv" --eval="import hashlib;hash=hashlib.md5(id).hexdigest()"

  每次返送請求前,Sqlmap都會依據id值重新計算hash值並更新GET請求中的hash值。