专业的社区

选项:宏观编辑器

  • 最近更新时间:2022年5月17日

  • 阅读时间:4分钟

宏编辑器使您可以配置

记录宏

使用Burp的浏览器记录宏。录制宏时,Burp显示了代理历史,您可以从中选择用于宏的请求。您可以从先前提出的请求中进行选择,或重新记录宏并从历史记录中选择新项目。请注意,如果您不能使用浏览器记录新的宏代理拦截被打开。

选择要在宏中包含的项目时,请单击好的,这些项目显示在宏编辑器中。

配置宏观项目

宏编辑器显示宏中的项目列表。您可以通过更改订单,删除项目或重新记录宏来修改这些修改。您可以通过在列表中选择该请求来修改任何个人请求,并直接在请求查看器中进行编辑。

除了基本的请求序列外,每个宏还包括有关如何处理序列中的项目以及项目之间的任何相互依存关系的重要配置。要编辑宏观项目的配置,请在列表中选择它,然后单击配置项目按钮。

您可以配置:

  • 是否应将回复中收到的cookie添加到会话处理cookie jar。
  • 会话处理cookie jar的cookie是否应添加到请求中。

参数处理

对于请求中的每个参数,您可以配置是否应分配固定的预设值,还是从宏中的先前响应中得出的值。

从宏中先前响应中得出请求参数值的能力在某些多阶段过程中特别有用,并且在应用程序的情况下,应用程序积极地使用了CSRF令牌。参数推导基于参数名称,并请求的URL。如果指定应从先前的响应中派生参数的值,则BURP将检查该响应的任何源给定名称)。如果发现,BURP将从该响应中提取参数的值,并在正在处理的请求中对其进行更新。

当定义新的宏时,Burp试图通过识别可以从先前响应(表单字段值,重定向目标,链接中的查询字符串等)确定值来自动找到此类关系的任何关系。您可以根据需要手动覆盖自动分析。

自定义参数位置响应

BURP对宏观项目之间的参数匹配会自动为响应中的已知“正常”参数位置(例如表单字段值和链接中的查询字符串)起作用。在某些情况下,您需要的灵活性比这更多,并且能够在响应中指定包含参数的任意位置。例如,应用程序可以在JavaScript字符串中定义CSRF令牌,并将其动态添加到脚本生成的请求中。为了创建能够得出此参数的宏,您需要告诉BURP在包含脚本的响应中的参数位置,以及在后续请求中用于该参数的名称。

使用定义自定义参数对话框以指定自定义参数的名称,其配置的响应项中的位置以及从响应中提取的值是否为URL编码。这是使用响应提取规则对话框。完成此操作后,命名参数将用于后续宏请求(或由A的请求处理的请求会话处理规则)以正常方式如所述参数处理

重要的是要配置从响应中提取的值是否为URL编码。这样可以确保在后续请求中使用该值时可以正确编码该值,以反映是否需要对其进行URL编码。

重新分析宏

当定义新的宏时,Burp试图通过识别可以从先前响应确定值的参数来自动找到宏观项目之间的任何关系。如果您手动修改了宏中的项目,则可以使用重新分析宏按钮。

测试宏

当您配置了宏(包括从早期响应中的请求参数的任何派生)时,您可以使用测试宏功能以验证配置是否按预期工作。这将按顺序发布宏请求,并尝试根据您的配置衍生任何参数值。Burp将显示所有请求和响应,收到的任何cookie的值以及其成功或未能得出的值的任何参数的详细信息。