kuhnskc/falcon-rego-toolkit
GitHub: kuhnskc/falcon-rego-toolkit
面向 CrowdStrike Falcon 平台的 Rego 策略管理 Web 应用,简化 CSPM 自定义 IOM 和 KAC 自定义规则的编写、测试与部署流程。
Stars: 0 | Forks: 0
# Falcon Rego Toolkit
一个用于管理 CrowdStrike Rego 安全策略的 Web 应用程序,涵盖以下两款产品:
- **CSPM Custom IOMs** — 云资源配置合规策略
- **KAC Custom Rules** — 用于实时工作负载准入控制的 Kubernetes Admission Controller 策略
## 快速开始
```
docker run -p 8000:8000 kckuhns92/falcon-rego-toolkit:latest
```
打开 **http://localhost:8000** 并输入你的 CrowdStrike API 凭证。凭证仅存储在内存中,不会被持久化保存。
### 从源码构建
```
git clone https://github.com/kuhnskc/falcon-rego-toolkit.git
cd falcon-rego-toolkit
cd frontend && npm install && npm run build && cd ..
docker build -t falcon-rego-toolkit .
docker run -p 8000:8000 falcon-rego-toolkit
```
### 本地开发(不使用 Docker)
```
git clone https://github.com/kuhnskc/falcon-rego-toolkit.git
cd falcon-rego-toolkit
./start.sh
```
这将启动后端(端口 8000)和前端开发服务器(端口 5173)。打开 **http://localhost:5173**。
需要 Python 3.10+、Node.js 18+,以及可选的 [OPA](https://www.openpolicyagent.org/) 用于本地 KAC 规则测试。
## CrowdStrike API 设置
在你的 CrowdStrike 控制台中创建一个 API 客户端(**Support and resources > Resources and tools > API clients and keys**),并配置以下权限范围:
| Scope | Access | Used For |
|-------|--------|----------|
| `CSPM registration` | Read, Write | CSPM Custom IOM 策略 |
| `Cloud Security Assessment` | Read | CSPM 资产发现与测试 |
| `Falcon Container Policies` | Read, Write | KAC 策略、规则组、自定义规则 |
### 云环境
| Environment | Base URL |
|-------------|----------|
| US-1 | `https://api.crowdstrike.com` |
| US-2 | `https://api.us-2.crowdstrike.com` |
| EU-1 | `https://api.eu-1.crowdstrike.com` |
| US-GOV-1 | `https://api.laggar.gcw.crowdstrike.com` |
## 功能特性
### CSPM Custom IOMs
- 8 步创建向导 — 名称、资源类型、样本数据、严重程度、告警、修复、Rego 编辑器、测试与创建
- 针对您环境中真实云资产的实时策略测试
- 资产发现 — 浏览资源类型并获取经过富化的样本数据
- 完整生命周期管理 — 创建、查看、编辑、删除
### KAC Custom Rules
- 策略管理 — 创建、启用/禁用、删除 KAC 策略
- 包含标签和命名空间选择器的规则组
- 自定义 Rego 规则 — 使用 Monaco 编辑器编写、查看、编辑和部署
- 本地规则测试 — 使用 OPA 针对 K8s 清单评估 KAC 规则(无需部署)
- 规则组优先级管理
### 通用特性
- 带有语法高亮的 Monaco Rego 编辑器
- CrowdStrike 风格的暗色主题
- 服务端认证 — OAuth2 token 在后端管理,永远不会暴露给浏览器
## Agent 知识库
`agent_kb/` 目录包含 5 个 markdown 文件,旨在为帮助编写 CrowdStrike Rego 策略的 GenAI Agent 提供支持。这些文件可用作任何 LLM 或 AI 编码助手的上下文。
| File | Contents |
|------|----------|
| `system_prompt.md` | 包含 CSPM 和 KAC 契约的 Agent 系统提示词 |
| `rego_writing_guide.md` | 针对两款产品的 Rego v1 编写指南 |
| `example_policies.md` | 22+ 个示例策略(CSPM + KAC)及测试结果 |
| `asset_data_reference.md` | 云资产和 K8s AdmissionReview 的输入 JSON 结构 |
| `api_reference.md` | 用于策略 CRUD 操作的 CrowdStrike API 参考 |
## 示例策略
`simple_examples/` 目录包含现成可用的 Rego 策略:
**CSPM** — `simple_examples/cspm/`
- S3 存储桶安全检查
- EC2 实例标签强制执行
- ECR 跨账户访问检测
**KAC** — `simple_examples/kac/`
- 阻止特权容器
- 禁止 latest 镜像标签
- 要求资源限制
- 阻止 hostPath 卷
- 强制非 root 执行
- 限制镜像仓库
- 拒绝主机命名空间访问
标签:API 集成, AWS, Azure, CrowdStrike, CSPM, DevSecOps, Docker, DPI, Falcon, GCP, GNU通用公共许可证, Groq API, IOM, KAC, Kubernetes 准入控制, MITM代理, Node.js, OPA, Python, Rego, TinkerPop, Web 应用, Web截图, 上游代理, 云安全态势管理, 前端应用, 可视化编辑, 安全合规, 安全策略管理, 安全防御评估, 容器安全, 无后门, 漏洞修复, 策略即代码, 结构化提示词, 网络代理, 网络安全培训, 聊天机器人安全, 自动化攻击, 自定义规则, 请求拦截, 逆向工具, 靶场