ApacheSBC/secret-scanning-rotation

GitHub: ApacheSBC/secret-scanning-rotation

企业级密钥检测与轮换流水线,通过GitLeaks、TruffleHog等多层扫描工具与GitHub Actions自动化相结合,实现从本地提交拦截到CI/CD持续检测及密钥轮换的全生命周期管理。

Stars: 0 | Forks: 0

# 密钥扫描与轮换流水线 该项目组合展示了使用 GitLeaks、TruffleHog、pre-commit 钩子和 GitHub Actions 的企业级密钥检测与轮换工作流。 ## 项目功能 | 层级 | 工具 | 目的 | |---|---|---| | 本地扫描 | GitLeaks | 扫描 git 历史中泄露的密钥 | | 本地扫描 | TruffleHog | 深度熵值和模式扫描 | | Pre-commit | GitLeaks hook | 在密钥被提交前进行拦截 | | CI/CD | GitHub Actions | 每次推送和 PR 时自动扫描 | | 轮换 | 自定义 Python | 模拟检测、撤销、轮换和验证 | ## 工具与技术栈 - GitLeaks v8 — 基于模式的密钥扫描 - TruffleHog v3 — 熵值与已验证凭证扫描 - pre-commit — git 钩子框架 - GitHub Actions — CI/CD 自动化 - Python 3.13 — 轮换模拟脚本 - AWS IAM 和 Secrets Manager — 轮换目标(模拟) ## 本地运行 ``` gitleaks detect --source . --verbose trufflehog git file://$(pwd) --no-verification python3 scripts/rotate_secret.py python3 scripts/verify_rotation.py ``` ## 演示的关键安全概念 1. 纵深防御 — 多层扫描(本地和 CI/CD) 2. 安全左移 — 在提交时拦截密钥,而非在推送后 3. 审计日志 — 每次轮换事件均带有时间戳 4. 最小权限 — 轮换范围仅限特定密钥 5. 零信任 — 新凭证在旧凭证完全停用前进行验证
标签:AWS Secrets Manager, CI/CD安全, DevSecOps, GitHub Actions, GitLeaks, JSONLines, Llama, Pre-commit, Python, StruQ, TruffleHog, 上游代理, 代码安全, 凭据检测, 学术论文, 安全合规, 密钥轮换, 左移安全, 微调策略, 无后门, 深度防御, 漏洞枚举, 网络代理, 自动笔记, 逆向工具, 零信任, 静态应用安全测试(SAST)