原理篇—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值。

原文地址:https://www.cnblogs.com/guoqingsentou/p/13621979.html