本文へ移動
cccskills
無料GitHub で公開

recognize-attack-surface

渗透测试的攻击面识别与研判总线:拿到一个目标或功能点时,先用它判断"这里可能是哪类漏洞、该用哪个 hunt skill",并覆盖没有专用 hunt skill 的横切类别——跨组件攻击链、业务逻辑漏洞、安全配置错误、信息泄露。

当用户说"从哪下手""这个功能可能有什么问题""帮我看看攻击面""该测哪类漏洞""怎么把几个小问题串成大的"时使用;也在每次渗透开局做侦察分诊时使用。输出:识别出的可疑信号 + 路由到的 hunt skill 清单 + 横切类别的研判结论。

インストール方法を見る

含まれるファイル(2)

  • SKILL.md5.8 KB
  • references/patterns.md13.0 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

recognize-attack-surface · 攻击面识别与研判

这是渗透 skill 库的分诊总线:不直接挖某一类漏洞,而是看清目标后判断"该往哪个 hunt skill 走",并亲自处理四类不适合做成单点猎杀的横切问题——跨组件攻击链、业务逻辑、配置错误、信息泄露。

用法心智:先侦察→按信号路由到具体 hunt skill→对横切类别用本文的研判清单→把散点串成链。深度案例与信号目录见 references/patterns.md(渐进披露,判定某类时再读对应段)。

何时用哪个 hunt skill(路由表)

看到左边信号,转右边 skill:

观察到的信号路由到
服务端按用户 URL 发出站请求(预览/抓取/webhook/导入)hunt-ssrf
前面有 CDN/反代 + keep-alive,怀疑前后端解析不一致hunt-request-smuggling
输入进 shell / 传给 git/tar/ffmpeg/ImageMagick 参数hunt-command-injection
文件名/路径/下载/解压吃用户输入hunt-path-traversal
依赖 Node.js 权限模型做隔离hunt-nodejs-permission-bypass
cookie/token/viewstate 是序列化对象;导入触发对象还原hunt-deserialization
递归 merge/JSON 深合并/__proto__ 可控hunt-prototype-pollution
登录/SSO/SAML/OAuth/2FA/重置/邮箱验证环节hunt-auth-bypass
用户输入回显到 HTML/JS/属性,或前端 sink 消费 URLhunt-xss
解析用户 XML(SOAP/SVG/SAML/DOCX/RSS)hunt-xxe
输入拼进 SQL/NoSQL 查询hunt-sqli
状态变更操作的 CSRF 防护可疑hunt-csrf
前有缓存层 + unkeyed 输入影响响应hunt-cache-poisoning
按用户参数跳转(next/return/redirect_uri)hunt-open-redirect

一个入口常命中多个——按"最高影响 + 最省条件"排序逐个试。找不到匹配就落到下面四类横切研判。

横切类别研判(无专用 hunt skill,本文直接处理)

A. 跨组件攻击链(把散点串成大的)★

单看每个点都是中低危,价值在组合跨越信任边界。研判方法:

  1. 列出已发现的所有"半成品":一个信息泄露、一个弱 IDOR、一个自 XSS、一个开放重定向…
  2. 找信任边界的接缝:前端↔后端、Web↔移动 App↔API、用户态↔管理态、租户 A↔租户 B、服务↔云元数据。
  3. 沿"信息→凭据→身份→权限→执行"的方向拼:泄露拿线索 → 绕认证 → 越权 → 提权 → 执行/读密。
  4. 每跨一层都留证据;链条整体影响 = 终点影响,即使每一环都不高危。
  • 完成标准:能画出"入口→…→影响"的完整链,每环可复现。

B. 业务逻辑漏洞(没有"payload",靠流程推理)

判定靠违反业务规则的状态,不是特殊字符。研判方法:

  1. 明确这条业务"应有的不变量"(钱守恒、每人限一次、只能改自己的、状态机单向)。
  2. 逐个尝试打破:数量/价格改负、并发/竞态(见下)、跳过步骤、重放、越权对象、时序错乱。
  3. 关注多步流程:把中间步骤替换/乱序/省略,看后端是否仍信任前置状态。
  • 完成标准:构造出一个违反不变量的稳定结果(如少付/多得/占用他人资源)。

C. 安全配置错误

判定靠**"本不该开/本不该默认"的设置**。研判清单:

  • 云资源:可接管的悬空 DNS/S3、开放的元数据、过宽 IAM/SG、默认凭据。
  • 服务:调试端点、管理面暴露、默认账号、目录列举、.git/.env/备份可访问。
  • 传输/协议:不安全默认(明文回退、证书不校验)、危险 CORS、缺失安全头。
  • 完成标准:指出具体错误配置 + 可达的越权/泄露后果。

D. 信息泄露

判定靠拿到本不该给的信息。研判清单:

  • 直接:报错栈/调试信息/源码/.git/密钥/备份/日志、CSP report-uri 侧信道。
  • 侧信道:响应时间差、长度差、错误 vs 正常差异、CSP/Referer 外泄。
  • 越权读:他人对象、跨租户、缓存里别人的数据、ContentProvider/深链读私有。
  • 完成标准:拿到具体敏感数据,并说明它能喂给链条的哪一环(回到 A)。

