dvwa靶场通关教程(保姆及教学,一看就会)

目录

1.暴力破解 brute force

low

Medium

High

impossible

2.command injection命令注入

low

medium

high

impossible

3.CSRF跨站请求伪造

low

medium

high

impossible

4.File inclusion 文件包含

low

medium

high

impossible

5.File upload文件上传

low

Medium

High

impossible

6.Insecure CAPTCHA不安全的验证

low

medium

high

impossible

7.SQL Injection sql注入

low

Medium

high

impossible

8.SQL Injection (Blind)盲注

low

Medium

high

impossible

9.Weak Session IDs会话劫持

low

medium

high

impossible

10.XSS (DOM)

low

medium

high

impossible

11.XSS (Reflected)反射

low

medium

high

impossible

12.XSS (Stored)

low

medium

high

impossible

13.CSP Bypass

low

medium

high

impossible

14.JavaScript js攻击

low

medium

high

impossible


1.暴力破解 brute force

low

  1. 使用bp抓包,分别在username和password处添加变量,使用集束炸弹(cluster bomb)模式,添加字典进行爆破

可以手工SQL注入(万能密码),在用户名框中输入admin' or '1'='1,任意输入密码即可登陆(同时在弱口令字典里也有该语句)

Medium

和low相比,过滤了一些转义字符,但依旧可以使用bp爆破方法同low

High

随意输入用户名密码,抓个包可以看到,携带了token

所以可以使用草叉模式带着这个token去爆破

首先抓一个登陆的包,然后发送到intruder模块,选择草叉模式,为password和token添加变量

然后在第一个payload导入本地字典

然后设置token

回到payload,选择第二个爆破点,选择递归模式,recursive grep,设置初始值

然后开始爆破,看到密码为password。

impossible

登陆三次失败,锁定15min,没辙.

2.command injection命令注入

low

  1. 输入以下命令都可以执行

;被过滤,以下分隔符都可以

medium

  1. 可以看到过滤了&&和; 所以依旧可以使用 127.0.0. || ipconfig执行命令

high

过滤了全部管道符,可以使用 127.0.0 || ipconfig ,前面命令执行失败执行后面的

方法还有很多

impossible

设置了token,检查输入是否为数字,无漏洞

3.CSRF跨站请求伪造

low

  1. 先输入一个不一致的密码,观察页面变化

  1. 可以看到url为:http://192.168.10.5/DVWA/vulnerabilities/csrf/?password_new=123&password_conf=234&Change=Change#

此时我们可以构造一个:http://192.168.10.5/DVWA/vulnerabilities/csrf/?password_new=666666&password_conf=666666&Change=Change#

  1. 用新页面打开url,发现密码一键被修改

medium

  1. 按照刚才的方式修改,发现执行不了,检查了请求头

  1. 首先抓一个包,可以看到这里有referer

  1. 复制刚才构造好的url,在新页面打开:http://192.168.10.5/DVWA/vulnerabilities/csrf/?password_new=666666&password_conf=666666&Change=Change#

抓包,发现没有referer

我们自己在这里加一个referer,随意添加,包含本机就可以例如:127.0.0.1

放包,发现已经成功修改

high

可以看到,设置了token

这里我们采用抓包,把包发到重放模块,在row中可以看到新的token

接下来使用获取到的新token构造链接

### 关于DVWA靶场通关教程和使用指南 #### 什么是DVWADVWA(Damn Vulnerable Web Application)是款用于学习Web安全漏洞的PHP/MySQL应用程序。它的设计目标是为安全研究人员提供个合法的环境来测试其技能和工具,同时也帮助Web开发人员更好地理解如何保护Web应用免受攻击[^1]。 #### 安全级别的设置 DVWA支持四种不同的安全级别:`Low`, `Medium`, `High`, 和 `Impossible`。这些级别决定了防护机制的复杂程度以及渗透测试的难度。 - **Low**: 几乎没有任何防护措施,适合初学者快速了解漏洞的工作方式。 - **Medium**: 添加了些基础的输入验证逻辑,需要定的技巧去绕过。 - **High**: 提供更复杂的防御策略,挑战更高。 - **Impossible**: 被认为几乎无法突破,适用于研究最佳实践[^1]。 #### 数据库配置 在使用DVWA之前,可能需要对数据库进行初始化或重新配置。以下是默认的数据库连接参数: ```php $_DVWA['db_database'] = getenv('DB_DATABASE') ?: 'dvwa'; $_DVWA['db_user'] = getenv('DB_USER') ?: 'root'; $_DVWA['db_password'] = getenv('DB_PASSWORD') ?: '123456'; $_DVWA['db_port'] = getenv('DB_PORT') ?: '3306'; ``` 以上代码片段展示了如何通过环境变量加载数据库配置,默认情况下使用的用户名为`root`,密码为`123456`[^2]。 #### 文件包含漏洞利用方法 文件包含漏洞允许攻击者指定URL或其他路径以读取或执行远程文件的内容。为了演示此功能,在低级模式下可以直接尝试以下payload: ``` file:///etc/passwd ``` 这将返回Linux系统的用户列表。注意实际操作时需确保拥有足够的权限并遵循法律规范[^3]。 #### DOM-based XSS详解 DOM-based XSS是种发生在前端层面的安全隐患,当JavaScript脚本从浏览器环境中获取不可信的数据并将其嵌入HTML文档中而不加过滤时可能发生此类问题。例如,如果页面中有如下代码段未正确处理用户的输入,则可能导致恶意行为的发生: ```javascript document.write('<a href="' + location.hash.substring(1) + '">Click Me</a>'); ``` 假设攻击者诱导受害者点击链接`http://example.com/#<script>alert(document.cookie)</script>`,那么该脚本会被解析运行从而窃取Cookie信息[^4]。 --- ###
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

nuc_ddddsj

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

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

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

打赏作者

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

抵扣说明:

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

余额充值