一、LiveHttpHeaders之安装
自行百度
二、LiveHttpHeaders主窗口
根据我们目的的不同,LiveHttpHeaders有两种启动方法:当我们只想监视通信量的时候,可以从浏览器的“查看”菜单中选择“侧栏”菜单项,最 后选择Live HTTP Headers菜单项;如果要使用该工具全部特性的话,则需要通过单击“工具”菜单中的Live HTTP Headers项来打开它,如下图所示。
LiveHttpHeaders主窗口中有多个选项卡,不同的选项卡对应于不同的功能。窗口的中间部分显示的是发出的请求和收到的响应,而各个请求 -应答对之间有水平线进行分隔。该窗口底部包含LiveHttpHeaders的动作按钮以及规定是否启用捕获模式的“Capture”复选框。选中这个 按钮可以停止LiveHttpHeaders向下滚动,以便对已经产生的通信流量进行分析。
三、利用LiveHttpHeaders重放请求
除了监视HTTP流量外,我们还能利用LiveHttpHeaders重放一个请求,这对于Web 应用程序的安全性测试来说非常重要。LiveHttpHeaders使我们能够轻松读写之前的请求,所以也就能够方便地通过修改该请求的各个部分来测试程 序的弱点和缺陷。要进行重发的话,只要在窗口中间部分已列出的请求中选择一个,然后在窗口底部单击“Replay”按钮就会弹出如同图7中看到的那样的窗 口,我们能够在此对该请求进行各种修改,例如我们可以添加额外的头部,改变请求方式(GET或POST),或者修改发往服务器的参数,等等。对请求做好修 改后,单击“Live HTTP Replay”对话框底部的“Replay”按钮即可实现该请求的重发。
重放可能是LiveHttpHeaders中最有用的功能,因为它直接把请求的结果加载到浏览器中,这正是各Web代理程序所不具备的,如Burp。利用重放窗口,我们可以进一步利用浏览会话进行各种修改并查看其结果。
四、修改POST参数
正如前面提到的那样,我们能够利用重放功能来改变请求的任何部分,其中包括POST参数,如图8所示。注意,改变POST 请求时,需要注意头部中的Content-Length参数,因为LiveHTTPReplay不能动态提供请求内容的长度值。虽然大多数Web服务器/ 应用程序并不关心该值的对错,但是按照RFC的规范,该头部是必需的。如果不包含这个值,当使用了入侵检测系统(IDS)监控Web通信流量时,就会引起 IDS报警。幸运的是,LiveHttpHeaders提供了一个长度计数器,它位于该窗口的左下方,我们可以利用它来插入我们的内容长度值。
除GET和POST请求之外,我们还可以利用这个工具通过TRACE、TRACK 和OPTIONS方式来测试Web服务器。例如,为重放工具提供下列命令,就可以测试一个Web服务器是否允许无限制的文件上载。
五、过滤功能
最后要介绍的是如何过滤掉不想要的请求类型,这会在检查大型Web 应用程序时减少我们的工作量。首先单击Live HTTP Headers主窗口中的Config选项卡,如下图所示:
通过该配置视图,我们可以排除和包括匹配特殊正则表达式规则的URL。使用“Filter URLs with regexp ”和“exclude URLs with regexp ”,可以根据请求的URL来规定哪些类型的请求是我们想要的。在上图中,以.gif、.jpg、.ico、.css和.js 结尾的请求将会排除在Headers视图之外。
六、小结
本文中,我们对LiveHttpHeaders在安全测试方面的功能做了详细的介绍。总的来说,在发现XSS缺陷方 面,LiveHttpHeaders是最常用的工具之一。我们可以通过几次点击就能很轻松地查看请求的内部细节,修改并重放它们。如果您留心观察的话,您 就会发现LiveHttpHeaders重放的每个请求的结果,仍会进入浏览器窗口。与其它的测试工具例如应用程序代理等不同的 是,LiveHttpHeaders提供了一个可视化的结果,这能帮你更快地理解它们。