
Web Vuln Scan
- 16 installs
- 1.6k repo stars
- Updated July 19, 2026
- wgpsec/aboutsecurity
Helps with security tasks during AI-assisted development.
About
web-vuln-scan is a Claude Code skill for security. It helps solo builders move faster with AI-assisted coding.
- web-vuln-scan
- Security
- AI-coding skill
Web Vuln Scan by the numbers
- 16 all-time installs (skills.sh)
- Ranked #1,612 of 2,203 Security skills by installs in the Skillselion catalog
- Data as of Aug 5, 2026 (Skillselion catalog sync)
npx skills add https://github.com/wgpsec/aboutsecurity --skill web-vuln-scanAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 16 |
|---|---|
| repo stars | ★ 1.6k |
| Last updated | July 19, 2026 |
| Repository | wgpsec/aboutsecurity ↗ |
What it does
Helps with security tasks during AI-assisted development.
Files
单目标 Web 深度漏洞扫描方法论
与 recon-full(广度优先、资产发现)不同,本技能是深度优先——对已确定的单个 Web 目标做全面漏洞测试。
Phase 1: 技术栈驱动的扫描策略
先做指纹识别,然后根据结果选择针对性扫描路线:
# 指纹识别
curl -sI http://target | grep -i "Server\|X-Powered-By\|X-AspNet"
httpx -u http://target -tech-detect -silent| 技术栈 | 自动化扫描重点 | 手动测试重点 |
|---|---|---|
| PHP (WordPress/Laravel/ThinkPHP) | CMS 专用 POC、PHP 反序列化 | LFI/文件上传/include() 参数 |
| Java (Spring/Struts/Tomcat) | Log4j/Spring4Shell/Struts2 | 反序列化入口、Actuator 泄露 |
| Python (Flask/Django) | SSTI、Debug 模式 | Pickle 反序列化、Secret Key 泄露 |
| Node.js (Express/Koa) | 原型链污染 | 依赖漏洞、eval() 注入 |
| .NET (ASP.NET/IIS) | ViewState 反序列化 | web.config 泄露 |
不同技术栈的漏洞分布差异巨大——盲目全扫浪费时间。
Phase 2: 自动化扫描
2.1 已知漏洞扫描
# Nuclei 扫描(按严重等级过滤,节省时间)
nuclei -u http://target -severity critical,high如果指纹明确,可以缩小范围:
- WordPress →
nuclei -u http://target -tags wordpress - 已知 CVE →
nuclei -u http://target -t cves/
2.2 默认口令检测
nuclei -u http://target -t default-logins/ -silent很多应用装完就忘改密码——这是最"便宜"的攻击路径。
2.3 目录和敏感文件
# spray 目录爆破(推荐,智能过滤 + 高性能)
spray -u http://target -d /pentest/AboutSecurity/Dic/Web/Directory/Fuzz_common.txt
# 或用 ffuf
ffuf -u http://target/FUZZ -w /pentest/AboutSecurity/Dic/Web/Directory/Fuzz_common.txt -mc 200,301,302,403重点不是跑大字典,而是看结果中有没有:
- 管理后台 (
/admin,/manager,/console) → 直接尝试登录 - 配置泄露 (
.env,config.php,web.config) → 可能有数据库密码 - 源码泄露 (
/.git,.svn,backup.zip) → 参考information-disclosure-methodology - 调试端点 (
/actuator,/debug,/phpinfo.php) → 大量内部信息
Phase 3: 手动测试(自动化扫不到的)
自动化工具覆盖不了逻辑漏洞和需要上下文理解的漏洞。对每个功能点做针对性测试:
3.1 输入点测试矩阵
| 功能点 | 优先测试 | 参考技能 |
|---|---|---|
| 搜索/查询 | SQL 注入 | sql-injection-methodology |
| 登录表单 | 弱密码、SQL注入、暴力破解 | default-cred-sweep |
| 文件上传 | 类型绕过、路径穿越 | file-upload-methodology |
| 用户输入回显 | XSS、SSTI | xss-methodology, ssti-methodology |
| 评论/留言 | 存储型 XSS | xss-methodology |
| URL/文件路径参数 | LFI/SSRF | lfi-rfi-methodology, ssrf-methodology |
| XML 输入/SOAP/文件上传 | XXE | xxe-injection-methodology |
| API 端点 | IDOR、认证绕过 | api-fuzz, idor-methodology |
| JWT Token | 算法绕过、密钥爆破 | jwt-attack-methodology |
3.2 测试优先级
1. 直接可 RCE 的 → 命令注入、反序列化、SSTI、文件上传 2. 可读取敏感数据的 → SQL注入、LFI、IDOR 3. 可获取凭据的 → 默认口令、信息泄露、弱加密 4. 需要用户交互的 → XSS、CSRF(CTF 中通常不考)
Phase 4: 结果分析与攻击路径规划
扫描完成后,不是列一堆漏洞就完了——要评估哪些漏洞能组合出攻击路径:
直接路径(一步到位):
- RCE 漏洞 → 直接拿 shell
- 管理后台弱密码 → 后台功能利用
组合路径(多步链式):
- 信息泄露 → 获取凭据 → 登录后台 → 后台文件上传 → webshell
- SQL 注入 → 读配置文件 → 获取密钥 → 伪造 JWT → 管理员权限
- SSRF → 读取云元数据 → 云凭据 → 参考
cloud-metadata
注意事项
- 自动化扫描是起点不是终点——真正的高危漏洞往往需要手动发现
- 指纹识别准确度直接影响后续效率,花 1 轮做好指纹值得
- 发现一个低危漏洞时,想想它能不能和其他发现组合出高危攻击链
测试优先级
- RCE 优先:命令执行漏洞可直接拿 flag
- 默认凭据第二:后台权限可快速获取更多信息
{
"skill_name": "web-vuln-scan",
"evals": [
{
"id": 1,
"name": "scan-tech-stack-driven-strategy",
"prompt": "scan_finger 识别目标为 Python Flask 应用(Werkzeug 调试模式开启)。请根据这个技术栈确定你的扫描和手动测试优先级。",
"expected_output": "Flask → 优先测试 SSTI、Debug 模式 RCE(Werkzeug debugger PIN)、Pickle 反序列化、Secret Key 泄露",
"expectations": [
"SSTI|模板注入|Jinja2|Flask特有",
"Werkzeug|Debug|PIN码|console|RCE",
"Pickle|反序列化|session|Secret Key",
"Flask|Python|框架特定漏洞",
"config泄露|SECRET_KEY|环境变量"
],
"required_terms": [
"SECRET_KEY",
"SSTI",
"RCE"
]
},
{
"id": 2,
"name": "scan-test-priority-rce-first",
"prompt": "初步扫描发现了以下漏洞线索:A) 搜索框可能有反射型XSS B) 文件上传接受 .php 文件 C) /admin 页面有默认凭据 D) 评论功能可能有存储型XSS。在 CTF 场景下你应该按什么顺序测试?为什么?",
"expected_output": "优先级:B(文件上传→RCE) > C(默认凭据→后台) > D(存储型XSS) > A(反射型XSS)。RCE 优先。",
"expectations": [
"文件上传|优先|RCE|直接执行代码",
"默认凭据|第二|后台权限|快速获取",
"RCE优先|命令执行|直接拿flag",
"XSS低优先|CTF通常不考|需要用户交互",
"优先级排序|按危害|按效率"
],
"required_terms": [
"RCE",
"RCE优先",
"直接拿flag"
]
},
{
"id": 3,
"name": "scan-input-point-to-vuln-mapping",
"prompt": "目标 Web 应用有以下功能点:搜索框、文件上传、用户头像URL输入、评论功能、JWT Token 登录。请将每个功能点映射到应该优先测试的漏洞类型。",
"expected_output": "搜索→SQLi/XSS,上传→文件上传绕过,URL输入→SSRF,评论→存储XSS,JWT→算法绕过",
"expectations": [
"搜索|SQL注入|SQLi|反射XSS",
"文件上传|类型绕过|webshell|路径穿越",
"URL输入|SSRF|服务端请求伪造",
"评论|存储型XSS|持久XSS",
"JWT|算法绕过|密钥爆破|none"
],
"required_terms": [
"SQL注入",
"SQLi",
"SSRF"
]
}
]
}
{
"skill_id": "web-vuln-scan",
"recall_tests": [
{
"id": 1,
"type": "keyword_positive",
"description": "核心关键词",
"keywords": [
"web vuln scan",
"漏洞扫描",
"安全评估"
]
},
{
"id": 2,
"type": "keyword_positive",
"description": "工具搜索",
"keywords": [
"nuclei",
"指纹识别",
"深度测试"
]
},
{
"id": 3,
"type": "keyword_negative",
"description": "不应被CTF召回",
"keywords": [
"ctf forensics",
"volatility"
]
}
],
"llm_tests": [
{
"id": 1,
"name": "web-vuln-scan-scenario",
"scenario": "需要对目标 Web 应用进行全面漏洞扫描。请搜索 Web 漏洞扫描方法论。",
"max_rounds": 2,
"expect_tool_calls": [
{
"tool": "list_skills",
"keyword_contains": "scan|vuln|扫描|漏洞扫描"
},
{
"tool": "read_skill",
"id": "web-vuln-scan"
}
]
}
]
}