渗透测试工具:Sqlmap

本文详细介绍了Sqlmap工具,包括其功能、使用方法和各种参数设置,旨在帮助读者理解和掌握这款强大的SQL注入测试工具。从目标指定、请求定制、性能优化等方面展开,覆盖了Sqlmap的各个方面,如多线程、盲注、数据库枚举、技术手段等,适用于信息安全领域的渗透测试工作。
摘要由CSDN通过智能技术生成

一、Sqlmap是什么(形式因)?

二、Sqlmap能干什么(目的因)?

三、Sqlmap包含什么(质料因)和如何使用Sqlmap(方法论)?

(一)、Target

  • -d 直接连目标后端接数据库,而不是使用sql注入漏洞,直接通过目标的侦听端口连接,当然需要有目标数据库的账号名和密码。例:-d “mysql://user:password@192.168.75.128:3389/databasename” --dbs 查询非常快。
  • -u 指定一个url连接,url中必须有?xx=xx 才行(最常用的参数)例:-u “www.abc.com/index.php?id=1”
  • -l 后接一个log文件,可以是burp等的代理的log文件,之后sqlmap会扫描log中的所有记录。例: -l log.txt
  • -x 站点地图,提交给sql一个xml文件。
  • -m 后接一个txt文件,文件中是多个url,sqlmap会自动化的检测其中的所有url。例: -m target.txt。
  • -r 可以将一个post请求方式的数据包保存在一个txt中,sqlmap会通过post方式检测目标。例: -r post.txt
  • -g 使用google引擎搜索类似的网址,并且多目标检测。例: -g “inurl:”.php?id=1"" \是转义
  • -c 将使用的命令写在一个文件中,让sqlmap执行文件中的命令,我们可以用–save命令将配置写入文件。将来扫描oa系统和邮件系统可以使用不同的配置文件来扫描。

(二)、 Request

  • --method=METHOD 指定是get方法还是post方法。例: --method=GET --method=POST
  • --data=DATA 指明参数是哪些。例:-u “www.abc.com/index.php?id=1” --data=“name=1;pass=2”
  • --param-del=PARA. 指明使用的变量分割符。例: -u “www.abc.com/index.php?id=1” --data=“name=1;pass=2” --param-del=";"
  • --cookie=COOKIE 指定测试时使用的cookie,通常在一些需要登录的站点会使用。例: -u “www.abc.com/index.php?id=1” --cookie=“a=1;b=2”
  • --cookie-del=COO… 和前面的 --param-del=PARA. 类似,就是指明分割cookie的字符。
  • --load-cookies=L… 从包含Netscape / wget格式的cookie的文件中加载cookie。
  • --drop-set-cookie 默认情况下,sqlmap是开启set-cookie功能的,也就是当收到一个含有set-cookie的http包的时候,下次sql会使用新的cookie进行发包,如果使用这条命令,就会关闭这个功能。在level>=2时会检测cookie注入。
  • --user-agent=AGENT 指定一个user-agent的值进行测试。例: --user-agent=“aaaaaaa” 默认情况下,sqlmap会使用自己的user-agent进行测试(所以很多服务器发现user-agent是sqlmap的数据包直接认为是入侵),sqlmap自己的user-agent是:sqlmap/1.0-dev-nongit-201603020a89(http://sqlmap.org)
  • --random-agent 使用随机user-agent进行测试。sqlmap有一个文件中储存了各种各样的user-agent,文件在sqlmap/txt/user-agent.txt 在level>=3时会检测user-agent注入。
  • --host=HOST 指定http包中的host头参数。例: --host=“aaaaaa” 在level>=5时才会检查host头注入。\n是换行
  • --referer=REFERER 指定http包中的refere字段。例: --referer=“aaaaa” 在level>=3时才会检测refere注入。
  • -H --headers 额外的header头们,每个占一行。例:–headers=“host:www.a.com\nUser-Agent:yuangh”
  • --headers=HEADERS 跟上边一样,再举一个例子: --headers=“Accept-Language: fr\nETag: 123” 注意所有构造http包的部分均区分大小写
  • --auth-type=AUTH… 基于http身份验证的种类。例: --auth-type Basic/Digest/NTLM 一共有三种认证方式。
  • --auth-cred=AUTH… 使用的认证,例: --auth-type Basic --auth-cred “user:password”
  • --auth-file=AUTH… 使用.PEM文件中的认证。例:–auth-file=“AU.PEM” 少见。
  • --ignore-code=IG… 无视http状态码。例: --ignore-code=401
  • --ignore-proxy 无视本地的代理,有时候机器会有最基本的代理配置,在扫描本地网段的时候会很麻烦,使用这个参数可以忽略代理设置。
  • --ignore-redirects 无视http重定向,比如登录成功会跳转到其他网页,可使用这个忽略掉。
  • --ignore-timeouts 忽略连接超时。
  • --proxy=PROXY 指定一个代理。例: --proxy=“127.0.0.1:8087” 使用GoAgent代理。
  • --proxy-cred=PRO… 代理需要的认证。例: --proxy=“name:password”
  • --proxy-file=PRO… 从一个文件加载代理的认证。
  • --tor 使用tor匿名网络。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值