karthikbijuknply-sys/web-vulnerability-scanner
GitHub: karthikbijuknply-sys/web-vulnerability-scanner
一款基于 Python 的模块化 Web 漏洞扫描器,能自动爬取目标应用并检测 SQL 注入和访问控制失效漏洞,同时提供 Streamlit 可视化面板展示扫描结果。
Stars: 0 | Forks: 0
# 🕷️ Web 漏洞扫描器
### *一款基于 Python 的模块化 Web 漏洞扫描器,可自动化执行爬取、漏洞检测和安全报告生成。*



## 📖 概述
这是一款基于 Python 的命令行安全工具,能够爬取目标 Web 应用,搜寻 **SQL 注入**和**访问控制失效**漏洞,并以专业的方式生成报告,而不是直接向你抛出原始的 JSON 数据。
它会对目标进行映射,对所有发现的内容运行漏洞检查,将结果打包成清晰的 JSON 报告,并直接输入到 **Streamlit dashboard** 中——让扫描结果呈现出真正的分析价值。
开发此工具是为了在实践中亲手体验真实的 Web 应用安全测试,而不仅仅是纸上谈兵。
## ⚡ 核心功能
| | 功能 |
|---|---|
| 🕸️ | 自动化爬取以映射页面和参数 |
| 💉 | SQL 注入 (SQLi) 检测 |
| 🔓 | 访问控制失效测试 |
| 📄 | 结构化的 JSON 漏洞报告 |
| 📊 | 用于可视化结果的 Streamlit dashboard |
| 🧩 | 模块化架构 — 每种漏洞类型对应一个模块 |
| 🎯 | 在隔离的 Docker 沙箱中针对 DVWA 进行了验证 |
## 🧰 技术栈
| 技术 | 作用 |
|:---:|---|
|  | 核心应用逻辑 |
|  | 向目标发送 HTTP 请求 |
|  | 结果 dashboard |
|  | 报告存储格式 |
|  | DVWA 测试环境 |
|  | 用于爬虫的 HTML 解析 |
|  | 数据处理 / 报告生成 |
## 🔄 工作原理
```
🌐 Target URL
│
▼
🕷️ Web Crawler (crawler.py)
│
▼
📌 Discovered Pages & Parameters
│
┌────────────┴────────────┐
▼ ▼
💉 SQLi Testing 🔓 Access Control Testing
(sqli_tester.py) (access_control.py)
│ │
└────────────┬────────────┘
▼
📦 Findings Aggregated
│
▼
📄 report.json Written
│
▼
📊 Streamlit Dashboard (dashboard.py)
```
## 📁 项目结构
```
web-vuln-scanner/
│
├── 🎯 scanner.py # Entry point — orchestrates the whole scan
├── 🕷️ crawler.py # Maps the target before anything pokes it
├── 💉 sqli_tester.py # SQL injection detection module
├── 🔓 access_control.py # Broken access control testing module
├── 📊 dashboard.py # Streamlit dashboard reading report.json
├── 📄 report.json # Scan output — the receipts
├── 📦 requirements.txt
├── 📘 README.md
├── 🧾 COMMANDS.md
└── 🗂️ venv/
```
## 📸 Dashboard 截图
### 🏠 Dashboard 主页
### 📋 漏洞列表表格
### 🔍 漏洞详情
---
## 🧠 展现的技能
### 📋 漏洞列表表格
### 🔍 漏洞详情
`Python` `Web 应用安全` `SQL 注入` `访问控制测试` `Web 爬取` `HTTP` `JSON` `安全自动化` `Streamlit` `Git/GitHub`
## 📚 学习成果
构建这个项目的过程教会了我(有时是通过深刻的教训):
- ✅ 自动化 Web 爬虫在底层实际是如何工作的
- ✅ SQL 注入检测逻辑与 payload 构建
- ✅ 在 OWASP 幻灯片之外,“访问控制失效”在实际中是什么样子
- ✅ 如何将杂乱的扫描输出整理为干净、可用的 JSON
- ✅ 构建一个人们真正愿意查看的 dashboard
- ✅ 在隔离的 Docker 环境中针对 DVWA 进行安全测试
## 🛣️ 路线图
- [ ] 🎯 XSS (跨站脚本攻击) 检测模块
- [ ] 🛡️ 安全标头分析 (CSP, HSTS, X-Frame-Options)
- [ ] 🔑 认证/会话漏洞测试
- [ ] ⚠️ 漏洞严重程度评分
- [ ] 📑 导出 HTML/PDF 报告
- [ ] ⚡ 用于提升速度的多线程扫描
- [ ] 🤖 集成 CI/CD 进行自动化测试
- [ ] 🐳 一键 Docker Compose 设置(捆绑扫描器 + DVWA)
## 👤 作者
**Karthik B**
*有志成为网络安全与云安全专业人士*
[](https://github.com/karthikbijuknply-sys)
标签:CISA项目, Homebrew安装, Kubernetes, Python, Streamlit, Web安全, 字符串匹配, 无后门, 蓝队分析, 访问控制, 请求拦截, 逆向工具