BadAsh99/workforce-sentinel
GitHub: BadAsh99/workforce-sentinel
一个零依赖的端点安全自动化演示工具,整合了加固偏移检测、KEV 优先级漏洞匹配和声明式 SOAR playbook 引擎,用于展示企业级安全编排的概念实现。
Stars: 0 | Forks: 0
# Workforce Sentinel
一个小巧、零依赖的端点安全自动化演示:它扫描设备群以检测**安全态势/加固偏移**,识别**基于威胁情报 (KEV) 优先级的漏洞**,并运行一个**声明式 SOAR playbook 引擎**,将发现结果转化为自动响应动作。
本项目作为作品集构建,旨在演示企业级技术栈(Cortex XSIAM / XSOAR、Tenable、CrowdStrike)在大规模场景下实现的概念。包含示例数据、模拟动作以及真实逻辑。
## 运行说明
```
python3 main.py
```
无外部依赖(仅需 Python 3 标准库)。生成机器可读的 `report.json`。
可选 flags:`--inventory`、`--cve`、`--playbooks`、`--report`。
## 功能说明(映射到端点/员工安全)
| 模块 | 功能说明 | 现实对标 |
|---|---|---|
| `sentinel/posture.py` | 根据内部加固基线(磁盘加密、防火墙、屏幕锁定、OS 补丁级别、是否存在 EDR)检查每台设备;标记偏移情况 | 主机加固、CIS/STIG 风格基线、配置偏移检测 |
| `sentinel/vulns.py` | 将已安装的软件与 CVE 源进行匹配(具备版本感知能力);按 **KEV**(已知被利用漏洞)优先排序,其次是 CVSS | 漏洞识别 + 基于威胁情报的优先级排序 |
| `sentinel/engine.py` | 加载 JSON playbook,并在匹配的发现结果上触发动作 | SOAR(Cortex XSOAR / playbook 自动化) |
| `playbooks/*.json` | 声明式触发 -> 动作自动化(创建工单、通知、安排补丁、阻止访问、隔离) | SOAR playbook |
| `main.py` | 统筹编排 扫描 -> 发现结果 -> playbook;计算每台设备的基于严重程度的加权风险 | SecOps 报告 / 风险评分 |
KEV = CISA 已知被利用漏洞目录,这是最直接的真实威胁情报信号:“这是否正在野外被利用。”
## 设计说明
- **Playbook 是数据,而非代码。** 包含一个 `match` 块(type、severity、control、kev)外加一个 `actions` 列表。增加响应动作只需添加一个 JSON 文件,无需修改引擎。这是 SOAR 的核心理念:分析师无需编写应用代码即可创建自动化。
- **设备信任的实践。** 磁盘未加密的 playbook 会触发 `flag_block_access`,模拟了未能达到基线要求的端点如何失去其可信访问态势(即 HIP / Conditional Access 模式)。
- **威胁情报改变的是优先级,而不仅是评分。** 无论原始 CVSS 分数如何,命中 KEV 都会被视为严重级别,因为在野外被利用的严重性远高于理论上的严重程度。
## 扩展方向(后续步骤)
- 通过 NVD API 获取真实的 CVE 源,替代示例文件。
- 采集真实的安全态势(例如使用 `osquery`),替代示例清单。
- GenAI 分流:将报告总结为高管风险简报并建议修复措施(与 genAI 端点威胁面相关联)。
- YAML playbook(企业级 XSOAR 使用 YAML;此处为了实现零依赖的可移植性使用 JSON,结构完全相同)。
## 客观范围
这是一个使用示例数据和模拟动作的概念演示。它不是生产级的扫描程序,也不会实际调用真实的工单系统 / EDR / 网络系统。
标签:GPT, Homebrew安装, Python, SOAR, Web报告查看器, 关系图谱, 基线检查, 插件系统, 搜索语句(dork), 无后门, 无线安全, 漏洞管理, 端点安全, 补丁管理, 逆向工具