TL;DR
目的:从组件指纹到 CNVD 通用型报告的完整主线(SRC 最高产链路)
适用:CNVD 通用型 / EduSRC / 项目渗透的 N-day 环节
输入:目标 URL + 已知组件线索(响应头/页面特征/favicon)
输出:组件指纹卡 + CVE 清单 + 可复现 PoC + 影响面论证
红线:仅复现公开 PoC,不开发 0-day;PoC 先在自建环境验证,再打真实目标
关联:见
00-INDEX.md同分类相邻 skill
Workflow
- Fingerprint 指纹 — 响应头 / Wappalyzer / 页面特征路径 / favicon hash 定位组件与精确版本
- CVE lookup 匹配 — 并行查询 NVD / KEV / ExploitDB / GitHub Security Advisories(多源交叉防漏)
- PoC collection 收集 — ExploitDB / GitHub / Packet Storm 找公开 PoC;无现成 PoC 转
skills/nday/cve-poc-generator - Reproduce 复现 — 先在自建环境(Docker/靶机)复现成功,再对授权目标做无害化验证
- Verify 验证门禁 — 强制过
skills/qa/fp-check双工具交叉确认,单工具证据不进报告 - Impact 论证影响面 — FOFA/Hunter/Quake 资产量统计 + 危害场景描述(通用型的核心得分点)
- Report 报告 — 按
templates/cnvd-common.md填写;项目模式用templates/project-pentest.md
Advanced Techniques
Multi-Version Fingerprinting
并行多探针交叉判别版本:Wappalyzer 规则组 + 手工响应头比对 + 行为差异(如 nginx 1.18 vs 1.20 配不同 OpenSSL 的握手行为)。版本号被抹除时降级到区间判定。
Behavioral Fingerprinting
版本串被剥离时,用 OPTIONS/TRACE 方法响应差异、默认错误页样式、静态资源目录结构等行为模式定位组件家族。
Subdomain Coverage
多子域目标逐个跑指纹:不同子域常挂不同技术栈、不同版本——老版本往往残留在边缘子域。
Historical Version Detection
Wayback Machine / Shodan 历史数据 / Censys 证书可揭示历史版本,未打补丁的旧端点可能至今存活。
上下游
- 上游:
skills/recon/*(侦察与指纹输入)、src-session-start(会话挂载) - 下游:
skills/nday/kev(优先级排序)→cve-poc-generator(造验证器)→skills/qa/fp-check→templates/cnvd-common.md