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, 事件驱动监控, 企业治理, 威胁情报, 安全审计工具, 开发者工具, 恶意插件检测, 提示词窃取, 数据可视化, 有毒权限组合, 权限治理, 浏览器扩展审计, 网络安全, 自定义脚本, 身份保护, 速率限制, 错误基检测, 隐私保护, 静态代码分析, 风险评分