研判纪律(7 问,任一 NO 则降级/搁置)

  1. 目标在授权 scope 内?
  2. 观察到的是真实信号(可复现的差异/泄露/越权),非猜测?
  3. 能指到具体 skill 或横切类别,而非泛泛"感觉有问题"?
  4. 若路由到 hunt skill,是否满足它的触发前提?
  5. 横切类别是否违反了明确的不变量/边界?
  6. 有证据支撑(响应/时序/泄露内容)?
  7. 影响可陈述,且验证未越权触碰真实用户/数据?

输出格式

## 攻击面研判:<目标/功能>
- 命中信号:<清单>
- 路由 hunt skill:<hunt-xxx(原因)...>
- 横切研判:
  - 跨组件链:<能否串起来 + 草图>
  - 业务逻辑:<被打破的不变量>
  - 配置错误:<具体项>
  - 信息泄露:<拿到什么>
- 下一步:<按影响排序的行动>

参考

各横切类别的信号目录与真实 HackerOne 案例见 references/patterns.md——研判某一类时再读对应段。

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

Use when an agent must decide whether to proceed autonomously, ask for clarification, request approval, or select an appropriate verification scope for a coding or documentation task

日本語の概要は準備中です。原文の説明を表示しています。

galact-byte/galact-Skills72026年10月2日 更新

在授权渗透测试中挖掘认证/授权绕过(authentication & authorization bypass)。当目标的登录、SSO/OAuth/SAML、2FA、会话、密码重置、邮箱验证等鉴权环节可能被逻辑缺陷或解析差异绕过时使用——典型场景:SAML 签名/entityId 绕过、OAuth `response_type`/`redirect_uri` 篡改窃取 token、邮箱规范化/预验证绕过、2FA 可预测/可跳过、会话类型混淆。适用目标类型 Web / REST API / SSO。触发场景包括用户说"测下认证绕过""这个 SAML/OAuth 有没有问题""能不能跳过 2FA""邮箱验证能绕吗"。输出:绕过路径 + 越权访问证据的 finding(含 killed 记录)。

日本語の概要は準備中です。原文の説明を表示しています。

galact-byte/galact-Skills72026年10月2日 更新

在授权渗透测试中挖掘 Web 缓存投毒与缓存欺骗(web cache poisoning / cache deception)。当目标前有缓存层(CDN/反代/Varnish)且缓存键未覆盖某些影响响应的输入(unkeyed header/参数/解析差异)时使用——典型场景:X-Forwarded-Host 反射进响应被缓存、unkeyed 参数、缓存键规范化差异、静态扩展名欺骗缓存私有页。适用目标类型 Web / CDN。触发场景包括用户说"测下缓存投毒""X-Forwarded-Host 能不能毒缓存""缓存欺骗看一下""unkeyed 输入有没有"。输出:投毒/欺骗可行性 + 被缓存证据的 finding(含 killed 记录)。

日本語の概要は準備中です。原文の説明を表示しています。

galact-byte/galact-Skills72026年10月2日 更新

在授权渗透测试中系统性挖掘命令注入与参数/标志注入(OS command injection、argument/flag injection、外部程序 delegate 注入)。当目标把用户输入拼进 shell 命令、或作为参数传给 git/tar/curl/ffmpeg/ImageMagick 等外部程序、或经模板/eval 执行时使用——典型场景:文件名/路径/URL/ref 参数最终进了命令行,想拿 RCE 或任意文件读写。适用目标类型 Web / REST API / CI 系统。触发场景包括用户说"测下命令注入/RCE""这个参数会不会进 shell""git/tar/ffmpeg 参数能注入吗""上传头像触发 ImageMagick 了"。输出:带原始请求/命令回显或带外证据的 finding 报告(含 killed 记录)。

日本語の概要は準備中です。原文の説明を表示しています。

galact-byte/galact-Skills72026年10月2日 更新

hunt-csrf

無料

在授权渗透测试中挖掘跨站请求伪造(CSRF)及其防护绕过。当目标存在状态变更操作(改邮箱/密码/角色/设置、转账、增删)而 CSRF 防护缺失或可绕过时使用——典型场景:无 token/token 不校验、SameSite=Lax 被 GET 或子域绕过、Content-Type text/plain 避开 preflight、cookie 注入伪造 token、Flash/307 重定向绕 CORS、Login CSRF。适用目标类型 Web / REST API。触发场景包括用户说"测下 CSRF""这个改密码有没有 CSRF 防护""SameSite 能绕吗""token 校验严不严"。输出:CSRF 可行性 + PoC 的 finding(含 killed 记录)。

日本語の概要は準備中です。原文の説明を表示しています。

galact-byte/galact-Skills72026年10月2日 更新

在授权渗透测试中挖掘不安全反序列化(insecure deserialization)。当目标把用户可控数据交给 unserialize/Marshal/pickle/ObjectInputStream/BinaryFormatter/YAML.load 等还原成对象时使用——典型场景:cookie/token/viewstate/隐藏字段里出现序列化数据、导入文件触发对象还原、想借 gadget chain 拿 RCE。适用目标类型 Web / REST API(PHP/Ruby/Python/Java/.NET)。触发场景包括用户说"测下反序列化""这个 cookie 是不是序列化对象""能不能 gadget chain 打 RCE""phar/Marshal/pickle 打一下"。输出:识别出的序列化落点 + gadget 可用性判定 + 带外/回显证据的 finding(含 killed 记录)。

日本語の概要は準備中です。原文の説明を表示しています。

galact-byte/galact-Skills72026年10月2日 更新

galact-byte のスキルをすべて見る

このスキルの問題を報告する