shri30a/SentinelAI
GitHub: shri30a/SentinelAI
基于 React 和 FastAPI 构建的 AI 驱动网络安全事件响应平台,能够自动分析安全证据并生成 MITRE ATT&CK 映射与事件调查报告。
Stars: 1 | Forks: 0
# SentinelAI — AI 驱动的网络安全事件响应平台
## 概述
SentinelAI 是一个现代化的网络安全调查平台,旨在模拟安全运营中心 (SOC) 分析师的工作流程。
用户可以上传安全证据——包括钓鱼邮件、日志文件、PDF 报告和其他受支持的工件——并接收包含以下内容的 AI 生成的调查报告:
- 威胁严重性分类
- 置信度评分
- MITRE ATT&CK 技术映射
- 执行调查摘要
- 自动提取的入侵指标 (IOC)
- 优先级事件响应建议
- 可下载的 PDF 事件报告
该应用程序将现代的 React 前端与 FastAPI 后端以及 Google 的 Gemini AI 相结合,创建了一个真实的端到端网络安全调查工作流程。
## 功能
### AI 安全分析
- 使用 Google Gemini 进行 AI 驱动的调查
- AI 不可用时的智能回退规则引擎
- 基于上传内容的动态分析
- 自动提取 PDF 文本
- 实时上传处理
### 威胁情报
- 威胁严重性分类(低 / 中 / 高)
- 置信度评分
- MITRE ATT&CK 技术映射
- 自动提取 IOC
- 域名
- URL
- IP 地址
- 电子邮件地址
### 事件响应
- 执行调查摘要
- 优先级的 P1–P4 响应措施
- 安全分析师建议
- 可下载的 PDF 事件报告
### 现代用户体验
- 响应式 React 仪表板
- 拖放式文件上传
- 上传进度动画
- AI 响应的打字机动画
- 交互式调查卡片
- 受 SOC 启发的暗色界面
- 由 Framer Motion 驱动的动画 UI
## 截图
建议的截图:
```
assets/dashboard.png
assets/upload.png
assets/phishing-analysis.png
assets/report-download.png
```
## 技术栈
### 前端
- React
- TypeScript
- Vite
- Tailwind CSS
- shadcn/ui
- Framer Motion
- Lucide React
- Axios
### 后端
- Python
- FastAPI
- Google Gemini API
- PyMuPDF
- ReportLab
- Pydantic
- Uvicorn
## 项目结构
```
SentinelAI
│
├── backend
│ ├── app
│ │ └── main.py
│ ├── requirements.txt
│ └── .env
│
├── frontend
│ ├── src
│ │ ├── components
│ │ ├── hooks
│ │ ├── lib
│ │ ├── pages
│ │ ├── services
│ │ └── types
│ └── package.json
│
└── README.md
```
## 安装说明
### 克隆仓库
```
git clone https://github.com/YOUR_USERNAME/SentinelAI.git
cd SentinelAI
```
### 后端设置
```
cd backend
python -m venv venv
# Windows
venv\Scripts\activate
pip install -r requirements.txt
```
在后端目录中创建一个 `.env` 文件:
```
GEMINI_API_KEY=YOUR_API_KEY
```
运行后端:
```
python -m fastapi dev app/main.py
```
### 前端设置
```
cd frontend
npm install
npm run dev
```
打开:
```
http://localhost:5173
```
## 示例工作流程
1. 上传钓鱼邮件、日志文件或 PDF。
2. SentinelAI 从上传的文档中提取可读文本。
3. Google Gemini 分析证据。
4. 应用程序:
- 对威胁进行分类
- 映射 MITRE ATT&CK 技术
- 提取入侵指标
- 生成执行调查摘要
- 提出优先响应建议
5. 将生成的事件报告下载为 PDF。
## 示例输出
```
Threat Level:
High
Confidence:
94%
MITRE ATT&CK:
T1566 – Phishing
Indicators of Compromise:
• suspicious-login.com
• support@security-alert.com
• 185.199.xxx.xxx
Recommended Actions:
P1 • Block malicious domain
P2 • Reset affected credentials
P3 • Review authentication logs
P4 • Verify MFA enforcement
```
## 未来改进
- 批量文件调查
- 集成 VirusTotal
- AbuseIPDB 扩充
- CVE 查找
- 威胁情报源
- YARA 规则匹配
- 威胁时间线可视化
- 调查历史
- 用户身份验证
- 云部署
## 学习心得
构建 SentinelAI 增强了我在以下方面的经验:
- 全栈软件工程
- React 和 TypeScript
- FastAPI REST API 开发
- 使用 Google Gemini 集成 AI
- PDF 解析和文档处理
- 网络安全调查工作流程
- MITRE ATT&CK 框架
- 现代 UI/UX 开发
- 异步后端编程
- 端到端应用架构
## 免责声明
SentinelAI 是一个教育性的作品集项目,旨在演示 AI 辅助的网络安全工作流程。它仅供演示之用,不应作为企业安全监控或事件响应平台的替代品。
## 作者
**Shrihan Anikapati**
电气与计算机工程荣誉专业
数学专业
德克萨斯大学奥斯汀分校
GitHub: https://github.com/shri30a
LinkedIn: https://linkedin.com/in/www.linkedin.com/in/shrihan-anikapati
## 许可证
该项目基于 MIT 许可证授权。
标签:AV绕过, DLL 劫持, FastAPI, React, Syscalls, 大语言模型, 威胁情报, 库, 应急响应, 开发者工具, 网络安全, 自动化攻击, 逆向工具, 隐私保护