aws-samples/sample-security-agent-recorder
GitHub: aws-samples/sample-security-agent-recorder
一款跨浏览器扩展,用于录制 Web 应用访问的所有唯一域名并自动填充到 AWS Security Agent 的渗透测试配置中。
Stars: 3 | Forks: 0
# AWS Security Agent Recorder
一款跨浏览器扩展,可记录您的 Web 应用所访问的唯一域名,并自动将其填充到 [AWS Security Agent](https://aws.amazon.com/security-agent/) 渗透测试配置中。

## 功能介绍
当您在当前活动标签页中开启录制会话时:
1. 扩展会捕获该标签页的源作为 **Target URL**。
2. 它会重新加载标签页,并监控其发出的每一个 HTTP 请求。
3. 页面访问的每一个其他唯一源都会被添加到 **accessible URLs** 列表中。
4. 页面周围出现的柔和紫/蓝色边框会提醒您会话正在进行中。
5. 在 AWS Security Agent 的“创建”页面上,当您聚焦 Target URL、accessible URLs 或 Out-of-scope URLs 字段时,会弹出一个包含已记录值的面板。点击其中一个即可填充该字段。已填充的条目会显示绿色对勾,已排除的条目会显示红叉。
弹窗会显示 Target URL、不断更新的 accessible URLs 列表,以及“开始”、“停止”、“复制全部”和“清除”按钮。
所有数据都存储在 `storage.local` 中,绝不会离开您的浏览器。
## 安装
在 artifacts 文件夹中,下载与您浏览器相匹配的 zip 文件。
- `aws-security-agent-recorder-chrome-X.Y.Z.zip`
- `aws-security-agent-recorder-firefox-X.Y.Z.zip`
### Chrome(解压安装,持久化)
1. 将 Chrome 的 zip 文件解压到一个稳定的位置(只要您还在使用该扩展,就必须保留此文件夹)。
2. 打开 `chrome://extensions`。
3. 打开右上角的 **Developer mode**(开发者模式)。
4. 选择 **Load unpacked**(加载已解压的扩展程序),然后选中解压后的文件夹(即包含 `manifest.json` 的那个文件夹)。
5. 在工具栏的拼图图标菜单中固定该扩展,使其图标可见。
该扩展在浏览器重启后会保持安装状态。更新意味着需用更新版本替换文件夹内容,并在 `chrome://extensions` 的扩展卡片上点击刷新图标。
### Firefox(临时安装)
Firefox 会将扩展作为**临时(temporary)**附加组件加载,当您关闭 Firefox 时它会被移除。
1. 打开 `about:debugging#/runtime/this-firefox`。
2. 选择 **Load Temporary Add-on...**(加载临时附加组件...)。
3. 在文件选择器中,直接选中 Firefox 的 **zip 文件本身**,或者先将其解压,然后选中解压后文件夹中的 `manifest.json`。
4. 该扩展将出现在 **Temporary Extensions**(临时扩展)下,工具栏图标也会立即显示。
每次重启 Firefox 后,您都需要重复这些步骤。
## 使用说明
要使用该扩展,请按照以下步骤操作。
1. 打开您想要录制的页面。
2. 点击扩展图标打开弹窗。
3. 选择 **Start recording**(开始录制)。页面将重新加载,并且周围会出现柔和的边框。
4. 正常使用应用:浏览、登录、体验您希望覆盖的功能。每一个新的源都会显示在弹窗列表中。
5. 完成后选择 **Stop recording**(停止录制)。边框将会消失。
6. 按照[创建渗透测试](https://docs.aws.amazon.com/securityagent/latest/userguide/perform-penetration-test.html)的步骤进行操作。聚焦 Target URL 字段,并从面板中选择记录的值;对 Accessible URLs 和 Out-of-scope URLs 执行相同的操作。
7. 如果您更愿意手动粘贴,请在弹窗中选择相应域名以将其复制到剪贴板。

## 移除
### Chrome
1. 打开 `chrome://extensions`。
2. 找到 **AWS Security Agent Recorder**。
3. 点击 **Remove**(移除),然后进行确认。
4. 如果不再需要,请删除您之前加载的解压文件夹。
### Firefox
当 Firefox 关闭时,临时附加组件会被自动移除。要在会话期间移除它:
1. 打开 `about:debugging#/runtime/this-firefox`。
2. 在“Temporary Extensions”下找到 **AWS Security Agent Recorder**。
3. 点击 **Remove**(移除)。
以上两种方式都会同时清除扩展在 `storage.local` 中的数据。
## 从源码构建
如果您不想下载而是希望自己构建 zip 文件:
```
npm install
npm run package
```
该脚本会在 `dist/` 目录下生成 `dist/chrome/` 和 `dist/firefox/`(可作为已解压扩展加载)以及相应的 zip 文件。
标签:AWS, DPI, Web安全, 响应拦截, 数据可视化, 暗色界面, 流量录制, 浏览器扩展, 自定义脚本, 蓝队分析