2022年检测到的硬编码秘密数量比2021年高出67%,公开GitHub提交中就发现了1000万个新增秘密。以上数据出自GitGuardian的《2023年秘密蔓延状况》报告。报告显示,硬编码秘密和秘密蔓延(在多个不同位置存储秘密)加速威胁软件供应链安全。
由于常以明文存储,硬编码秘密造成了重大安全风险,可方便攻击者从源代码中抽取秘密。代码注入或数据泄露等其他安全漏洞也会无意中披露或暴露硬编码秘密。
2022:秘密泄露大年
GitGuardian扫描了去年以来的10亿多个提交,发现2022里秘密相关的泄露尤其多。1330万在2022年向GitHub推送了代码的不同作者中,135万意外暴露了秘密;同时,5.5‰的提交暴露了至少一个秘密,相比2021年增长了50%。GitGuardian将秘密分为两类:特定秘密和通用秘密。特定检测器匹配AWS访问密钥或MongoDB数据库凭证等可识别秘密,特定秘密占了研究中检出秘密的33%。通用秘密占检出秘密的67%,通用检测器匹配公司电子邮件和硬编码在文件中的密码等秘密。
2022年捕获的几大特定秘密是google_api_key、private_key_rsa、private_key_generic、googlecloud_keys和postgresql_credentials。GitGuardian的研究发现,密码、高熵秘密和用户名/密码对是最常见的通用秘密。报告提到了最近的几个案例:利用来攻击Uber和CircleCI的秘密;影响LastPass、微软、Okta和三星等公司的被盗源代码存储库;影响Android、丰田和Infosys的公开暴露秘密。
硬编码秘密和秘密蔓延威胁软件供应链
报告指出,硬编码秘密和秘密蔓延对软件供应链安全造成了重大威胁。“秘密可能经由不止一条途径暴露,而源代码这种资产可能很快就被分包商搞丢了,当然,源代码盗窃也会弄丢源代码。”报告补充道,暗网上与API秘密共享相关的讨论和活动也是个日益严重的问题。“围绕盗卖API密钥的讨论是最近两年暗网上相对较新的一种现象,我们预计这种现象会继续发展。”想要通过入侵供应链扩大恶意软件传播范围的黑客也讨论了源自公开存储库的凭证和轴点。
Omdia高级首席分析师Fernando Montenegro向安全媒体CSO透露:“关键问题在于,无论是出于安全原因还是基础设施升级等非安全原因,很难更改都是硬编码秘密一项非常理想的特性,而硬编码秘密不仅很难更改,还有可能暴露在任何能接触到源代码的人眼前。”这一重大问题可导致攻击者能利用该信息实施假冒攻击或者进一步获取目标环境相关敏感信息。“其后果可能从负面审计结果直到全面基础设施入侵和大规模数据渗漏。目前,这些秘密常现身于Git等源代码控制系统中,此类系统又可能进一步扩大秘密的暴露范围,甚至可能直接暴露在公众眼前。”
Veracode首席信息安全官Sohail Iqbal同意这种观点,并表示,硬编码秘密很容易被盗和暴露,对熟悉秘密的资源构成了内部人威胁。“商业产品中的硬编码秘密为大规模DDoS攻击铺平了道路。不断增加的大量供应链攻击表明内嵌秘密的持续集成/持续交付(CI/CD)管道面临极高风险。”
解决硬编码秘密和秘密蔓延的安全风险
公司必须明白,源代码是自己最宝贵的资产之一,必须妥善保护。“第一步就是清晰审计公司在秘密方面的安全形势:这些秘密在何处如何使用的?在哪儿泄露的?如何准备应对最坏情况?类似很多其他安全挑战,秘密安全防护不佳通常涉及人员、流程和工具三个方面。重视遏制秘密蔓延的公司必须同时在所有这些方面开展工作。”
GitGuardian补充称,可在各个层级左移硬编码秘密检测与缓解,从而构筑贯穿整个开发周期的深度防御。可供使用的策略包括:
● 实时监控集成了本地版本控制系统(VCS)或CI的所有存储库的提交和合并/拉取请求。
● 自用预接收检查加强中央存储库防泄露。
● 做好长期规划:制定策略处理通过历史分析发现的事件。
● 实施秘密安全冠军计划。
Montenegro表示:“设计不使用硬编码秘密的环境应成为大多数公司的头等要务。解决方案各不相同,包括秘密管理工具、源代码审查等。第一步就是从开发人员和安全工程师直到其各自的管理链条,公司内部普遍接受硬编码秘密是个‘必须修复’的安全设计缺陷。
GitGuardian《2023年秘密蔓延状况》报告
https://www.gitguardian.com/files/the-state-of-secrets-sprawl-report-2023
声明:本文来自数世咨询,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如有侵权,请联系 anquanneican@163.com。