arulprakashu1-cpu/webapi-scanner
GitHub: arulprakashu1-cpu/webapi-scanner
这是一个全栈Web应用,用于扫描REST API的OWASP Top 10安全漏洞,帮助用户快速识别API风险。
Stars: 0 | Forks: 0
# ScanAPI – API 安全扫描器 MVP
一个用于扫描 REST API 是否存在 OWASP API 安全十大漏洞的全栈 Web 应用程序。
## 快速开始(Windows)
```
cd "d:\cl API\webapi-scanner"
.\start.ps1
```
然后打开:**http://localhost:5173**
**演示登录:** `demo@scanapi.io` / `demo1234`
## 手动设置
### 后端 (FastAPI)
```
cd backend
pip install -r requirements.txt
python -m uvicorn src.main:app --reload --port 8000
```
### 前端 (React + Vite)
```
cd frontend
npm install
npm run dev
```
## URL
| 服务 | URL |
|---------|-----|
| 前端 | http://localhost:5173 |
| 后端 API | http://localhost:8000 |
| API 文档 (Swagger) | http://localhost:8000/docs |
## 架构
```
webapi-scanner/
├── backend/ FastAPI + SQLite + background scan workers
│ └── src/
│ ├── auth/ JWT authentication
│ ├── scans/ Scan management + mock OWASP scanner
│ ├── reports/ JSON/CSV export
│ └── usage/ Quota tracking
└── frontend/ React 18 + Vite + Tailwind CSS
└── src/
├── pages/ Landing, Login, Dashboard, NewScan, ScanDetail
├── components/ Layout, Navbar, FindingItem, Badges
└── api/ Axios client + typed API wrappers
```
## 功能特性
- **认证** – JWT 登录/注册,跨会话持久化
- **演示数据** – 首次启动时预填充扫描和发现项
- **实时扫描** – 随着模拟扫描器运行,进度条会更新
- **OWASP API Top 10** – 来自所有类别的 16 个真实发现项
- **严重性筛选** – 按 严重/高/中/低/信息 筛选发现项
- **导出** – 将发现项下载为 JSON 或 CSV
- **用量跟踪** – 免费层级:每月 8 次扫描
## 技术栈
| 层级 | 技术 |
|-------|------|
| 前端 | React 18, Vite, Tailwind CSS, TanStack Query |
| 后端 | FastAPI, SQLAlchemy, SQLite |
| 认证 | JWT (python-jose), bcrypt |
| 扫描器 | 模拟 OWASP 扫描器 (可替换为 OWASP ZAP) |
标签:API安全, API测试, AV绕过, bcrypt加密, FastAPI, JSON导出, JSON输出, JWT认证, OWASP Top 10, React, REST API, SQLAlchemy, SQLite, Syscalls, Tailwind CSS, TanStack Query, Vite, 使用跟踪, 免费层级, 全栈应用, 反取证, 后端开发, 安全扫描, 安全测试, 安全评估, 实时扫描, 扫描工具, 报告导出, 攻击性安全, 时序注入, 网络安全, 逆向工具, 隐私保护