Skip to main content

机密泄漏风险

未经授权的用户可以利用提交到存储库的 API 密钥、密码和令牌等机密,从而为组织创建安全、合规性和财务风险。

机密和凭据

机密是授予对敏感系统和数据的访问的凭据,包括 API 密钥、密码、身份验证令牌、证书和加密密钥。 将机密提交到存储库时,它们将成为 Git 历史记录的一部分,即使在从最新提交中删除后仍可访问这些机密。

可以通过自动扫描工具和未经授权的用户发现代码存储库中的机密。 公共存储库特别易受攻击,但来自专用存储库的泄露凭据也可以通过分支、CI/CD 日志或第三方集成进行传播。

公开的机密的安全影响

公开的机密可能导致多种类型的安全事件:

          **未经授权的访问和使用情况**
  • 泄露的云提供商凭据可用于在帐户上预配基础结构或服务

  • 数据库凭据允许访问敏感客户或组织数据

  • 服务帐户令牌提供生产系统的入口点

            **操作和合规性问题**
    
  • 可以使用泄露的凭据修改或删除基础结构

  • 由于机密信息泄露导致的数据泄露可能会在 GDPR、CCPA 和其他框架下引发监管处罚。

  • 组织面临事件响应、凭据轮换和系统修正的成本

            **组织风险**
    
  • 公开披露泄露的机密会影响客户信任和组织声誉

  • 公开的包注册表令牌可用于发布软件的恶意版本

  • 可能会利用专有 API 密钥或服务凭据

暴露的机密的财务影响

机密泄漏可能会导致组织的直接和间接成本,从直接支出到长期业务后果。

          **直接成本**
  • 来自泄露的 API 密钥的未经授权的云资源使用情况可能会为计算实例、存储或数据传输产生费用

  • 对被入侵帐户进行加密挖掘操作可能会导致大量基础设施账单

  • 紧急事件响应需要跨系统进行取证调查、安全审核和凭据轮换的资源

            **数据泄露成本**
    
  • 根据 GDPR、CCPA 和行业特定的法规,数据保护违规的监管罚款可能达到数百万美元

  • 法律成本包括调查、通知要求和潜在的诉讼

  • 受影响的客户的信用监视和标识保护服务

            **运营影响**
    
  • 因基础结构受损而导致服务中断导致收入和工作效率下降

  • 响应安全事件所用的工程时间将资源从产品开发转移

  • 在发生事件后增加了安全工具和监视成本

            **长期业务影响**
    
  • 客户在公开披露安全事件后流失

  • 增加网络责任保险保险费

  • 由于安全评估或合规性审核失败,业务机会丢失

常见机密泄漏场景

机密通常通过几种常见模式进入存储库:

          **开发工作流**
  • 在本地测试期间硬编码并在无意中提交的凭证

  • 配置文件中的机密(如 .env 文件或基础结构即代码模板)

  • 包含文档、wiki 或 README 文件中真实令牌的示例凭据

            **存储库管理**
    
  • 包含被遗忘但仍处于活动状态的凭据的旧存储库

  • GitHub 问题、拉取请求评论、讨论或 gists 中共享的机密

  • 外部参与者或承包商引入的凭据

            **版本控制挑战**
    
  • 即使在从当前代码中删除后,机密仍保留在 Git 历史记录中

  • 凭据传播到分叉存储库、备份系统和日志

  • 具有公开机密的公共存储库由搜索引擎和专用扫描服务编制索引

使用 GitHub 的秘密安全性

          GitHub 提供了有助于防止、检测和修正机密泄漏的工具:

1. 防止泄露新机密

          **为存储库启用推送保护**,以便在操作期间`git push`扫描代码,并阻止包含检测到的机密的提交。 这样可以防止凭据进入存储库,同时向开发人员提供实时反馈。

鼓励您的贡献者为他们的个人帐户启用推送保护(此功能称为“用户推送保护”),以保护他们所有推送到其存储库、派生库以及他们参与的 GitHub 上的所有存储库。 这样,单个开发人员就可以防止机密泄露,而无需等待组织级策略。

2.检测现有机密

使用 secret scanning 持续监测存储库中的提交机密,并在检测到凭据时接收警报。 这样,便可以快速撤销和轮换泄露的凭据。

后续步骤

保护组织免受机密泄露:

  1. 运行免费的机密风险评估,了解当前风险。 了解如何运行免费的机密风险评估

  2. 启用推送保护以防止提交新机密。

  3. 单击 secret scanning 以开始检测机密泄漏。

  4. 为开发团队建立安全凭据管理做法。

关于GitHub的保密安全功能概述,请参阅关于 GitHub 的机密安全性