用途:在捕获截图、导出 HAR 或向漏洞赏金平台附加证据之前使用,防止会话 Cookie 泄露、未经同意分享 PII、截图不适合分级。核心原则是证据只需说服分级员,超出此范围的内容(活跃 Cookie、真实用户 PII、无用内部追踪 ID)不应出现在证据中。
主要能力:区分两类敏感数据——自有账户密钥(会话 Cookie、OAuth/刷新令牌、API 密钥,必须始终遮蔽)与他人 PII(姓名、邮箱、电话、地址、头像等,除非明确演示跨账户影响否则遮蔽)。保留对分级有用的元数据,如 trace ID、请求 ID、服务器时间戳、测试账户 UID、GraphQL 操作名与响应结构。
Cookie 遮蔽协议:需遮蔽会话 Cookie、绑定会话的 csrf-token、Authorization 头、Cookie 请求头与会话类 Set-Cookie;可保留 Cloudflare、分析类 Cookie、追踪关联 ID 与服务器头。方法按实用性排序:优先不抓取 Cookie(如 DevTools 控制台使用 credentials: 'include',仅截控制台而非 Network Headers;Burp 中下拉分隔条隐藏请求体);其次用图像编辑器黑条遮蔽(macOS Preview 的 Tools→Annotate→Rectangle,Windows 用 Snip & Sketch 或图像编辑器,Burp 可用 Proxy 的 Match and Replace 预先替换);纯文本用查找替换。
PII 黑条协议:遮蔽姓名、邮箱本地部分、电话后七位、地址、出生年份、政府证件号、头像面部、可关联公开资料的账户 ID;保留字段名、字段形状(如 "first_name": "<REDACTED>")、攻击者会话自身 UID/邮箱、端点 URL、请求方法与 trace ID。报告正文需显式说明已遮蔽并提供按需私下获取未脱敏版本的途径。
HAR 净化:Chrome DevTools Network 中「Save all as HAR with content」导出后,用 jq 将 Cookie、Authorization、x-csrf-token 请求头与 Set-Cookie 响应头及 cookies 值替换为 <REDACTED>。示例命令:sanitize_har /path/to/exported.har 输出 exported.sanitized.har。附加前用 grep -i 'authn|"cookie"|authorization' 检查是否残留,如泄漏需修正 jq 过滤器。若含跨账户数据,还需在 jq 中剥离响应体中的受害 PII 字段。
截图与提交规范:Repeater 下拉分隔条隐藏 Cookie 行,仅截响应面板;Intruder 仅截 Results 表格;Proxy HTTP history 通常不宜作截图。控制台 PoC 保持单次调用单响应,跨调用清屏(Mac Cmd+K、Windows Ctrl+L),长响应只打印摘要,粘贴前需输入 allow pasting。状态变更类发现建议采用五步截图模式(变更前验证、漏洞本身、变更后反向验证、变更后正向验证、带外副作用),文件名采用 {finding-#}-step{step-#}-{description}.png 并在报告正文按文件名引用。
限制与边界:本技能仅覆盖从「已有证据」到「附加到平台」之间的脱敏、净化与卫生层,不涉及需要捕获哪些证据、如何演示利用或资产侦察,这些分别由 triage-validation、report-writing、security-arsenal、offensive-osint 等技能负责,建议与 report-writing 及 Bugcrowd 场景下的 bugcrowd-reporting 配合加载。提交后应轮换测试账号凭据、私下留存未脱敏材料、未经允许不得公开讨论发现,并定期审计本地历史证据。