使用burp工具的intruder模块进行密码爆破

一、密码字典

对于密码爆破,拥有一个好的字典是成功的一半。字典的质量远比数量重要。

1. 自定义"手搓"字典(最高优先级)

在测试具体目标前,强烈建议先根据目标信息生成一个自定义字典。这通常比下载的通用字典更有效。

构建思路:

  • 公司/产品名:公司名称、产品名、品牌名的各种组合(全拼、简拼、大小写)。

    • 例如:目标为 xx公司,尝试 xx@2024, xx123, xxadmin, XX666。
  • 季节/年份 :2024, 2023, 2025, !@#2024, Season2024!。

  • 默认密码 :admin, password, 123456, root, default, pass。

  • 弱口令:见下面的"精选核心弱口令列表"。

工具推荐: CUPP 可以根据已知信息(如姓名、生日、宠物名等)生成个性化字典。


2. 精选核心弱口令列表(必试清单)

这是一个你应该始终优先使用 的"小而精"的列表。可以直接复制到 Burp Suite 的 Payload Options 中手动添加。

复制代码
# 超弱密码
admin
123456
password
12345678
123456789
admin123
12345
1234
1234567890
000000
root
abc123
password1
123123
qwerty
1q2w3e4r
1qaz2wsx

# 带简单符号的弱密码
admin@123
admin#123
123456!
password123
Admin123
Admin@123

# 默认凭证
admin:admin
root:root
guest:guest
user:user
test:test

# 空密码或简单重复
(留空)
adminadmin
passwordpassword

3. 知名的开源字典项目(推荐下载)

这些是安全社区公认的、高质量的开源字典项目,你可以下载它们的发布版本。

SecLists(首选,最全面)
  • 描述 :这是最著名、最全面的安全测试字典集合,不仅仅是密码,还包含用户名、路径、子域名等。这应该是你的首选下载目标。

  • 内容 :包含 rockyou.txt 的精简版、根据现实数据泄露整理的密码列表等。

  • 下载地址 : https://github.com/danielmiessler/SecLists

  • 爆破常用路径:

    • SecLists/Passwords/Common-Credentials/ (包含最常用的TOP密码)

    • SecLists/Passwords/Leaked-Databases/ (包含从泄露事件中整理的密码,如 rockyou.txt)

rockyou.txt(经典巨无霸)
  • 描述 :源于2009年RockYou公司数据泄露的1400万个纯文本密码。这是密码研究和大规模爆破的事实标准。

  • 注意:文件很大(约130MB),包含1.4亿条密码。建议使用其精简版或从SecLists中获取。

  • 获取方式 :在 Kali Linux 中,路径为 /usr/share/wordlists/rockyou.txt.gz,需要解压。你也可以在网上搜索下载。

kaonashi.py (RootedCON 2020)

二、分析结果

如何识别成功密码?

在 Intruder 的爆破结果中,您需要通过对比响应特征来找出那个"与众不同"的请求。主要关注以下几列:

  1. 首要关注状态码 302 :在登录爆破中,302 是成功的强信号。

  2. 对比响应长度:在一堆状态码相同的请求中,长度不同的那个往往是成功的。成功和失败后返回的页面几乎总是不同,因此长度也不同。

  3. 亲自验证 :双击可疑行,查看响应详情。对于 302,看响应头里的 Location 字段;对于 200,看响应体里是登录成功后的页面还是失败提示。

三、实例分析

HTTP响应(Response)

复制代码
HTTP/1.1 302 Found

Server: nginx/1.15.10

Date: Fri, 03 Oct 2025 11:42:29 GMT

Content-Type: text/html; charset=UTF-8

Connection: keep-alive

Expires: Thu, 19 Nov 1981 08:52:00 GMT

Cache-Control: no-store, no-cache, must-revalidate

Pragma: no-cache

Location: index.php

Content-Length: 367





<html>

<head>

<title>System Tools</title>

<link rel="stylesheet" href="css/styles.css">

</head>



<body>

	<div class="container">

		<div class="inner">

			You are currently logged in<p><div class="menu-system"><h3>System Tools</h3><a href='command.php'>Command</a><p></div><p><a href='logout.php'>Click to Logout</a>			

		</div>

	</div>

</body>

</html>

响应解读(逐行分析)

  1. HTTP/1.1 302 Found

    • 这是最重要的信号。302 状态码意味着服务器要求客户端(您的浏览器/Burp)重定向 到另一个页面。在登录场景中,这几乎总是登录成功的标志。
  2. Location: index.php

    • 这是 302 重定向的目标。它告诉浏览器:"登录成功,现在跳转到 index.php 页面"。

    • 值得注意的是,这里跳转回的 index.php 很可能不再是登录页面,而是登录后的主页或仪表板。

  3. 响应体内容

    • 尽管浏览器在收到 302 后会自动跳转,但服务器仍然返回了一段HTML内容。这段内容就是您看到的:

    • You are currently logged in :这行文字是最直接、最确凿的证据,明确声明您已处于登录状态。

    • 系统菜单 :<div class="menu-system"><h3>System Tools</h3><a href='command.php'>Command</a>... 这表明您获得了访问系统工具的权限,看到了普通未登录用户看不到的菜单项。其中 command.php 链接尤其值得关注,可能是一个命令执行功能,是渗透测试中的重要目标。

  4. 其他头部信息

    • Cache-Control: no-store, no-cache, must-revalidate 和 Pragma: no-cache:这些指令是为了防止浏览器缓存此敏感页面,这是Web应用程序的常见安全实践。

总结与下一步行动

  • 结论 :使用用户名 admin 和密码 happy 的组合可以成功登录该系统。

  • 验证 :您可以在浏览器中直接访问 http://192.168.226.138,使用 admin/happy 进行登录,应该能看到上述响应中的系统工具菜单。

  • 下一步:既然已经成功进入系统,您接下来的渗透测试可以围绕已发现的授权功能展开,例如:

    • 测试 command.php 页面,看是否存在命令注入漏洞。

    • 查看其他已解锁的功能菜单。

    • 尝试寻找权限提升或访问控制缺陷。

相关推荐
车软学堂3 小时前
从测试转开发,到底要补什么
网络·人工智能·python·功能测试·单片机·车载系统·自动化
明天也要努力学习4 小时前
IP 协议的相关特性
网络·网络协议·tcp/ip
说实话起个名字真难啊4 小时前
一次中风险漏洞处理复盘:从RSA密钥交换到全面启用TLSv1.3
网络
L0208246 小时前
Kubernetes Ingress|CNI 网络模型|Calico 网络策略|Pod 调度器完整实战教程
运维·网络·云原生·容器·kubernetes
启博网络6 小时前
下一代防火墙是什么意思?下一代防火墙可以抵御哪些网络攻击?
网络·防火墙
安教安全员通关宝6 小时前
2026年吉林安全员C3证考试题库+答案+解析
安全
躺柒6 小时前
读数据安全架构设计与实践17安全架构案例(下)
数据库·安全·零信任·安全架构·防火墙·无边界
HackTwoHub7 小时前
双通道红队 C2,MCP 接入 AI,全自动渗透实战利器,具备自动提权、进程伪装、无文件上线能力,载荷 AES 加密
安全·web安全·网络安全·系统安全·密码学·可信计算技术·安全架构
学页官方7 小时前
【安全实操】教培系统上线前的安全检查清单(20条)
安全