بنقرة واحدة
no-auth-quick-test
无账号登录页面快速测试策略。当用户只给了一个登录页面 URL 且没有提供账号密码时使用。在没有认证凭据的情况下,能测试的范围有限,应在3分钟内快速完成外围测试。不要花大量时间在无法深入的功能上。
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
无账号登录页面快速测试策略。当用户只给了一个登录页面 URL 且没有提供账号密码时使用。在没有认证凭据的情况下,能测试的范围有限,应在3分钟内快速完成外围测试。不要花大量时间在无法深入的功能上。
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
攻击面发现总控方法论。在爬取、抓包、JS 分析、API 文档分析、登录后探索、多角色对比阶段使用。用于把页面、接口、参数、Header、Cookie、WebSocket、GraphQL、上传、导入导出、支付、回调、对象存储等所有外部输入点系统性枚举出来,并把每个入口映射到后续漏洞 discovery skill。
认证绕过完整方法论 — 基于 300+ HackerOne/Bugcrowd 真实报告提炼。覆盖未授权访问、登录逻辑缺陷、MFA 绕过、Session 管理攻击、认证降级、默认/泄露凭据、注册逻辑漏洞、API 认证缺失、Response 篡改、Race Condition 认证绕过。任何出现 login/session/token/cookie/Authorization/MFA/2FA/验证码/注册验证/受保护 API 的场景都必须使用此 skill。
Session cookie 分析与伪造方法论。当发现 Web 应用使用 cookie 进行认证、需要判断 cookie 类型并选择伪造方法时使用。覆盖 unsigned base64 cookie 直接伪造、Flask 签名 cookie(flask-unsign 爆破密钥)、加密/二进制 cookie 的识别。本技能负责 cookie 类型判断和分流:如果判断为 JWT(三段式 eyJ 开头),应转至 jwt-attack-methodology;如果判断为加密 cookie 需要 Padding Oracle,应转至 crypto-web-attack
通用漏洞发现方法论 — 当遇到不在已有SKILL覆盖范围内的场景时,教LLM如何系统性地发现漏洞。覆盖:输入点穷举、响应差异分析、边界条件探测、未知技术栈适应、容易被忽略的攻击面。
入口点 → 漏洞类型 → SKILL 映射表。Agent 在 Phase 2 测试功能点时,根据此表判断该入口点最可能存在什么漏洞,精准加载对应 SKILL。这是 Agent 渗透决策的核心路由表 — 定义'至少测什么',但不限制你的推理。
Web 应用敏感信息泄露检测与利用。当发现 .git/.svn 目录、备份文件路径(.bak/.zip/.tar.gz)、.env 配置文件、Swagger/OpenAPI 文档、debug 页面等信息泄露点时使用。也适用于发现源码泄露后的深入利用:git 历史审计(git log -p -S 搜索已删除的密码和 flag)、svn wc.db 文件列表提取、.DS_Store 目录枚举。优先于漏洞利用——信息泄露可直接提供凭据和攻击路径,往往比直接挖漏洞更快进入系统
| name | no-auth-quick-test |
| description | 无账号登录页面快速测试策略。当用户只给了一个登录页面 URL 且没有提供账号密码时使用。在没有认证凭据的情况下,能测试的范围有限,应在3分钟内快速完成外围测试。不要花大量时间在无法深入的功能上。 |
| priority | 9 |
| vuln_types | ["未授权访问","信息泄露","登录绕过","默认口令","源码泄露"] |
| triggers | ["登录页","login","no-auth","无账号","未登录","Cookie缺失","Authorization缺失","Vite","swagger","actuator"] |
| synonyms | ["unauthenticated-test","no-login-test","no-auth-check"] |
| metadata | {"tags":"登录页面,无账号,快速测试,外围,login,no-auth,unauthorized","category":"strategy","authority":"expert"} |
没有账号密码时,能测的东西很有限,3 分钟内完成。不要反复分析同一个页面。
1. js_extract_apis → 查看所有资源文件清单
2. 选择业务 JS 调用 js_analyze_selected 深度分析
3. 关注 JS 中是否有:
- 硬编码的 API Key / Token / 密码
- 内部 IP / 域名
- 管理后台路径
- 调试接口
- Source Map 泄露(等于前端源码泄露)
只要目标有前端页面,就必须检测。Vite Dev Server 暴露在生产环境 = 服务器文件系统可读。
Step 1: 判断是否 Vite Dev Server
proxy_send_request GET /@vite/client → 200 = Vite Dev Server
proxy_send_request GET /src/main.ts → 200 且返回 JS 代码 = 源码泄露确认
Step 2: 如果是 Vite → 立即测 @fs 路径遍历(CVE-2023-34092 等)
proxy_send_request GET /@fs/etc/passwd
proxy_send_request GET /@fs/proc/self/environ
proxy_send_request GET /@fs/app/.env
proxy_send_request GET /@fs/app/package.json
→ 任意一个返回 200 + 文件内容 = 严重漏洞(任意文件读取)
Step 3: 如果 @fs 可用 → 深入读取敏感文件
/@fs/app/.env → 数据库密码、JWT_SECRET、API_KEY
/@fs/app/.env.local → 本地环境变量(常含真实密码)
/@fs/app/prisma/seed.ts → 种子数据中的硬编码用户密码
/@fs/app/docker-compose.yml → 数据库连接串
/@fs/app/server/index.ts → 后端入口代码
Step 4: 即使 @fs 被禁 → Vite Dev Server 仍可读 /src/ 下全部源码
/src/router/index.ts → 完整路由表(所有页面)
/src/api/*.ts → 所有 API 端点定义
/src/stores/user.ts → 认证逻辑、角色判断
/src/utils/request.ts → axios 配置、baseURL、硬编码 Token
⚠️ 发现 Vite Dev Server 在线是高优先级突破口,必须深入利用!
从 JS 提取的 API 中挑 5-10 个不同模块的接口(用户/订单/管理/系统各挑):
- 用 proxy_send_request(method="GET", url=..., drop_auth=true) 请求
⚠️ 必须传 drop_auth=true,否则工具会自动注入全局 Cookie,看到的 200 是带认证态
- 采样结果判断:
├─ 全部 401/403 → 结论"统一鉴权",立即停止未授权测试
│ → 把时间花在下面的登录绕过和 JS 分析上(这些才有突破口)
├─ 某个返回 200 → 发现突破口!记录漏洞,继续深入
└─ /swagger/ /api-docs/ /actuator/ 返回 200 → 信息泄露,记录
⚠️ 不要对 100 个接口逐个测未授权!采样 5-10 个一致就够了。
采样省下的时间用来做更有价值的事:分析 JS 找后门、测登录绕过。
- SQL 注入:用户名填 admin' OR '1'='1,看响应变化
- 用户枚举:分别输入存在/不存在的用户名,对比响应差异
- 默认密码:admin/admin, admin/123456, test/test
- 验证码:有没有验证码?验证码能否绕过(重放/空值)?
- 是否存在注册入口
- 注册是否需要审核
- Mass Assignment:注册时多传 role=admin 字段
- 密码重置功能是否存在
- OAuth/SSO 登录入口
- URL 跳转参数(redirect/next/return_url)
- CORS:发一个带 Origin 的请求看是否反射
- 响应头安全(X-Frame-Options / CSP / HSTS)
- robots.txt / sitemap.xml 是否有隐藏路径
完成以上测试后,总结:
如果在测试过程中获得了认证能力,立即切换到完整测试模式:
| 突破口 | 下一步 |
|---|---|
| SQL 注入万能密码绕过了登录 | 用获得的 Token/Cookie 继续测后台所有功能 |
| 发现默认密码能登录(admin/admin) | 登录后浏览所有功能,注册功能点,完整测试 |
| 某个后台页面/API 未授权可访问 | browser_goto 进入后台,分析所有功能点 |
| JS 中发现硬编码的 Token/密钥 | 用这个 Token 请求 API,看能访问多少功能 |
| 注册了新账号 | 用新账号登录,完整测试认证后功能 |
具体操作:
note_add(type="result") 记录这个突破口漏洞本身browser_set_cookie 或在请求中带上获取的 Tokenbrowser_goto 访问后台页面browser_get_content + js_extract_apis 分析后台功能sitemap_add_feature 注册新的功能点不要发现突破口后只记录漏洞就结束 — 这是渗透测试最有价值的时刻,要深入!
对任何未登录请求,不要只看状态码,必须结合响应体、字段数量、跳转位置和错误语义判断:
| 响应 | 判定 | 下一步 |
|---|---|---|
200 + 真实业务数据 | confirmed_vuln | 记录未授权访问证据,继续测同模块列表/详情/导出 |
200 + 空数组/空对象 | suspected | 换 ID、换分页、加 verbose/debug、测列表和详情差异 |
302 到登录页 | 暂不算漏洞 | 继续检查 API 是否仍返回 JSON,前端跳转不能代表服务端鉴权 |
401/403 | 暂不算漏洞 | 尝试方法改写、路径变体、头部绕过、旧版本 API、大小写路径 |
404 | 不直接判安全 | 对比带认证/不带认证是否同样 404,排除伪装拒绝 |
字段减少但仍有 id/email/phone/order/status | suspected | 评估是否为敏感信息泄露或对象枚举 |
not_vuln 前最低自检drop_auth=true。.json、方法改写。needs_review,而不是把认证后漏洞判为不存在。