con un clic
web-crawler
// Web 爬虫与目标发现技能。定义渗透测试中 Web 爬虫的使用方法论,覆盖爬取策略、 URL/参数/表单/API 端点的发现与提取、JavaScript 渲染页面处理、爬取结果分析, 以及与后续漏洞测试的衔接。是侦查(Recon)阶段的核心技能之一。
// Web 爬虫与目标发现技能。定义渗透测试中 Web 爬虫的使用方法论,覆盖爬取策略、 URL/参数/表单/API 端点的发现与提取、JavaScript 渲染页面处理、爬取结果分析, 以及与后续漏洞测试的衔接。是侦查(Recon)阶段的核心技能之一。
渗透测试安全测试任务设计与执行总指导。作为渗透测试的顶层编排技能,将抽象的安全测试方法论 映射到可直接调用的工具链,定义从目标接收到报告输出的完整决策流程。覆盖侦查、爬虫、 漏洞测试、利用验证的每一步具体操作,串联 recon-planning、web-crawler、xss-testing、 sql-injection、command-injection、template-injection、code-review 等全部子技能。 当用户要求进行渗透测试、安全测试或安全评估时,应首先参考此技能进行任务设计。
Web 应用越权漏洞测试技能。覆盖水平越权(IDOR)、垂直越权(权限提升)、业务逻辑绕过 三大类测试场景。提供基于 HTTP 请求篡改的系统化测试方法论,包括参数替换、Cookie/Token 交换、角色 ID 篡改、隐藏字段操控、HTTP 方法变换、路径遍历、请求头伪造等具体技术。 每种技术都映射到可直接调用的工具(do_http_request, send_http_request_packet, use_browser), 确保 AI 可以自动化执行越权测试。参考 OWASP WSTG-ATHZ-02/03/04 和 OWASP Top 10 A01。
Browser automation skill for web page interaction. Two strategies: (1) Snapshot + refs for simple static pages; (2) JavaScript-first for login forms, SPA, and dynamic pages (PREFERRED). Covers opening URLs, snapshots, clicking, filling forms, evaluating JS, screenshots, tab management, and navigation. Built on go-rod/CDP with headless Chrome. If snapshot returns 0 element refs, DO NOT retry -- switch to JavaScript strategy immediately.
操作系统命令注入漏洞测试技能。覆盖 Linux 和 Windows 环境下的命令注入检测与验证, 提供多种注入操作符、盲注检测方法、编码绕过策略和分步测试流程, 适用于 Web 应用中命令执行类漏洞的发现与确认(CWE-77/CWE-78)。
渗透测试侦查与任务规划技能。定义渗透测试的完整工作流程:从信息收集(Recon)到 范围确定、任务规划和漏洞测试执行。覆盖端口扫描、子域名枚举、Web 搜索、 服务识别等侦查手段,提供 OWASP Top 10 检查矩阵和任务编排策略。
SQL 注入漏洞测试技能。覆盖联合注入、布尔盲注、时间盲注、报错注入、堆叠查询等攻击向量, 提供 MySQL/PostgreSQL/MSSQL/Oracle/SQLite 多数据库的特征 Payload, 包含 WAF 绕过策略和系统化测试流程,适用于 Web 应用 SQL 注入漏洞的发现与确认。
| name | web-crawler |
| description | Web 爬虫与目标发现技能。定义渗透测试中 Web 爬虫的使用方法论,覆盖爬取策略、 URL/参数/表单/API 端点的发现与提取、JavaScript 渲染页面处理、爬取结果分析, 以及与后续漏洞测试的衔接。是侦查(Recon)阶段的核心技能之一。 |
在渗透测试的侦查阶段,Web 爬虫是发现攻击面的核心手段。 通过系统化的页面爬取和内容分析,提取 URL、参数、表单、API 端点等信息, 为后续的漏洞测试提供完整的目标列表。
侦查阶段
├── 被动侦查
│ ├── 子域名枚举
│ ├── DNS 记录收集
│ └── 搜索引擎 Dork
├── 主动侦查
│ ├── 端口扫描 ← 确定 Web 服务端口
│ ├── Web 爬虫 ← 发现页面和参数 (本技能)
│ ├── 目录扫描 ← 发现隐藏路径
│ └── 指纹识别 ← 确定技术栈
└── 产出: 攻击面地图
爬虫产出直接驱动后续测试:
广度优先(推荐用于初始侦查)
深度优先(用于深入分析)
推荐混合策略
域名范围
路径范围
/logout, /signout)/delete, /remove)/static/, /assets/, /images/)频率控制
未认证爬取
认证后爬取
多角色爬取
从爬取结果中提取:
/user/123/profile 中的 123)参数分类
| 参数类型 | 示例 | 测试重点 |
|---|---|---|
| ID 类 | id=123, uid=456 | IDOR、SQL 注入 |
| 搜索/过滤 | q=keyword, filter=xxx | SQL 注入、XSS |
| 文件路径 | file=report.pdf, path=/data | 路径穿越、文件包含 |
| URL/重定向 | url=http://..., redirect=... | SSRF、开放重定向 |
| 模版/渲染 | template=xxx, view=xxx | SSTI |
| 命令/操作 | cmd=ping, action=export | 命令注入 |
| 排序/列名 | sort=name, order=desc | SQL 注入(ORDER BY) |
提取所有表单信息:
action URL 和 methodinput 字段的 name、type、valuetype="file")enctype 属性(multipart/form-data 表示可上传文件)高价值表单
从 HTML/JS 中提取
常见 API 模式
/api/v1/users
/api/v1/users/{id}
/api/v1/users/{id}/profile
/graphql
/graphql/playground
/.well-known/openapi.json
/swagger.json
/swagger-ui.html
/api-docs
API 文档发现
/swagger.json, /v2/api-docs, /openapi.yaml/graphql (introspection query)/application.wadl在爬取过程中关注:
<!-- TODO: remove before production -->)爬虫应收集所有引用的 JavaScript 文件:
<script src="..."> 引用的外部 JS<script> 块中的代码从 JavaScript 文件中提取:
fetch('/api/...'), axios.get('/api/...'))正则提取模式
# API 端点
("|')(/api/[a-zA-Z0-9/_-]+)("|')
("|')(https?://[^"']+)("|')
# 密钥
(api[_-]?key|apikey|secret|token|password)\s*[:=]\s*["'][^"']+["']
# AWS Key
AKIA[0-9A-Z]{16}
对于 SPA (Single Page Application):
将爬取结果组织为树形结构:
target.com
├── / (首页)
├── /login (登录)
├── /register (注册)
├── /user/
│ ├── /user/profile (个人资料)
│ └── /user/settings (设置)
├── /api/
│ ├── /api/v1/users
│ ├── /api/v1/posts
│ └── /api/v1/upload
├── /admin/ (管理后台)
│ ├── /admin/dashboard
│ └── /admin/users
└── /search (搜索)
对每个发现的功能点评估潜在风险:
| 功能点 | 输入参数 | 潜在漏洞 | 测试优先级 |
|---|---|---|---|
| /search?q= | q (搜索词) | SQL 注入, XSS | 高 |
| /api/v1/users/{id} | id (用户ID) | IDOR, SQL 注入 | 高 |
| /upload | file (文件) | 文件上传漏洞 | 高 |
| /user/profile | name, bio | 存储型 XSS | 中 |
| /admin/* | - | 未授权访问 | 高 |
爬取完成后,将结果按漏洞类型分组,传递给对应的测试技能:
爬虫可能遗漏的路径通过字典扫描补充:
/.git/config
/.svn/entries
/.env
/.env.production
/.env.local
/backup/
/backup.sql
/database.sql
/wp-config.php.bak
/config.yml
/config.json
/.htaccess
/server-status
/server-info
/phpinfo.php
/info.php
/test.php
/debug/
/console/
/actuator/
/actuator/env
/actuator/health
/metrics
/trace
/heapdump
/admin/
/administrator/
/manage/
/management/
/backend/
/dashboard/
/portal/
/cp/
/controlpanel/
/webmaster/