前言
DVWA(Damn Vulnerable Web Application)是安全入门者们最为熟知的练习靶场,它能够帮助小白对常见的安全问题进行理解,并且随着理解问题的深入自主调整靶场的安全级别。
DVWA靶场共包含十四个练习模块,每个模块分为 Low,Medium,High,Impossible四种难度,而Impossible和High相对而言,对于后续在进行过基础安全建设的生产环境中的实战更加具有参考意义。
- Brute Force——暴力破解
- Command Injection——命令注入
- CSRF——跨站请求伪造
- File Inclusion——文件包含
- File Upload——文件上传漏洞
- Insecure CAPTCHA——不安全的验证
- SQL Injection——sql注入
- SQL Injection(Blind)——sql注入(盲注)
- Weak Session IDs——不安全的SessionID
- XSS(DOM)——DOM型XSS
- XSS(Reflected)——反射型XSS
- XSS(Stored)——存储型XSS
- CSP Bypass ——绕过内容安全策略
- JavaScript——JS攻击
一、模块介绍
Brute Force,暴力破解是攻击者在不知道账户的密码的情况下进行尝试性的登录,通常会利用自动化的工具结合字典进行高效性的尝试,理论上来说,大多数系统都是可以被暴力破解的,只要攻击者有足够强大的计算能力和时间,所以一般在渗透中发现的暴力破解漏洞是指系统没有采用或者采用了比较弱的认证安全策略,导致其被暴力破解的“可能性”变的比较高
二、常用工具
自动化工具
- BurpSuite——抓包、改包且自带基础字典 [使用方法]
- Hydra——配合字典使用的爆破工具
字典收集(持续更新)
三、各级通关
Low
1.使用burpsuite抓包,进入Intruder,配置暴力破解参数
2.执行暴力破解,找长度不一样的即为正确的用户名密码
Medium
与Low一样,只是每次尝试之间增加了延时
High
前序知识:user_token的用处
1.使用burpsuite抓包,看到此时请求带有user_token头,通过Repeater回放抓到的包(由于user_token导致无法二次重放,但在首次响应包中可以看到生成的user_token值,将其替换后可重放)
2.配置Burpsuite, 其中Payload set 1选择使用 Simple list ,将密码字典添加进去;在Payload set 2 中 token 值选择使用 Recursive grep(递归查询:从response中提取数据 user_token 的,然后去替换我们爆破的值)
3. 设置 Options,Request Engine 的线程设置为 1 ,同时需要设置 Grep - Extract ,点击 Add ,在弹出的页面点击 Refetch response ,将其中 token 的值选中,便会自动选择范围;Redirections 选择Always;在Payloads中的“Initial payload for first request”添加初始值
4.执行暴力破解,找长度不一样的即为正确的用户名密码
Impossible
与High一样,只是每次尝试之间增加了延时