导语:本文讲的是利用Macros,帮助你自动化处理那些需要手动分析的模糊有效载荷。

Burp Suite是用于攻击web应用程序的集成平台,包含了许多工具。Burp Suite为这些工具设计了许多接口,以加快攻击应用程序的过程。所有工具都共享一个请求,并能处理对应的HTTP消息、持久性、认证、代理、日志、警报。

有很多工具可以用来对web应用进行自动化测试,但Burp Suite中的Macros是一个进行自动化测试的上佳方法,虽然它实现起来有些复杂。

本文讲的就是利用Macros,帮助你自动化处理那些需要手动分析的模糊有效载荷。

渗透测试中,在Web应用中执行参数和页面字段的模糊处理时,你会遇到一些与会话处理有关的问题。在多种情况下,用于终止会话的应用仅用于测试,这或许是由于一些安全对策引发的(例如:获得不安全的输入,用于注销的会话),又或许是在其他情况下,burp spider(一个映射 web 应用的工具)或 crawler被用于模糊注销页面参数以终止会话。

在这些情况下,进一步的扫描,探测和请求都会变得无效,这样,你就不得不执行重新登录并建立应用的会话。以前,我们都是手动进行处理的,但这实在是太麻烦了。于是,我注意到了Burp的会话处理功能。

在经过初步地探索后,我发现Burp通过一些基于Macros的规则就可以自动化处理。简单来说,如果是模糊参数导致的会话终止,Burp就可以使用凭据自动登录app,并继续扫描和探测。

前期配置

1.BurpSuite 1.7.21(免费版)

2.任何具有会话处理的网站(本文用的是http://demo.testfire.net

具体步骤

步骤1

如以下显示的网站,要具有登录功能。

11.1.png

步骤2

此时,我可以简单的在burp suite中实施拦截,并利用凭据来执行登录。

11.2.png

步骤3

进入网站的登录页面:

11.3.png

步骤4

现在为了测试会话处理,我可以将这个页面请求发送到burp的中继器选项卡(repeater tab),如果由于会话中断而导致会话被终止,那么就删除cookie。

11.4.png

步骤5

因为我有一个正确的会话,所以可以看到页面会话正在运行,最后我尝试删除cookie并再次测试。

11.5.png

步骤6

可以看到,会话被注销,我需要再次登录以继续测试。

11.6.png

步骤7

现在要做的就是恢复Burp Macros,使用NavigateTo方法:项目选项->会话->会话处理规则。

11.7.png

步骤8:

现在,我可以看到有一个默认规则,该规则使用来自Burp的cookie jar的cookie。

11.8.png

步骤9

单击添加按钮创建新规则:

11.9.png

步骤10

选择适合你和规则操作的规则描述,选择“检查会话有效”。

11.10.png

步骤11

一旦单击确定,会话处理编辑器就将启动,显示默认值并发出当前请求。向下滚动到“如果会话无效,请执行以下操作”界面。

11.11.png

11.11.2.png

步骤12

勾选”if session is invalid, perform the following action”可选框并单击添加宏,此时,你将获得具有所有代理历史记录的宏记录器。单击并选择具有登录凭据的执行登录页面。

步骤13

一旦你点击确定,宏编辑器将启动,你可以使用自定义名称命名,选择相关选项来模拟宏,重新记录,重新分析。

11.12.png

步骤14

在测试之前,配置参数以确定burp是否已经正确捕获了测试参数。

11.13.png

步骤15

现在设置全部完成,我可以执行一个测试宏。

步骤16

现在单击final scope ,并将URL范围设置为所有urls/suite scope/custom scope,以指导宏在哪里运行。

步骤17

我把所有URL都包括在这里,再测试一下我的宏:

11.14.png

步骤18

在中继器选项卡中,我正在尝试访问没有cookies的主页面。

11.15.png

步骤19

一旦我点击,Cookie将自动添加到请求中,页面将被加载!篡改Cookie值以检查会话:

11.16.png

11.16.2.png

以上就是我发现的简单的方法,burp如何有助于创建基于规则和宏的会话。

我可以使用我的测试有效载荷来简单的模糊输入字段,以检查XSS,SQLi,IDOR等漏洞。即使应用由于中间系统中断而超时,也可以在自动扫描或手动测试时保护会话免受垃圾输入的干扰。这样,macros将帮助你执行记录操作并在app里重新登录!

源链接

Hacking more

...