已关闭
【安全】【敏感数据生命周期】【SENS-11:gitleaks 检出 secret 明文随流水线日志与 SARIF 报告留存】 #7
YanZhaohong创建于  10 天前关闭于  9 天前
YanZhaohong
YanZhaohong成员
10 天前 创建

来源:敏感数据生命周期安全性排查(2026-09-28,基于 pre-commit-action 主分支最新代码)
对应排查表《敏感数据生命周期安全性排查》第 3 行;数据流分析详见排查结果目录 pre-commit-action/ 下同名 docx

敏感数据项

被扫描仓检出的 secret 明文值(gitleaks Secret/Match 字段)

问题描述(checklist SENS-11)

gitleaks 钩子检查失败时插件解析失败日志兜底生成报告,检出 secret 明文随流水线日志与 SARIF message 明文留存(SENS-11)

数据流

pre-commit run 输出(含明文 secret)→ runStreaming 实时转发到流水线控制台 → parseGitleaks 提取 Secret/Match 前 60 字符写入 finding.message → 生成 gitleaks.sarif 落盘并上传平台

全生命周期分析([存储]/[打印]/[回显]/[硬编码])

产生
[存储] secret 本存在于被扫描代码中(源头在被检仓)
[打印] gitleaks 原生日志即明文输出(插件未传 --redact)
[回显] 随钩子输出实时回显
[硬编码] 不涉及

使用
[存储] 插件捕获进内存 output 字符串
[打印] runStreaming 镜像到流水线控制台(明文,问题点)
[回显] 流水线日志实时可见明文 secret
[硬编码] 不涉及

传输
[存储] 不涉及
[打印] 不涉及
[回显] 不涉及
[硬编码] 不涉及;SARIF 上传经平台通道完成

转移
[存储] 明文写入 /tmp/pre-commit-reports/gitleaks.sarif,未掩码(问题点)
[打印] 不涉及
[回显] 不涉及
[硬编码] 不涉及

归档
[存储] SARIF 报告上传平台长期归档,secret 明文(前 60 字符)随报告留存
[打印] 不涉及
[回显] 不涉及
[硬编码] 不涉及

销毁
[存储] /tmp/pre-commit-reports/ 报告目录无主动清理逻辑
[打印] 不涉及
[回显] 不涉及
[硬编码] 不涉及

外部客户视角

  • 是否可通过命令行/日志/调试/错误提示等方式明文获取:是
  • 是。① 有流水线日志查看权限的用户可在控制台实时看到明文 secret;② 有报告权限的用户可在 gitleaks.sarif message 中看到 secret 前 60 字符。整改建议:gitleaks 启用 --redact,报告生成前对 secret 掩码。

整改建议

  • 应启用 --redact
  • 无过滤转发
  • 本地目录无清理;平台长期留存
  • 整改建议:gitleaks 启用 --redact,报告生成前对 secret 掩码。
likedislike
YanZhaohong
YanZhaohong成员
9 天前 评论:

本 issue 为敏感数据生命周期安全性排查批量建单的误存档,经确认予以关闭清理。

likedislike
YanZhaohong
YanZhaohong成员
9 天前 评论:

本 issue 为敏感数据生命周期安全性排查批量建单的误存档,经确认予以关闭清理。

likedislike
YanZhaohongYanZhaohong成员
9 天前 关闭了 issue