当前位置: 当前位置:首页 > 知识 > burpsuite爆破密码正文

burpsuite爆破密码

作者:休闲 来源:娱乐 浏览: 【大 中 小】 发布时间:2026-10-17 06:21:07 评论数:

打开 Burp Suite,破密把浏览器代理设成 127.0.0.1:8080,破密访问目标登录页,破密随便输入个账号密码点登录。破密Proxy 的破密 HTTP history 里立刻多出一条 POST 请求,里面明晃晃写着 username=admin&password=123456。破密这条请求就是破密接下来要折腾的原材料。

右键那条请求,破密选 Send to Intruder。破密Intruder 面板里四个标签页,破密Positions 是破密第一步。Burp 已经自动标出几个参数位置,破密但它的破密判断不一定准。点右边的破密 Clear §,所有标记清掉。破密然后手动选中密码的值 123456,点 Add §,让它变成 §123456§。攻击类型选 Sniper,只爆破这一个位置就够了。用户名固定为 admin,别动它。

切到 Payloads 标签。Payload set 选 1,Payload type 保持 Simple list。下面那个大文本框,把候选密码一行一个粘进去。密码从哪来?可以翻翻之前收集的字典,rockyou.txt 前一千条够跑一阵了。也可以根据目标信息定制——比如网站叫 xx公司,那就试试 xx公司123、xx公司2024、xx公司@admin 这类组合。字典质量直接决定爆破效率,拿几万条通用弱密码硬怼,大概率跑一晚上也出不来结果。

Payload 编码和加密那块先别碰。除非目标系统对密码做了前端加密,否则默认明文提交就行。真遇到 MD5 或者 RSA 加密的登录接口,得先逆向前端 JS,搞清楚加密逻辑,再用 Burp 的 Payload processing 规则或者写个扩展来处理。这一步劝退不少人,但绕不过去。

点右上角 Start attack。Intruder 弹出新窗口,表格里一行行刷出来。Length 列的数字如果和绝大多数不一样,那行就值得多看两眼。比如大部分响应长度是 4231,突然有一行是 3892,点开 Response 看看,很可能就是登录成功跳转的页面。Status code 从 200 变 302 也是典型信号。

有次帮朋友看个后台,跑了两百多条密码没动静。后来注意到响应里有个字段叫 remain_attempts,每失败一次数字减一。原始请求里没这个字段,是服务端返回的。朋友说这系统锁三次就封 IP。那就不能硬爆了,得换策略——要么找 IP 代理池,要么转去社工钓鱼。Burp 的 Intruder 本身不解决封禁问题,它只是把请求批量发出去的工具。

再说个实际场景。某次遇到登录接口返回统一 200,成功失败都是 200,页面内容也几乎一样。但仔细对比响应体,成功时 Set-Cookie 里多了个 sessionid,失败时没有。这时候 Length 列看不出来,得在 Intruder 的 Options 里勾上 Grep-Match,把 sessionid 加进去,让它标红显示。这招对付那些不按套路出牌的后端特别管用。

爆破跑完不代表结束。如果字典跑空了还没结果,检查三件事:请求里有没有 CSRF token 每次都在变;账号是不是被锁了;密码字段是不是被前端加密过。CSRF token 的情况最麻烦,得配合宏(Macros)先发一个 GET 拿 token,再带着 token 发 POST。Burp 的 Project options 里能配 Session handling rules,自动完成这套流程。

最后提一句法律边界。没授权就对别人系统跑 Intruder,属于违法行为。自己搭靶场练手,或者拿甲方书面授权,这两条路随便走。DVWA、WebGoat 这些开源靶场足够把 Burp 爆破流程跑熟。技术本身没有对错,用在哪才是关键。