sunilkumardo/threatlens-ai
GitHub: sunilkumardo/threatlens-ai
ThreatLens AI 是一个集成 AI 风险分析的 OWASP 全栈 Web 漏洞扫描器,可生成可视化报告并支持 PDF 导出。
Stars: 1 | Forks: 0
# ThreatLens AI 🔐





## 🚀 ThreatLens AI 是什么?
ThreatLens AI 是一个全栈安全工具,可扫描任意公开网站是否存在 OWASP 漏洞,并生成由 AI 驱动的风险报告——类似于 Qualys、Tenable 和 Burp Suite 等企业级工具,但完全使用免费工具构建。
## ✨ 功能特性
- 🔍 **OWASP 漏洞扫描器** — 检查安全标头、HTTPS、Cookie、开放重定向、服务器信息泄露
- 🤖 **Gemini AI 分析** — 为每个漏洞生成包含影响+修复方案的通俗风险报告
- 📊 **实时仪表盘** — 严重程度图表、扫描历史、带颜色标注的发现结果表格
- 📄 **PDF 报告导出** — 下载并分享专业的安全报告
- 🔐 **JWT 认证** — 安全的登录/注册,使用 bcrypt 密码哈希
- 🛡️ **速率限制 + Helmet** — 生产级 API 安全
- ⚙️ **CI/CD 流水线** — 每次推送自动测试、安全审计、构建验证
- 🔎 **GitHub 高级安全** — 启用了 CodeQL 扫描、Dependabot、密钥扫描
## 🏗️ 架构
| 层 | 组件 | 详情 |
|------|---------|--------|
| 🖥️ 前端 | React.js | 仪表盘、扫描器 UI、图表、PDF 导出 |
| ⚙️ 后端 | Node.js + Express | REST API、JWT 认证、速率限制、Helmet |
| 🐍 扫描器 | Python 3.12 | OWASP 检查、标头分析、重定向检测 |
| 🤖 AI 引擎 | Google Gemini API | 风险分析、执行摘要、修复建议 |
| 🔄 CI/CD | GitHub Actions | 每次推送自动测试、构建、安全审计 |
| 🔐 安全 | GitHub GHAS | CodeQL、Dependabot、密钥扫描、分支保护 |
**流程:** 用户输入 URL → React 发送到 Node API → Python 扫描目标 → Gemini AI 分析 → 仪表盘显示报告 + PDF
## 🛠️ 技术栈
| 层 | 技术 |
|------|---------|
| 前端 | React.js、Recharts、jsPDF |
| 后端 | Node.js、Express.js、JWT、Helmet |
| 扫描器 | Python 3.12、Requests |
| AI | Google Gemini API(免费) |
| CI/CD | GitHub Actions |
| 安全 | CodeQL、Dependabot、密钥扫描 |
## 🔐 已实现的安全功能
- ✅ JWT 认证(Token 有效期 24 小时)
- ✅ bcrypt 密码哈希(盐值轮数:10)
- ✅ 所有响应使用 Helmet.js 安全标头
- ✅ 速率限制(每 IP 每 15 分钟 100 次请求)
- ✅ 所有端点输入验证
- ✅ 每次 PR 进行 CodeQL 扫描(已修复 URL 清理问题)
- ✅ Dependabot 依赖漏洞告警
- ✅ GitHub 密钥扫描 + 推送保护
- ✅ main 分支保护规则
## ⚙️ 本地设置与运行
### 前置条件
- Node.js 18+
- Python 3.12+
- Gemini API 密钥(免费获取: [aistudio.google.com](https://aistudio.google.com))
### 后端
```
cd backend
npm install
# 创建 .env 文件:
# PORT=5000
# JWT_SECRET=your_secret
# GEMINI_API_KEY=your_gemini_key
npm run dev
```
### 前端
```
cd frontend
npm install
npm start
```
### 扫描器(独立测试)
```
cd backend
python scanner.py https://example.com
```
## 📸 截图
## 🧪 执行的 OWASP 检查
| 检查项 | 严重程度 |
|--------|-----------|
| HTTPS 已启用 | 高 |
| X-Frame-Options 标头 | 高 |
| Content-Security-Policy | 高 |
| Strict-Transport-Security | 高 |
| X-Content-Type-Options | 中 |
| X-XSS-Protection | 中 |
| Referrer-Policy | 低 |
| 服务器版本信息泄露 | 低 |
| 开放重定向 | 高 |
| Cookie 安全标志 | 中 |
## 📄 示例 AI 报告输出
```
{
"risk_level": "HIGH",
"executive_summary": "The website has several critical security misconfigurations...",
"top_risks": [
{
"risk": "Missing Content-Security-Policy",
"impact": "Vulnerable to XSS attacks",
"fix": "Add Content-Security-Policy header"
}
],
"quick_wins": ["Enable HTTPS", "Add X-Frame-Options"],
"overall_score": 35
}
```
## 👨💻 作者
- GitHub: [@sunilkumardo](https://github.com/sunilkumardo)
- LinkedIn: [Sunil Kumar D O](https://linkedin.com/in/sunilkumardo)
- 作品集: [sunilkumardo.vercel.app](https://sunilkumardo.vercel.app)
- 邮箱: sunilkumardo2004@gmail.com
## 📜 许可证
MIT 许可证 —— 可自由使用和修改。
标签:AI安全, Chat Copilot, Cookie安全, Gemini AI, GitHub Actions, GNU通用公共许可证, HTTPS检查, JWT认证, MITM代理, Node.js, PDF导出, Python, React仪表盘, 企业安全工具, 免费工具, 安全头检测, 开放重定向, 无后门, 服务器信息泄露, 网络安全, 自动化安全扫描, 自动笔记, 自定义脚本, 逆向工具, 隐私保护, 风险报告