CelestianBeing/Website-Vulnerability-Scanner
GitHub: CelestianBeing/Website-Vulnerability-Scanner
一款融合 DAST 与 SAST 能力、集成机器学习降噪的分布式 Web 应用漏洞扫描器,覆盖 OWASP 核心漏洞类型并提供实时可视化仪表盘与 CI/CD 集成。
Stars: 0 | Forks: 0
# 分布式漏洞扫描器
一款世界级、AI 驱动的 Web 应用程序漏洞扫描器,结合了 DAST 和 SAST 能力。
## 📁 项目结构
```
├── backend/ # Go-based core scanner engine
│ ├── api/ # REST API server
│ ├── crawler/ # Web crawler (Colly)
│ ├── database/ # PostgreSQL data access
│ ├── engine/ # Plugin & rule engine
│ ├── reporting/ # Report generation
│ ├── websocket/ # Real-time WebSocket
│ ├── rules/ # YAML vulnerability rules
│ ├── main.go # Application entry point
│ ├── go.mod # Go dependencies
│ └── Dockerfile # Docker configuration
│
├── ml-service/ # Python ML microservice
│ ├── main.py # FastAPI server
│ ├── requirements.txt # Python dependencies
│ └── Dockerfile # Docker configuration
│
├── puppeteer-service/ # Headless browser service
│ ├── index.js # Puppeteer server
│ ├── package.json # Node dependencies
│ └── Dockerfile # Docker configuration
│
├── frontend/ # Next.js web dashboard
│ ├── app/ # Next.js 14 routes & pages
│ │ ├── components/ # React components
│ │ ├── layout.tsx # Root layout
│ │ ├── page.tsx # Dashboard page
│ │ └── globals.css # Global styles
│ ├── package.json # Frontend dependencies
│ ├── next.config.js # Next.js config
│ ├── tailwind.config.js # Tailwind config
│ ├── tsconfig.json # TypeScript config
│ └── Dockerfile # Docker configuration
│
├── infrastructure/ # Deployment & orchestration
│ ├── docker-compose.yml # Docker Compose config
│ ├── schema.sql # Database schema
│ └── kubernetes/ # K8s manifests (future)
│
├── ci-cd/ # CI/CD pipelines
│ ├── .github/workflows/ # GitHub Actions
│ │ └── security-scan.yml # Security scan workflow
│ └── Jenkinsfile # Jenkins pipeline
│
├── docs/ # Documentation
│ ├── API.md # API documentation
│ ├── ARCHITECTURE.md # System architecture
│ └── CONTRIBUTING.md # Contribution guide
│
├── README.md # Project overview
└── LICENSE # License file
```
## 🚀 快速开始
### 使用 Docker(推荐)
```
cd infrastructure
docker-compose up -d
```
**服务:**
- Frontend: http://localhost:3001
- Core API: http://localhost:8080
- ML Service: http://localhost:8000
- Puppeteer: http://localhost:3000
### 本地开发
#### 后端(Go)
```
cd backend
go mod tidy
go run main.go -api -port 8080
```
#### ML 服务(Python)
```
cd ml-service
pip install -r requirements.txt
python main.py
```
#### 前端(Next.js)
```
cd frontend
npm install
npm run dev
```
## 🛡️ 功能
- **混合扫描**:DAST + SAST 能力
- **AI/ML 集成**:异常检测和减少误报
- **9 项 OWASP 规则**:SQL Injection、XSS、LFI、CSRF、命令注入、开放重定向、XXE、SSRF、敏感数据暴露
- **实时仪表盘**:带有图表和网络可视化的实时漏洞跟踪
- **WebSocket 支持**:实时扫描进度更新
- **专业报告**:带有 CVSS 评分的 HTML 和 JSON 报告
- **CI/CD 集成**:GitHub Actions 和 Jenkins pipelines
- **分布式架构**:Docker 中的微服务
## 📖 API Endpoints
### 开始扫描
```
curl -X POST http://localhost:8080/api/scans \
-H "Content-Type: application/json" \
-d '{"target_url": "https://example.com", "scan_type": "full"}'
```
### 获取扫描状态
```
curl http://localhost:8080/api/scans/{scan_id}
```
### 生成报告
```
curl http://localhost:8080/api/reports/{scan_id}?format=json
```
## 🔧 配置
### 数据库
编辑 `infrastructure/docker-compose.yml` 以配置 PostgreSQL 凭据。
### 规则
在 `backend/rules/` 目录中添加自定义 YAML 规则。
示例规则:
```
id: custom-check
info:
name: Custom Vulnerability
severity: high
requests:
- method: GET
path:
- "{{BaseURL}}/test"
matchers:
- type: word
part: body
words:
- "vulnerable"
```
## 🧪 测试
```
# Go backend 测试
cd backend
go test ./...
# Python ML 测试
cd ml-service
pytest
# Frontend 测试
cd frontend
npm test
```
## 📊 技术栈
- **后端**:Go 1.21、Colly、PostgreSQL、gorilla/websocket
- **ML 服务**:Python 3.11、FastAPI、Scikit-learn、TensorFlow
- **前端**:Next.js 14、React 18、Tailwind CSS、Chart.js、Cytoscape.js
- **基础设施**:Docker、Docker Compose、PostgreSQL 15、Redis 7
- **CI/CD**:GitHub Actions、Jenkins
## 📝 许可证
AGPL-3.0(开源)
提供用于企业用途的商业许可证。
## 🤝 贡献
请参阅 [CONTRIBUTING.md](docs/CONTRIBUTING.md) 了解指南。
## 📧 支持
如有问题或疑问,请提交一个 GitHub issue。
标签:AI辅助, CISA项目, DAST, EVTX分析, MITM代理, SAST, Web安全, 分布式架构, 加密, 恶意软件分析, 搜索引擎查询, 日志审计, 测试用例, 漏洞扫描器, 盲注攻击, 蓝队分析, 请求拦截, 逆向工具