BMR7AICyber/SCOPE-BrowserExtension
GitHub: BMR7AICyber/SCOPE-BrowserExtension
一款面向企业安全团队的浏览器扩展风险审计工具,通过细粒度权限威胁模型实现实时风险评分和高危扩展告警。
Stars: 1 | Forks: 0
# S.C.O.P.E. 扩展治理审计工具
一款浏览器扩展 (Manifest V3),为本地安装的扩展提供深度风险审计和事件驱动的治理监控。
## 功能特性
### 🔍 深度风险审计(实时威胁分析)
- **自动扫描**:每次打开弹窗时触发全面的扩展分析
- **精细化风险评分**:基于 70 多个细粒度权限威胁模型的标准化 0-100 评分
- **详细威胁描述**:每个权限包含具体的威胁情报(例如,针对 nativeMessaging 的“威胁:远程代码执行 (RCE)”)
- **风险分类**:严重 (80-100) | 高 (60-79) | 中 (40-59) | 低 (0-39)
- **启发式检测**:过度授权模式检测(分数 > 70)和基于 manifest 的提示拦截分析
- **深度 Manifest 检查**:具有 2 秒超时保护的可选安全检查,防止挂起
- **基于权限的评分**:针对所有浏览器 API 和主机权限的细粒度威胁权重
- **可视化威胁推理**:将鼠标悬停在权限上可查看具体的威胁场景
### 🛡️ 事件驱动的安全警报(当前)
- **智能警报策略**:仅针对关键权限(nativeMessaging, debugger, proxy, webRequest, webRequestBlocking)或广泛的主机访问权限(, *://*/*)触发通知
- **后台监控**:通过 chrome.management 事件持续检测新安装的风险扩展
- **无通知骚扰**:布尔门控机制防止对低/中风险扩展发出警报
- **发现日志**:已检测到的风险安装的历史审计跟踪
- **基线感知**:无论基线状态如何,都能检测风险安装
### 📊 权限评分
#### 关键权限(最高风险)
- `nativeMessaging` - 直接系统访问
- `debugger` - 调试能力
- `proxy` - 网络代理控制
- `webRequest` / `webRequestBlocking` - 请求拦截
- `management` - 扩展管理
#### 广泛主机访问(高风险)
- `` - 所有网站
- `*://*/*` - 所有协议和主机
#### 中 / 低风险
- 历史记录、书签、会话、隐私(65 分)
- 标签页、窗口、下载(35-50 分)
- 存储、通知、右键菜单(15-30 分)
## 安装
### 前置条件
- Chrome 浏览器(版本 88+)
- 对 Chrome 扩展开发有基本了解
### 设置步骤
1. **克隆或下载**此项目文件夹:
SCOPE-BrowserExtension/
├── manifest.json
├── background.js
├── popup.html
├── popup.js
├── popup.css
├── icons/
│ ├── icon-16.png
│ ├── icon-32.png
│ ├── icon-48.png
│ └── icon-128.png
└── README.md
2. **创建图标文件**(见下文图标生成)
3. **加载未打包的扩展**:
- 打开 Chrome → 设置 → 扩展程序
- 启用**开发者模式**(右上角开关)
- 点击 **加载已解压的扩展程序**
- 选择 `SCOPE-BrowserExtension` 文件夹
- 扩展程序将出现在您的工具栏中
4. **验证安装**:
- 图标出现在扩展工具栏中
- 点击图标打开弹窗
- 扩展自动扫描已安装的扩展并显示风险分析
## 使用说明
### 快速入门
1. **打开弹窗** - 点击 Chrome 工具栏中的 S.C.O.P.E. 图标
2. **自动扫描开始** - 扩展自动分析所有已安装的扩展
3. **查看风险评分** - 扩展按风险评分(0-100)排序,并以颜色编码显示严重程度
4. **切换详情** - 点击“显示详情”查看单个权限和威胁推理
### 理解风险评分
- **80-100 (🔴 严重)**:能够引发直接安全威胁的权限(RCE、恶意软件投放、MitM 攻击)
- **60-79 (🟠 高)**:重大数据访问风险(历史记录、书签、会话劫持)
- **40-59 (🟡 中)**:需要安全意识的 moderate 风险
- **0-39 (🟢 低)**:直接安全影响极小
### UI 控件
| 控件 | 操作 |
|---------|--------|
| **显示详情** | 切换带有威胁分析的详细权限视图 |
| **自动扫描** | 每次打开弹窗时自动触发 |
### 后台安全监控
该扩展在后台持续监控扩展生态系统:
- 自动检测新安装的风险扩展
- 根据关键权限或广泛主机访问权限发送浏览器通知
- 维护已检测威胁的审计日志
- 静默运行 - 无需用户操作
## 通知策略
浏览器通知在以下情况自动触发:
- ✅ 新扩展已安装 **且**
- ✅ 具有关键权限:`nativeMessaging`、`debugger`、`proxy`、`webRequest`、`webRequestBlocking` **或**
- ✅ 具有广泛主机访问模式:`` 或 `*://*/*`
这确保安全团队能立即感知高风险安装,而不会产生通知疲劳。
## 后台 Service Worker
### 事件监听器
- `chrome.management.onInstalled` - 检测新扩展,检查关键性,如有风险则发出警报
- `chrome.management.onEnabled` - 如果存在基线则触发漂移扫描
- `chrome.management.onDisabled` - 如果存在基线则触发漂移扫描
- `chrome.management.onUninstalled` - 如果存在基线则触发漂移扫描
### 存储结构
#### 基线 (`scope_baseline_v1`)
```
{
"createdAt": "2024-12-15T10:30:00Z",
"snapshot": [
{
"id": "extension_id",
"name": "Extension Name",
"version": "1.0.0",
"enabled": true,
"installType": "normal",
"type": "extension",
"permissions": ["storage", "management"],
"hostPermissions": [],
"mayDisable": true
}
]
}
```
#### 最后漂移增量 (`scope_last_delta_v1`)
```
{
"ok": true,
"reason": "manual_popup_scan",
"timestamp": "2024-12-15T10:35:00Z",
"baselineCreatedAt": "2024-12-15T10:30:00Z",
"delta": {
"added": 1,
"addedList": [...],
"changed": 0,
"changedList": [],
"removed": 0,
"removedList": []
}
}
```
#### 发现项 (`scope_findings_v1`)
```
[
{
"at": "2024-12-15T10:32:00Z",
"type": "new_install",
"ext": { /* normalized extension object */ },
"triggers": ["nativeMessaging"],
"baselineExists": false
}
]
```
## 安全与隐私
### 内容安全策略(严格)
- `script-src 'self'` - 仅允许打包脚本
- `object-src 'none'` - 无插件
- `base-uri 'none'` - 无 base 标签重定向
### 无远程代码
- 所有脚本和样式均已打包
- 无 eval,无 unsafe-inline
- Manifest 拦截是安全的:仅读取 chrome.management 数据
### 数据存储
- 所有数据本地存储在 `chrome.storage.local` 中
- 无云同步,无外部调用(除了带超时的 manifest 获取)
- 不收集或传输个人数据
### 未出现通知
- ✅ 验证 manifest.json 中的 `notifications` 权限
- ✅ 安装一个具有关键权限的新扩展
- ✅ 检查 Chrome 通知设置(未静音)
- ✅ 打开 DevTools:扩展程序页面,点击 "Service Worker" 查看日志
### 为什么此版本中没有治理 UI?
- ✅ 当前版本专注于威胁情报和风险检测
- ✅ 准确的威胁评分是治理工作流的基础
- ✅ 治理功能(基线、漂移检测)计划在未来版本中发布
- ✅ 请参阅下文的“未来路线图”部分,了解计划中的治理能力
### 权限错误
- ✅ 此扩展需要:`management`、`storage`、`notifications`
- ✅ 用户必须在首次加载扩展时接受权限
- ✅ 无法在不移除扩展的情况下禁用
## 开发
### 文件结构说明
- **manifest.json**:扩展配置、权限和 service worker 入口点
- **background.js**:处理安全警报和发现日志的事件驱动 service worker
- **popup.html**:符合严格内容安全策略的 UI 布局
- **popup.css**:具有风险等级颜色编码的现代样式 UI
- **popup.js**:深度审计逻辑、风险评分引擎和威胁分析(70+ 权限威胁模型)
### 关键设计决策
1. **威胁情报优先**:准确的检测先于治理
- 深度权限建模(70+ 威胁配置文件)验证评分准确性
- 事件驱动的警报建立操作肌肉记忆
- 威胁评分为未来的治理策略设计提供依据
2. **事件驱动监控**:无持续后台扫描
- 警报仅针对新安装触发 (chrome.management.onInstalled)
- 尊重 service worker 生命周期效率
- 无需 `chrome.alarms` 权限
3. **严格布尔门控**:防止警报疲劳
- 二元决策:关键权限或广泛主机访问 = 警报
- 无基于阈值的评分噪音
- 清晰的安全团队行动触发器
4. **零依赖**:纯 JavaScript 实现
- 快速启动,最小内存占用
- 透明的安全审计(无隐藏依赖)
- 无来自第三方库的供应链风险
## 未来路线图
### 治理与合规基础(计划中)
此版本建立了企业级就绪的威胁情报。即将发布的版本将分层治理能力:
#### 第 2 阶段:基线与漂移管理
- **基线建立**:捕获已知良好的扩展状态以进行合规性验证
- **自动漂移检测**:跟踪相对于基线的添加、修改和移除
- **变更日志**:带有时间戳、旧/新值和变更发起者的完整审计跟踪
- **执行仪表板**:治理合规状态的单窗格视图
#### 第 3 阶段:企业策略与控制
- **权限策略**:为组织标准定义批准/限制的权限
- **策略违规**:当已安装的扩展违反既定策略时发出警报
- **管理员通知**:针对策略违规和风险升级的安全团队通知
- **偏差报告**:用于合规审计和安全审查的预构建模板
#### 第 4 阶段:多环境管理
- **批量设备报告**:跨受管设备收集扩展清单
- **多配置文件支持**:管理不同用户角色和环境的基线
- **集成 API**:与安全信息和事件管理 (SIEM) 系统连接
- **自动修复**:在违反策略时建议或强制移除扩展
### 为什么采用分阶段架构
这种模块化方法确保:
- ✅ **威胁准确性**在治理工作流依赖之前得到验证
- ✅ 来自审计的**用户反馈**为治理策略设计提供依据
- ✅ **Beta 稳定性** - 核心威胁检测在增加复杂性之前得到强化
- ✅ **向后兼容性** - 治理层不会破坏现有审计功能
## 许可证
MIT 许可证 - 可随意使用和修改
## 支持
如有问题、疑问或功能请求,请在 GitHub 仓库提交 issue。
**S.C.O.P.E.** - Simple Content-Aware Permission Examination
一款面向具备安全意识的浏览器用户和管理员的工具。
标签:GenAI安全, IP 地址批量处理, Manifest V3, RCE防护, SaaS安全, WSL, 事件驱动监控, 企业治理, 威胁情报, 安全审计工具, 开发者工具, 恶意插件检测, 提示词窃取, 数据可视化, 有毒权限组合, 权限治理, 浏览器扩展审计, 网络安全, 自定义脚本, 身份保护, 速率限制, 错误基检测, 隐私保护, 静态代码分析, 风险评分