当前位置: 首页 > news >正文

sqlmap使用教程(3)-探测注入漏洞

1、探测GET参数

以下为探测DVWA靶场low级别的sql注入,以下提交方式为GET,问号(?)将分隔URL和传输的数据,而参数之间以&相连。--auth-cred=admin:password --auth-type=basic (DVWA靶场需要登录,所以需要指定认证类型和凭证)--cookie=(指定cookie值)

sqlmap -u "http://192.168.3.129/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#"  --auth-cred=admin:password --auth-type=basic --cookie="PHPSESSID=vj863jbvgdbinthoq4q003mb51; security=low"

备注:如果需要使用其他字符分隔参数,可以使用--param-del选项进行设置(param是parameter(参数)的简写形式)

2、探测POST参数

dvwa-sql注入级别调整为medium

以上可以确认是POST提交

2.1 -data选项,可以设置为通过POST方式提交数据参数,这里也需要指定cookie.

2.2 选项--forms,可以用来设置自动搜索POST提交的表单参数

2.3 -r 选项支持加载HTTP请求文件,以读取请求的地址及参数,这样就不用手动指定参数

用bp抓取到request请求后,保存到txt文本,txt文本保存到kali当前运行命令的目录下(可以用pwd查看当前目录)

3、探测cookie参数

如果服务器对用户提交的Cookie参数没有进行合法判断,则可能存在注入漏洞,Cookie的保存方式分为临时和永久两种方式。如果没有设置过期时间,Cookie只存在于浏览器会话期间,即只要关闭浏览器窗口,Cookie就失效了。这种Cookie被称为会话Cookie,保存方式是临时的。如果设置了过期时间,浏览器就会把Cookie保存到硬盘上,即关闭后再打开浏览器,这些Cookie依旧有效,直到超过设定的过期时间。这类Cookie的保存方式为永久的。

选项--cookie   同时 --level级别需大于等于2(共5个级别,默认为1)

HTTP头部的Cookie参数一般使用分号(;)分隔。如果程序使用了其他分隔符,则可以使用--cookie-del选项进行指定,例如--cookie-del=:(指定了冒号分隔符)

如果Cookie内容比较长,不方便命令行输入,可以使用选项--load-cookies,可以用来指定包含Cookie的文件

通过wget命令可以保存cookie,以下为获取网站cookie,并保存在cookie.txt

探测cookie,指定cookie文件

4、探测UA参数

--level选项设置大于等于3的时候,就会探测UA;另外为了规避Web防火墙根据UA进行跟踪,用户还可以使用随机UA参数,sqlmap提供了选项--random-agent;如果程序只接收移动端的访问,此时可以设置使用手机UA来模仿手机登录--mobile

5、探测Referer参数

Referer参数主要用来告诉服务器当前请求是从哪里链接过来的,使用--level选项,设置测试级别大于或等于3。另外,用户还可以手动指定测试的Referer参数。sqlmap提供了选项--referer,可以用来指定Referer参数的值

6、指定测试参数

-p,用于指定测试的参数。如果要指定多个测试参数,参数之间使用逗号分隔

--randomize  为了避免被防火墙检测,指定各种随机值(不能和-p同时使用)

--skip,用于跳过对指定参数的测试

--skip-static,可以用来设置跳过测试静态参数

实验记录:

sqlmap -u "http://192.168.3.129/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#"  --cookie="PHPSESSID=vj863jbvgdbinthoq4q003mb51; security=low"  --level=4 --randomize=id --dbms=mysql----失败

sqlmap -u "http://192.168.3.129/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#"  --cookie="PHPSESSID=vj863jbvgdbinthoq4q003mb51; security=low"  --dbms=mysql  --batch

---成功

sqlmap -u "http://192.168.3.129/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#"  --cookie="PHPSESSID=vj863jbvgdbinthoq4q003mb51; security=low" --randomize=id --dbms=mysql  --batch--失败

sqlmap -u "http://192.168.3.129/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#"  --cookie="PHPSESSID=vj863jbvgdbinthoq4q003mb51; security=low" --level=3 --dbms=mysql  --batch--成功

sqlmap -u "http://192.168.3.129/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#"  --cookie="PHPSESSID=vj863jbvgdbinthoq4q003mb51; security=low" --randomize='id&submit#'  -banner  --dbms=mysql  --batch--成功

sqlmap -u "http://192.168.3.129/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#"  --cookie="PHPSESSID=vj863jbvgdbinthoq4q003mb51; security=low"   --dbms=mysql  --batch --skip-static--失败

sqlmap -u "http://192.168.3.129/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#"  --cookie="PHPSESSID=vj863jbvgdbinthoq4q003mb51; security=low"   --dbms=mysql  --batch

--成功

结论:--skip-static会影响扫描结果

http://www.lryc.cn/news/286611.html

相关文章:

  • 期待已久!阿里云容器服务 ACK AI 助手正式上线
  • [BUG] Authentication Error
  • 23种设计模式概述
  • 英文阅读-LinkedIn‘s Tips for Highly Effective Code Review
  • 性能优化-高通的Hexagon DSP和NPU
  • 第137期 Oracle的数据生命周期管理(20240123)
  • 电脑的GPU太强了,pytorch版本跟不上,将cuda驱动进行降级
  • 1 认识微服务
  • PHP+SOCKET 服务端多进程处理多客户端请求 demo
  • Matplotlib笔记:安装Matplotlib+常用绘图
  • Confluence6+mysql5.7安装避坑详细记录
  • YTM32的HSM模块在信息安全场景中的应用
  • 时间序列大模型:TimeGPT
  • CloudPanel RCE漏洞复现(CVE-2023-35885)
  • WPF多值转换器
  • x-cmd pkg | perl - 具有强大的文本处理能力的通用脚本语言
  • Jedis(一)与Redis的关系
  • K8S--安装Nginx
  • [BUUCTF]-PWN:babyfengshui_33c3_2016解析
  • 小程序系列--9.生命周期
  • SQL注入实战操作
  • Microsoft Remote Desktop for Mac(远程桌面连接)激活版
  • 分布式日志
  • 21.云原生之ArgoCD CICD实战(部分待补充)
  • 一文读懂JavaScript DOM节点操作(JavaScript DOM节点操作详解)
  • 【Linux】常见指令(一)
  • C语言大师(8)异常处理
  • 网络防御保护——1.网络安全概述
  • SpringBoot整合ElasticSearch实现分页查询
  • [C++]使用yolov8的onnx模型仅用opencv和bytetrack实现目标追踪