Rapid7 AppSec Chrome插件图片

用于Chrome的Rapid7 AppSec插件添加了有用的功能,如记录登录活动和从InsightAppSec控制台重播攻击。使用该插件了解流量如何在服务器、应用程序和身份验证层之间移动。

为了充分利用Rapid7 AppSec插件,我们将浏览以下用例:

  • 验证漏洞通过重播漏洞攻击。通过重放攻击,可以观察攻击流量,判断漏洞是否有效。
  • 录制宏的身份验证使用插件,并播放身份验证序列,以跟踪用户在身份验证期间的操作。
  • 记录流量验证在Traffic文件中跟踪并发送前端应用程序和后端服务器的请求。然后,您可以导入该文件,以便在应用程序中使用和引用。

安装插件

  1. 确保您使用的是最新版本的Chrome浏览器。
  2. 用于Chrome页面的Rapid7 AppSec插件,点击添加到浏览器
  3. 在扩展弹出框中,单击添加扩展.当成功安装插件时,会出现一个通知。

验证漏洞

在InsightAppSec中,您可以从扫描报告或漏洞中访问漏洞并重播攻击。通过重播攻击,您可以监视攻击流量,以确定漏洞是否有效。您还可以在请求生成器中编辑请求,查看更改是否修复或进一步验证漏洞。

使用攻击重播验证漏洞的工作流程

之后安装插件,你可以生成扫描报告查看扫描中的漏洞并重放攻击。

扫描报告验证

  1. 所有应用程序页面,选择您想要验证的应用程序。
  2. 在“应用程序详细信息”页面上,选择要为其生成报告的扫描。
  3. 点击生成报告
  4. 给报告一个名称并选择HTML导出。
  5. 当报告可用时,重放攻击。
    1. 选择攻击类型,单击重放攻击
    2. 在“漏洞验证器”窗口中,使用顶部的选项卡在发生的攻击流量中的步骤之间进行切换。
    3. 在每个选项卡上单击发送使用Request Builder验证每个攻击。响应头和响应体将返回攻击信息。

验证的脆弱性

  1. 所有应用程序页面,选择您想要验证的应用程序。
  2. 弱点选项卡上,选择要验证的漏洞。
  3. 当漏洞验证器窗口打开时,重新执行攻击。
    • 选择攻击类型,单击重放攻击
    • 在“漏洞验证器”窗口中,使用顶部的选项卡在发生的攻击流量中的步骤之间进行切换。
    • 在每个选项卡上单击发送使用Request Builder验证每个攻击。响应头和响应体将返回攻击信息。

记录和测试宏验证

Rapid7 AppSec宏是一系列动作,比如点击网页上的一系列按钮或输入文本。一旦你安装了AppSec Chrome插件,你可以使用宏来记录需要认证到一个应用程序或访问一个特定的部分,你的应用程序,不能纯粹通过爬行访问。您可以记录身份验证与Rapid7 AppSec插件InsightAppSec在AppSec插件的“宏录制器”选项卡中。“播放”选项运行用户执行的相同操作序列。

记录和回放宏认证序列的工作流程

之后安装插件,你可以记录并回放身份验证序列并在重新观看身份验证回放之前编辑请求。

单击此处展开Rapid7 AppSec插件记录的数据列表。

数据记录

