1、Burpsuite初探
最开始遇到的问题是代理设置:设置好了之后发现无法拦截包,后来发现是因为浏览器中有一串小英文,说针对127.0.0.1和local永远不使用代理(如下图);后来查看本机地址访问靶机,结果发现刷新页面,地址又会自动变成127.0.0.1,问题仍然没有解决。

折腾了很久,搜了也有其他方式能解决,但是搜资料的时候发现,直接使用burp自带的浏览器不用设置代理,后面就没有继续倒腾,直接使用自带浏览器进行学习了。
2、intruder爆破
(1)拦截到包之后,发送到intruder模块。我的burpsuite是英文版本的,截图如下:

(2)发送到intruder模块后,具体如下图,需要先点击clear(红色圈出的地方1),这样会清除参数。紧接着选择你要爆破的参数,如下图中黄色圈出的地方,点击add(红色圈出的地方2),参数会被特殊符号包裹。截图中admin已点击add,password还没点击。

(3)设置完要爆破的参数后,需要选择爆破模式和上传爆破对应的字典。
折腾intruder模块时学习了怎么设置爆破的参数,怎么上传字典,以及四种爆破模式。具体的设置如下图,设置完之后点击Start attack。


(4)点击了Start attack后,发现没反应,实际上是在后台运行(如下图)。后来发现爆破速度特别慢,是因为burp社区版进行了限速。搜资料发现可以安装插件。


3、Turbo Intruder插件探索
(1)紧接着搜到可以安装插件Turbo Intruder,后面就开始安装插件(安装如下图),搜索到直接点击"install"即可。下面的截图是已经安装后的界面。

(2)安装完插件后,将拦截的包发送到Turbo Intruder ,如下图。

(3)插件设置参数和上传字典(使用脚本)的方式和intruder模块不一样。将要爆破的参数改为%s,Turbo Intruder 会把你字典里的每个值依次替换到 %s 的位置。如果你想爆破用户名,就把 admin 换成 %s。选择好脚本之后,attack在最下面,点击即可。

结果很快就出来了。爆破出来的结果,lenth和words和其他不一样的就是爆破出来的密码。因此password就是密码。

下面附我用的爆破脚本:
python
def queueRequests(target, wordLists):
engine = RequestEngine(endpoint=target.endpoint,
concurrentConnections=5,
requestsPerConnection=100,
pipeline=False
)
# 从文件读取密码字典
with open('/home/kali/Documents/jianyizidian.txt', 'r') as f:
for word in f:
word = word.strip() # 去掉换行符
engine.queue(target.req, word)
def handleResponse(req, interesting):
table.add(req)