如何在BurpSuite保存响应体中的文件
在一次渗透中,我发现了一个可以任意下载文件的API,但是在Repeater(重放)模块中得到的PDF/DOCX这种文件,他在响应体中,有没有什么方便的方法让他保存下来?
整个测试环境,我们使用皮卡丘靶场的unsafedownload这个模块,想要练习试试的话,可以在这里试试。
利用插件保存单个文件
没什么好说的,这种方法就是使用BurpSuite插件的一个过程。
- 下载插件,这里面有个jar包:https://github.com/jeromekleinen/burp_savetofile
- 加载插件,导航栏”Extender” -> “Add” 然后选择
Save body to file.jar
- 使用插件,如下图,我们得到一个
test.xlsx
文件,我们
使用Intruder模块批量下载文件
如下图,我们确定了任意文件下载漏洞点所在的位置。然后就是一个批量化下载保存的过程了,下边一系列步骤,真是一个保姆级教学了。
首先我们确定好变量位置
然后添加要批量fuzz的文件列表
在Option选项卡中找到Add,添加提取规则
设置表达式,响应头一下的内容都截取。配置好之后点OK保存,然后点“start attack”
保存结果列表。
注意选项如下。然后点击“Save”,保存结果
我们得到结果,但缺点是这些结果,都在一个文件里。那如果是不同类型的文件该怎么办呢?
小结
还有一种方法就是使用Turbo Intruder这个插件,但自己尝试了一下,这个插件还要自己写脚本,Python2的脚本嵌入到了这个插件中,当我挨个写出文件的时候,发现文件中文乱码了,花了半天时间还没解决这玩意中文乱码的问题,遂放弃,这个实用性也不是很强,最好是能够将前边那个保存文件的插件再修改下,能够批量保存选中文件,不然还不如直接脱离Burp,直接写Python脚本来的快些。