数据 描述
宏事件列表 宏记录器事件列表。
宏观事件 单个宏事件。
WindowIndex 在身份验证期间,浏览器将打开一个不同的窗口,然后将您重定向回原始窗口。
0-窗户没有打开。
1.-打开了一个新窗口。
2.或更多——随着浏览器窗口数量的变化,该数量将保持递增。
EventType 您在浏览器中所采取的操作。有关更多信息,请参见下面的事件类型表。
JavaScript 自定义JavaScript可以在以下情况下使用:<数据> < ![CDATA [ ____ ]]>
使用加密数据 该字段决定字段是否EncryptedData > <例如密码的使用。对于大多数宏事件类型,该字段将为0,因为您可能没有传递加密的数据。
0—数据未加密使用领域。
1.—数据已加密EncryptedData > <使用。
当你传递一个加密的值,比如密码,这将是1,并且在EncryptedData > <部分。当设置为0时,<数据>会有价值的。
数据 要传递的值或者要与定义在一起的动作
通配符 属性中可以使用通配符<数据>字段。例如,如果登录按钮是用一个新值动态生成的,比如' login-5423 ',而下一次登录时该值是' login-7668 ',则可以通过在<数据>字段。
加密数据 此字段与UseEncryptedData一起使用。如果设置为1,则将包含在身份验证序列期间要传递的加密值。这可以使用AppSecToolkit使用Rapid7加密选项。
ElementPath 这个字段定义了在浏览器中发生特定事件的指定位置的XPath。它与字段一起工作。是要在字段和中输入的实际值字段的实际路径。如果您使用的是JavaScript宏事件,[CDATA[]]在中将为空 因为值将定义在
期间 特定宏事件执行所需的时间(以毫秒为单位)。
-使可能:该字段定义是否启用宏事件。
0—禁用该事件。
1.—默认值和所有宏事件都启用。
可选择的 此字段允许您根据需要切换特定宏事件
0-这是不可选择的。宏事件必须成功,宏才能继续下一步。
1.-宏是可选步骤。登录后有操作时使用1,例如安全问题或身份验证后的一次性弹出窗口。

事件类型

事件类型 描述
延迟 此事件用于在两个宏事件之间添加时间延迟。
手杖 此事件类型指示单击页面上需要单击操作的元素的操作。新页面、现有页面上的新内容或与特定元素的交互将返回手杖
DriverSetControlValue 此事件指示将参数或值发送到您可能已单击的字段的操作手杖,例如用户名和密码。DriverSetControlValue将在发送值之前清除该字段。
驱动键 该事件类型类似于DriverSetControlValue,但它模拟的是用键盘输入键值时发送的情况,而不仅仅是整个值集。驱动键可以如果需要,追加和前置现有值。
点击 此事件类型指示单击页面元素的操作,该操作需要类似的单击操作手杖. 单击“与DOM(文档对象模型)交互”。
SetControlData 此事件指示将参数或值发送到您可能在期间单击的字段的操作点击. 有些事件是用户名和密码。

DriveClick、DriverSetControlValue、Click和SetControlData之间的差异

手杖DriverSetControlValue-这些操作是在操作系统级别利用特定的web驱动程序来执行模拟鼠标点击或键盘按下的命令。
单击并设置控制数据-这些是与DOM(文档对象模型)交互的事件。

您可以使用DriverClick和DriverSetControlValue或Click和SetControlData作为宏事件与应用程序的身份验证序列进行交互。


记录和回放登录验证

  1. 在Rapid7 AppSec插件中宏记录器页签,输入要记录的站点的URL地址或本地IP地址。
  2. 点击记录验证. site recorder窗口顶部的消息确认插件正在录制。
  3. 在您正在录制的网站的登录页面上,输入您的凭据并登录。
  4. 登录后,单击取消按钮关闭窗口。
  5. 在插件中,选择宏记录器选项卡以查看所记录序列的XML输出。
  6. 在播放序列之前,关闭插件打开的所有窗口。
  7. 点击回放

在InsightAppSec中播放

要在InsightAppSec中回放序列,请下载.rec文件并导入到宏身份验证选项卡

记录和导入流量文件

您可能会遇到使用InsightAppSec爬虫不支持的技术构建的web应用程序。您可以使用web代理工具(如Rapid7 InsightAppSec插件中的流量记录器)对此类应用程序进行身份验证。使用代理工具,您可以在流量文件中记录前端应用程序和后端服务器之间的交互(如HTTP GET和POST请求)。InsightAppSec可以重播这些交互以在应用程序中进行身份验证。

记录和导入流量文件的工作流程

之后安装插件,你可以记录来自插件的流量或其他工具,导出录制的文件,然后导入到InsightAppSec

使用Rapid7 AppSec插件录制

  1. 在Rapid7 AppSec插件中流量记录仪页签,输入要记录的站点的URL地址或本地IP地址。
  2. 点击记录验证. site recorder窗口顶部的消息确认插件正在录制。
  3. 在您正在录制的网站的登录页面上,输入您的凭据并登录。
  4. 登录后,单击取消按钮关闭窗口。
  5. 在Rapid7 AppSec插件中,单击下载(* .har)

进口InsightAppSec

您可以在其他应用程序或应用程序中使用此文件导入到InsightAppSec