本文以pikachu靶场作为演示简单介绍了Burpsuit的Intruder模块
0x01 Burpsuite Intruder模块简单介绍
首先,介绍下burpsuite intruder模块的相关设置,以下三个框分别是并发线程设置(免费版不可修改此处)、失败重试次数、间隔时间设置。
Rerequest Headers介绍:
如果选中‘update Content-Length header’框,Burp Intruder 会使用每个请求的 HTTP 主体长度的正确值,添加或更新这个请求里 HTTP 消息头的内容长度。这个功能对一些需要把可变长度的有效载荷插入到 HTTP 请求模板主体的攻击是很有必要的。这个 HTTP 规范和大多数 web 服务器一样,需要使用消息头内容长度来指定 HTTP 主体长度的正确值。如果没有指定正确值,目标服务器会返回一个错误,也可能返回一个未完成的请求,也可能无限期地等待接收请求里的进一步数据。
如果选中‘set Connection: close’框,则 Burp Intruder 会添加或更新 HTTP 消息头的连接来请求在每个请求后已关闭的连接。在多数情况下,这个选项会让攻击执行得更快。–来自 https://www.cnblogs.com/yufusec/p/9179625.html
Payload type介绍
Simple list:简单字典
Runtime file:运行文件
Custom iterator:自定义迭代器
Character substitution:字符替换
Recursive grep:递归查找
Illegal unicode:非法字符
Character blocks:字符块
Numbers:数字组合
Dates:日期组合
Brute forcer:暴力破解
Null payloads:空payload
Username generator:用户生成
Copy other payload:复制其他payload
0x02 接下载分别用三种模式进行实操
Sniper:
Attack type 选择Sniper
这是抓到的最初的数据包,需要爆破的地方为username和password,设置这两个参数为payoad位置。
payload选择Runtime file然后添加一个字典文件作为payload,Sniper模式同时最多只能选择一个位置进行payload替换,
以下是我所加载字典(pass.txt)的内容,0这条数据是原始的数据包(未作payload替换),
Burpsuite会先对第一个位置(username)进行爆破(第二个位置不变),直到字典所有内容跑完,
然后对第二个位置(password)进行爆破,直到字典所有内容跑完,
Battering ram:
同样,添加一个字典作为payload后进行爆破,该模式下会同时对选定的两个位置进行替换。
同时替换为root:
同时替换为ggg:
Ptichfork:
每个变量设置一个payload,分别使用对应的字典对变量进行同时替换;
Ptichfork模式会对每个位置分别设置一个Payload,
以这两个位置为例,会分别用自己的payload逐个进行替换。
两个位置分别以两个字典的第一个payload进行替换:
两个位置分别以两个字典的第五个payload进行替换:
Cluster bomb:
需要为每个变量设置一个payload ,分别使用字典内容组合对变量进行替换;
该模式下会对两个payload进行类似排列组合的方式将两个payload的内容进行逐个匹配
0x03 爆破结果查看
可对结果进行数据包长度排序来找到成功登录对应的账户和密码
也可以添加匹配字符,登陆失败会显示not exists,这里添加not exists为关键词进行测试,登录成功也就没有匹配到not exists