mohittchoudhary/Cyber-Incident-Response
GitHub: mohittchoudhary/Cyber-Incident-Response
该项目构建了一个模拟SOC分析师的AI智能体强化学习环境,旨在通过处理安全警报来训练自动化的威胁响应策略。
Stars: 0 | Forks: 1
## 标题:Cyber Incident Response Agent
emoji: 🛡️
colorFrom: red
colorTo: blue
sdk: docker
app_port: 7860
pinned: true
# 🛡️ 网络事件响应 — SOC Agent RL 环境
**团队: Dominex**
一个 AI agent 作为 SOC Analyst,处理来自 Sentinel Risk Engine 的安全警报,并决定最有效的响应措施,以在维持业务运营连续性的同时缓解威胁。
| Action | 含义 |
|---------------|--------------------------------------------------------|
| `ignore` | 误报 — 正确识别并抑制的噪音。 |
| `monitor` | 低风险 — 持续追踪但不进行主动干预。 |
| `investigate` | 中等风险 — 需要更深入技术分流的异常情况。 |
| `block` | 高危严重性 — 采取主动防御措施以阻止威胁。 |
| `escalate` | 严重威胁 — 立即移交给 IR 专家团队。 |
奖励基于 **3D Grader Matrix**(严重性、误报状态和 Action)。该环境会对过度反应(封锁无辜的 admin)、疏忽(忽略严重的安全突破)以及运营停机进行惩罚。
## 📁 项目结构
```
Cyber-Incident-Response/
├── Dockerfile # Containerized environment for hackathon submission
├── README.md # This file
├── pyproject.toml # Project metadata & dependencies
├── uv.lock # Pinned dependencies (uv)
├── openenv.yaml # OpenEnv environment specification (8Gi RAM)
├── models.py # Pydantic models: CIRObservation, CIRReward, etc.
├── inference.py # Local LLM-powered SOC Inference loop
├── client.py # Typed Python client for environment interaction
├── server/
│ ├── app.py # FastAPI Server + Interactive Sentinel Dashboard
│ ├── environment.py # Core SOC RL Logic & 3D Reward Engine
│ └── requirements.txt # Pinned production dependencies
└── tasks/
├── easy.json # 3 scenarios: Basic threat triage
├── medium.json # 5 scenarios: Nuanced role-based alerts
└── hard.json # 7 scenarios: Advanced breaches & False Positives
```
## ⚡ 快速开始
### 前置条件
- Python ≥ 3.10
- [uv](https://docs.astral.sh/uv/)(推荐)
- OpenAI / OpenRouter API Key(导出为 `HF_TOKEN` 以用于推理)
### 1. 克隆并安装
```
git clone && cd Cyber-Incident-Response
# 使用 uv 安装依赖项
uv venv && uv pip install -e ".[dev]"
```
### 2. 设置环境变量
```
export HF_TOKEN="your_api_key_here"
# 可选:配置模型基础设施
export API_BASE_URL="https://openrouter.ai/api/v1"
export MODEL_NAME="google/gemini-2.0-flash-lite-001"
```
### 3. 启动交互式仪表板
```
uv run python server/app.py
```
访问 `http://localhost:7860` 以使用带有实时任务进度追踪的 **Interactive Sentinel Dashboard**。
### 4. 运行推理基准测试
```
# 运行本地评估套件
uv run python inference.py
```
## 🧩 环境详情
### 观察 Schema(Sentinel 遥测数据)
| Field | Type | Description |
|------------------|--------|-------------------------------------------------|
| `alert_type` | string | 威胁的性质(例如 data_exfiltration)|
| `risk_score` | float | 从 `0.0` 到 `1.0` 的归一化严重程度 |
| `user_role` | string | 行为者的角色:`admin`、`system`、`user` 等 |
| `location` | string | 活动的来源:`local` 或 `foreign` |
| `previous_flags` | int | 历史安全卫生惩罚计数 |
| `time_of_day` | string | 活动的时间窗口(例如 `midnight`) |
### 奖励与影响
环境会追踪 **Operational Damage** 和 **Cumulative Downtime**。在没有严重正当理由的情况下封锁高价值的 `System` 或 `Admin` 用户会导致严重的运营惩罚,从而模拟真实的业务约束。
### 任务层级
| Tier | Scenarios | Max Steps | Description |
|--------|-----------|-----------|---------------------------------------|
| easy | 3 | 5 | 明确无误的分流案例 |
| medium | 5 | 7 | 混合警报与运营敏感度|
| hard | 7 | 10 | 复杂的安全突破和噪音模式 |
## 📡 高级 Sentinel 追踪
每个 `step()` 都包含一个 `info` 数据包,其中包含 **Sentinel Insights**:
- **Location Risk Factor**:针对来源为 foreign 的活动有 1.5 倍乘数。
- **Role Impact level**:针对关键账户有 1.4 倍缩放。
- **Downtime Counter**:基础设施中断的累计分钟数。
## 📄 许可证
由 **Team Dminex** 为 Meta OpenEnv Hackathon 2026 开发。
标签:AI智能体, AV绕过, DLL 劫持, FastAPI, 事件响应, 大语言模型, 安全运营中心(SOC), 强化学习环境