ilyesHamdiii/GrantScope

GitHub: ilyesHamdiii/GrantScope

GrantScope 是一个证据驱动的 Entra OAuth 和服务主体调查工作台,帮助分析师从租户证据中推导出可解释的安全案件包。

Stars: 0 | Forks: 0

# GrantScope GrantScope 是一个用于 Entra OAuth 应用程序和 service principal 的证据驱动型调查工作台。 它帮助分析师从原始租户证据推导出可解释的案件包: - 哪个应用程序或 service principal 发生了更改? - 哪些权限或凭据扩大了影响范围? - 同意是租户范围还是用户范围? - 是否有明确的责任所有者? - 特权分配、凭据活动和首次使用是否构成了可疑序列? - 在采取遏制措施前应审查哪些证据? GrantScope 是一款调查产品,而非通用的安全态势仪表板。 ## 核心功能 - 使用 Graph 风格证据 ZIP 包的导入优先工作流 - 应用程序和 service principal 清单 - 委托 OAuth grant 分析 - 应用程序权限和 app-role 分配分析 - 凭证生命周期检查 - 具有链接应用程序回退机制的所有者评估 - 发布者和来源上下文 - 特权分配、凭据活动和快速首次使用的关联分析 - 包含严重性、置信度、证据和缺失数据说明的可解释调查结果 - 包含时间线和证据索引的分析师案件包 - 分析师工作流状态、分配、备注和审查历史 - HTML、Markdown 和 PDF 案件报告 - React 调查工作台 ## 演示场景 包含的合成租户包包含一个良性应用程序和三个高风险调查场景。 | 场景 | 预期结果 | |---|---| | NorthBridge Meetings | 良性协作应用;不应出现高危或严重调查结果 | | CloudSync Assistant | 具有敏感权限和较弱来源上下文的租户范围委托同意 | | Provisioning Bridge | 严重序列:特权权限、凭据添加、快速 service principal 使用 | | Directory Administration Integration | 具有较弱所有权和发布者上下文的高影响目录管理权限 | ## 架构 ``` Graph-style evidence ZIP | v FastAPI import endpoint | v Normalization layer | v PostgreSQL evidence model | +--> Detection and correlation engine | | | v | Explainable findings | | | v | Investigation case packets | +--> React workbench | +--> Analyst workflow +--> HTML report +--> Markdown report +--> PDF report ``` ## 本地技术栈 | 组件 | 技术 | |---|---| | API | FastAPI | | 数据库 | PostgreSQL | | 关联引擎 | Python | | 前端 | React 和 Vite | | PDF 生成 | WeasyPrint | | 运行时 | Docker Compose | ## 本地启动 ``` docker compose up --build -d ``` 打开: ``` Workbench: http://localhost:5173 API docs: http://localhost:8000/docs Health: http://localhost:8000/health ``` ## 运行演示 ``` .\scripts\run-demo.ps1 ``` ## 验证项目 ``` .\scripts\verify-project.ps1 ``` ## 实时 Entra 验证 GrantScope 已通过受控的 Microsoft Entra 实验室租户进行验证,使用了只读的 Microsoft Graph 收集器。 验证流程如下: 1. 导出 Entra 应用程序、service principal、所有权、凭据、同意、角色分配、审计和登录证据。 2. 将生成的 ZIP 导入 GrantScope。 3. 生成可解释的分析师案件。 4. 通过基线感知检测减少正常的外部企业应用程序噪音。 5. 检测租户拥有的收集器所有权缺失。 6. 在 Entra 中添加明确的责任所有者。 7. 重新导出并重新导入证据,验证所有权调查结果是否已消失。 该收集器使用只读 Graph 权限,不会修改租户配置。 ## 安全边界 GrantScope 不存储或打印: - Client secrets - Access tokens - Refresh tokens - 私有证书材料 - 原始密码凭证值 仅保留凭元数据、证据引用、审计标识符和关联上下文。 ## 当前局限 - 权限风险目录特意设计得较为狭窄,主要关注高影响权限。 - 实时 Microsoft Graph 收集功能已计划开发,但尚未实现。 - 本地原型没有身份验证、RBAC、租户隔离或不可变审计跟踪。 - 示例数据为合成数据,不得与真实租户导出数据混淆。 ## 文档 - docs\ARCHITECTURE.md - docs\DEMO_WALKTHROUGH.md - docs\SECURITY_AND_LIMITATIONS.md - docs\GRAPH_CONNECTOR_PLAN.md - docs\PHASE_7_PDF_REPORTING.md
标签:OAuth, React, Syscalls, 云计算, 安全调查, 测试用例, 版权保护, 规则引擎, 身份与访问管理, 逆向工具