返回 Bug 清单
BUG-0208project-28高已修复security-injection
以关键词正则判定凭据泄露 —— 命中项全是提交信息与标识符
发现:2026-09-30验证:2026-10-27置信度:95%
症状
用 (token|password|secret|credential|passwd) 扫描仓与日志,命中大量结果,据此判定存在凭据泄露。
根因
这些词是【安全话题的常用词】,必然出现在:git 提交信息(fix(nginx): re-enable auth_basic password gate …)、工单编号(INSTR-CAP-SECRET-READ-ENFORCE-20260910)、项目名(project-10)、配置路径。关键词命中率与『是否真含凭据』无关。
修复方案
凭据检测必须用【凭据本身的形状】而非话题词:
· 云厂商 Key 前缀:AKIA / LTAI / AKID / AIza
· 令牌前缀:ghp_ / gho_ / ghs_ / sk- / sk-ant- / eyJ(JWT)
· 私钥头:-----BEGIN … PRIVATE KEY-----
· 连接串:scheme://user:pass@host
并【抽样阅读上下文】确认是真实值还是示例/占位符。实测本例:712 条长字符串样本全部是 INSTR 编号与路径,无真实凭据。
检测命令
grep -rEo 'AKIA[0-9A-Z]{16}|LTAI[a-zA-Z0-9]{12,20}|ghp_[A-Za-z0-9]{20,}|sk-[a-zA-Z0-9]{20,}|-----BEGIN [A-Z ]*PRIVATE KEY-----' <target>错误签名
grep -iE 'token|password|secret|credential' 命中 N 条 ⇒ 判定凭据泄露技术信息
来源项目
project-28
标签
false-positive, secret-detection, grep, verification-method