NIthishGudipati/Active-Cyber-Defense
GitHub: NIthishGudipati/Active-Cyber-Defense
一个 AI 驱动的混合检测网络安全代理,在强化学习框架下实现实时流量的允许或丢弃决策。
Stars: 0 | Forks: 0
# 🛡️ AI-Powered Cyber Defense Agent
## 📌 概述
本项目展示了一个 AI 驱动的网络安全代理,旨在分析网络流量并实时决策以 **允许(ALLOW)** 或 **丢弃(DROP)** 数据包。系统结合了基于规则的检测与大型语言模型(LLM)推理,以有效识别恶意模式。
架构设计为强化学习环境,便于未来扩展为自适应与自学习的防御机制。
## ⚙️ 关键特性
* 混合检测系统,结合:
* 基于规则的预检测,用于已知威胁
* 基于 LLM 的推理,用于未知或复杂模式
* 实时决策(ALLOW / DROP)
* 强化学习环境结构
* 安全失败设计(不确定时默认 DROP)
* Docker 化部署,便于移植
* 托管于 Hugging Face Spaces,支持实时交互
## 🏗️ 系统架构
```
Network Traffic
↓
Pre-validation Layer (Rule-based)
↓
LLM Decision Engine
↓
Environment (Reward System)
↓
Final Decision (ALLOW / DROP)
```
## 🔍 预验证层
系统包含一个基于规则的预检测机制,用于在调用 LLM 之前识别常见攻击模式。这提升了效率并减少了不必要的计算开销。
检测到的威胁示例:
* SQL 注入(例如:`UNION SELECT`)
* 路径遍历(例如:`../../../`)
* 反向 Shell 载荷
* 已知漏洞(例如:SMB EternalBlue)
## 🔄 强化学习工作流
系统遵循标准强化学习交互循环:
```
State (Traffic) → Action (ALLOW/DROP) → Reward → Next State
```
* 正确决策 → 正向奖励
* 错误决策 → 惩罚
* 所有事件处理完毕后回合结束
## 📊 示例输出
```
Packet #1
Traffic: ICMP echo-reply only; no suspicious payload; RTT 12ms within baseline.
Decision Source: LLM
Decision: ALLOW
Reward: 1.0
Packet #2
Traffic: UDP/53 DNS query for mail.partner.net from internal resolver; response NXDOMAIN.
Decision Source: LLM
Decision: ALLOW
Reward: 1.0
Packet #3
Traffic: TCP/8080: POST body contains UNION SELECT … — SQL injection against /search.
Decision Source: RULE
Decision: DROP
Reward: 1.0
Packet #4
Traffic: TCP/4444 reverse shell: base64-encoded PowerShell staging from external IP.
Decision Source: RULE
Decision: DROP
Reward: 1.0
Packet #5
Traffic: TCP/445 SMB from 198.51.100.7: EternalBlue-style exploit attempt (MS17-010).
Decision Source: RULE
Decision: DROP
Reward: 1.0
Packet #6
Traffic: TCP/443 to api.internal.corp: TLS 1.3, SNI=updates.vendor.com, JA3 fingerprint matches Chrome 120.
Decision Source: LLM
Decision: ALLOW
Reward: 1.0
Packet #7
Traffic: TCP/80 to 203.0.113.50: GET /cgi-bin/../../../etc/passwd — path traversal payload.
Decision Source: RULE
Decision: DROP
Reward: 1.0
Packet #8
Traffic: TCP/22 SSH handshake from bastion host to prod-db-01; Ed25519 host key verified.
Decision Source: LLM
Decision: ALLOW
Reward: 1.0
Final Accuracy: 100.00% (on simulated dataset)
```
## 🚀 部署
该项目使用 Docker 容器化,并部署在 Hugging Face Spaces 上。
在线部署:
立即体验在线版本:
https://huggingface.co/spaces/turbonight95/active-cyber-defense
## 🧪 安装与设置
### 1. 克隆仓库
```
git clone https://github.com/your-username/active-cyber-defense.git
cd active-cyber-defense
```
### 2. 创建虚拟环境
```
python3 -m venv .venv
source .venv/bin/activate
```
### 3. 安装依赖项
```
pip install -r requirements.txt
```
### 4. 运行服务器
```
uvicorn active_cyber_defense.server.app:app --reload
```
### 5. 运行代理
```
export HF_TOKEN="your_token_here"
python3 -m active_cyber_defense.inference
```
## 🐳 Docker 设置
```
docker build -t cyber-defense .
docker run -p 8000:8000 cyber-defense
```
## 📁 项目结构
```
active-cyber-defense/
├── active_cyber_defense/
│ ├── server/
│ ├── client.py
│ ├── inference.py
│ ├── models.py
│ ├── Dockerfile
│ ├── openenv.yaml
├── README.md
├── requirements.txt
```
## 🧩 设计原则
* **混合智能**:结合确定性规则与 AI 推理
* **高效性**:在调用 LLM 前过滤已知威胁
* **安全优先**:实现安全失败决策策略
* **可扩展性**:基于 Docker 的部署
## 🔮 未来的改进
* 训练强化学习代理以实现自适应行为
* 集成真实网络数据集
* 添加监控可视化仪表板
* 使用集成模型提升检测准确性
## 📊 评估说明
报告的准确率基于用于测试的预定义模拟数据集。在真实场景中,性能可能因流量多样性和攻击复杂性而有所不同。
## 🏆 黑客马拉松信息
活动:Meta PyTorch Hackathon
主办方:Scaler School of Technology
轮次:第一轮提交
项目标题:AI-Powered Cyber Defense Agent
## 作者
Nithish Gudipati
标签:AI安全, ALLOW DROP, AMSI绕过, CDN识别, Chat Copilot, DLL 劫持, DNS查询, fail-secure, FTP漏洞扫描, Hugging Face Spaces, ICMP检测, LLM推理, TGT, 云计算, 入侵防御, 决策智能, 反向shell, 大语言模型, 奖励系统, 威胁检测, 安全编排, 实时分析, 异常检测, 强化学习, 攻防演练, 数据包过滤, 永恒之蓝, 流量预处理, 混合检测, 环境仿真, 网络安全, 网络流量分析, 自动化响应, 自学习系统, 自适应防御, 规则引擎, 请求拦截, 路径遍历, 逆向工具, 隐私保护