上线前、调接口、过安全评审时逐条勾选
发版前 5 分钟过一遍,能挡掉大部分低级事故
别只看「浏览器没报错」—— 证书可能 3 天后过期。查一次剩余天数再发。
打开工具 →HSTS / CSP / X-Content-Type-Options 至少要有,缺了会在渗透测试里被记一条。
打开工具 →「每天 3 点」和「每 3 小时」是两种完全不同的表达式,用解析器看接下来 5 次执行时间。
打开工具 →文件名不带 hash 却设了 1 年缓存,等于用户永远拿不到新版本。
裸域没有 A 记录是最常见的「上线后只有一半人能打开」。
打开工具 →按这个顺序排查,比盯着代码猜快得多
把 token 解出 payload,exp 是秒级时间戳,和当前时间比一下。
打开工具 →后端返秒、前端按毫秒算,日期会变成 1970 年或几万年以后。
打开工具 →URL 安全变体(-_)与标准变体(+/)混用,解码会静默出错。
打开工具 →先用 JSON Path 试出来,再写进代码,省得反复改取值的下标。
打开工具 →把两边的响应贴进结构化对比,直接看是哪个字段不一样,而不是靠肉眼找。
打开工具 →query 里出现 & = # 空格,不转义会被截断成别的参数。
打开工具 →被扫描器判定为「低危」的项目,多半在这里
HSTS 要带 includeSubDomains,否则子域仍可能被降级到 http。
打开工具 →带凭据的接口写 * 浏览器本来就会拒;不带凭据的公开接口写 * 要看是否真的希望任何人调用。
打开工具 →只校验域名格式不够,还要校验解析结果 —— 否则 DNS 可以指向 127.0.0.1。
打开工具 →缺中间证书时,桌面浏览器常常正常而移动端报错 —— 因为桌面缓存过中间证书。
打开工具 →把 192.168.0.0/16 之外的地址当内网用,接 VPN 时会大面积不通。
打开工具 →