监管和法律更新 加密税务与合规

揭秘GitHub的“Oops Commits”:如何发现价值25000美元的泄露秘密

监管和法律更新 加密税务与合规
I Scanned all of GitHub's "Oops Commits" for Leaked Secrets worth $25k in B

深入解析GitHub中“Oops Commits”现象,通过扫描被删除的提交找出隐藏的敏感信息,揭示安全隐患及防护策略,为开发者和安全从业者提供实用指导与应对方法。

在现代软件开发流程中,代码托管平台如GitHub成为了开发者协作的核心工具。然而,代码的易访问性和开源的特性也带来了新的安全挑战。尤其是当开发者在不经意间提交了敏感信息后,简单的删除操作往往并不能保证数据的彻底清除。近期一项研究揭示了GitHub“Oops Commits”的秘密,并通过扫描这些被删除的提交成功挖掘出价值超过25000美元的泄露秘密,引发了业界对于代码安全管理和数据泄露防护的新一轮关注。 所谓“Oops Commits”,指的是开发者错误提交了敏感信息、如API密钥、凭证、配置文件等内容后,尝试通过重写Git历史或强制推送(force push)将这些错误提交删除的行为。从技术层面看,Git的版本控制机制允许撤销和修改提交,但GitHub作为托管平台却长时间保留这些被删除或不再被主分支引用的提交对象,形成了所谓的“幽灵提交”或“悬空提交”。

这些提交仍然可以通过特定工具或接口进行访问和还原,由此造成了意料之外的安全风险。 GitHub官方并未对这些被删除的提交给予完全清除,主要原因可能涉及后台的复杂功能支持,如拉取请求、代码分支管理、审核日志以及分叉机制等,使得完整删除一个提交不仅具备技术难度,还可能影响平台的其他功能正常运作。于是,许多秘密信息即使执行了彻底的重置,也可能依然存在于GitHub服务器中,等待被有心人挖掘。 在这一背景下,白帽黑客Sharon Brizinov利用GitHub事件API和GitHub Archive公共数据,系统性地监控和分析了自2020年以来的所有“零提交”强制推送事件。所谓零提交事件,是指通过强制推送而实际未包含新增提交的操作,通常意味着分支的状态被重置,之前的提交被“隐藏”了。通过抓取这些事件中的“before”提交哈希,研究者能够定位到那些被删除的提交,随后使用高效的自动化工具如TruffleHog对这些提交内容进行敏感信息扫描和分析。

TruffleHog是一款著名的开源安全工具,可以自动识别提交历史中潜在的敏感信息,包括密钥、令牌、密码等。结合这项工具和对GitHub Archive数据的深度挖掘,研究团队成功发现成千上万条活跃的秘密,涵盖了AWS、Azure、Google Cloud等主流云服务平台的访问凭证,以及大量GitHub个人访问令牌(PAT)等高价值信息。 进一步的手工梳理和自动化辅助筛选表明,多数泄露源自开发者在配置文件或者环境变量文件(如.env)中的失误提交。这些文件往往包含未加密的明文秘钥,一旦推送即可能被公共访问。同时也发现,很多泄露的凭证因其权限范围较小,比如学生项目对MongoDB数据库的访问,造成的影响较低。而真正高风险的泄露通常涉及到广泛权限的GitHub PAT或云平台Root账号,背后更关联着企业基础设施的安全。

这项研究的一个经典案例极具代表性:一名开发者误将拥有Istio项目管理权限的GitHub PAT提交到了公共代码库。Istio是广泛应用于微服务网格的关键开源项目,拥有众多核心企业用户和社区贡献者。一旦该令牌被滥用,攻击者能够以管理员权限访问所有Istio相关的代码库,具备远程更改代码、发布新版本甚至破坏项目的能力,潜在引发大规模的供应链攻击。幸运的是,这一风险在被及早发现后得到了及时修复和撤销权限,避免了危机的发生。 针对该类隐秘且持续存在的风险,研究者和安全团队建议开发者务必采取多层次的保密及审计措施。首先,一旦敏感信息误提交,应立即进行密钥吊销和更换操作,不应单纯依赖删除代码。

其次,定期使用诸如TruffleHog之类的自动化工具对代码仓库进行扫描,以发现历史和当前提交中潜在的泄露。第三,良好的Git操作习惯和权限管理策略能够显著降低无意中泄漏秘密的几率,例如避免在公共仓库暴露环境变量文件,严格控制访问权限和密钥生命周期等。 此外,GitHub社区也在加强相关保护机制。例如逐步推出自动扫描公共仓库中的敏感信息、增强私有仓库的安全控制,以及开放更多API支持,助力企业用户自建安全防线。同时第三方安全厂商也积极开发结合人工智能和大数据的秘密检测平台,通过数据可视化和智能分析,帮助团队迅速定位核心风险,从而高效响应和复原。 这一发现揭示了“删除”并不等于“消失”的安全真相。

尤其是在Github这样全球最大规模的代码托管平台,任何一次误操作都可能留下长期的安全隐患,给开发者和企业带来难以估量的损失。研究者强调,安全思维应贯穿开发全生命周期,充分理解并利用平台机制,建立多渠道、多层级的监控和应急体系,才能更好地防范信息泄露。 总体来看,GitHub“Oops Commits”中隐藏的秘密不仅仅是技术层面的问题,更是云时代软件供应链安全的重要环节。通过系统化的方法获取并分析被删除提交中的信息,使安全从业者得以提前发现被忽视的漏洞,保障整体软件生态的健康。未来随着更多工具的开放和社区的合作,这类安全挑战有望得到更有效的遏制和管理。 对于广大开发者而言,这次研究的启示在于始终谨慎对待代码中的敏感信息,不可掉以轻心。

建立强大的密码和密钥管理习惯,不断提升安全意识,及时清理和撤销不再使用的凭证,借助自动化安全检测工具提升防护能力,方能在快速迭代的开发节奏中保障自身和团队的数字资产安全。 GitHub上的代码虽然开源便捷,但每一次提交的背后都有着安全风险的潜伏。我们应当把握这次“Oops Commits”研究所揭示的洞见,将安全融入工作流程的每个细节,筑牢代码防线,防止秘密意外泄露,保障开发和业务的可持续发展。

加密货币交易所的自动交易 以最优惠的价格买卖您的加密货币 Privatejetfinder.com

下一步
Show HN: I built a tool that extracts structured financial data from PDFs
2025年10月03号 01点12分52秒 智能财务数据提取工具:用AI简化PDF财务报表分析流程

探索基于人工智能的财务数据提取工具如何革新PDF财务报表处理,自动化数据录入,提升准确性并支持多语言多格式,极大优化财务分析和决策效率。

Show HN: PromptOps – Git-native prompt management for LLMs
2025年10月03号 01点13分41秒 PromptOps:面向大型语言模型的Git原生提示管理利器

随着大型语言模型(LLM)在各行业的广泛应用,高效且可靠的提示管理成为实现高质量对话和智能应用的关键。PromptOps作为一个Git原生的提示管理和测试框架,为团队提供了自动版本控制、无缝集成和灵活测试的解决方案,提升了提示开发的规范性和生产效率。本文深入探讨PromptOps的功能优势、工作机制及实际应用,助力人工智能从业者优化Prompt管理流程。

I convinced my K8s team to go AWS serverless. Spoiler, they didn't
2025年10月03号 01点14分44秒 如何说服K8s团队采用AWS无服务器架构:从失败中汲取的宝贵经验

探索在推动Kubernetes团队转向AWS无服务器架构过程中所面临的挑战与思考,深入分析无服务器和容器编排的优劣与协同之道,帮助技术团队在云计算转型中做出更明智的决策。

Chess Grandmasters Do Not Burn 6000 Calories per Day
2025年10月03号 01点15分58秒 揭秘棋手的真实体力消耗:国际象棋大师并非每天燃烧6000卡路里

深入探讨国际象棋大师的能量消耗真实情况,揭开围绕棋手体力消耗的误解,结合科学研究与专家观点,提供权威且详实的信息,帮助读者全面了解棋手的身体负荷与热量消耗。

The pedestrian technology underneath the hype
2025年10月03号 01点16分38秒 剖析大型语言模型背后的朴素技术:超越炒作的自动化潜力

深入探讨大型语言模型在代码自动化中的实际应用,揭示其朴素技术如何突破传统软件的限制,为软件开发带来前所未有的机械化自动化革命。

Show HN: CSS generator for a high-def glass effect
2025年10月03号 01点17分32秒 高解析玻璃效果CSS生成器:打造现代网页设计的视觉革新

探讨高解析玻璃效果在网页设计中的应用及其优势,介绍CSS生成器如何简化设计流程,助力开发者和设计师创造出令人惊艳的玻璃质感视觉体验。

Ongoing Campaign Abuses Microsoft 365's Direct Send to Deliver Phishing Emails
2025年10月03号 01点18分17秒 微软365 Direct Send功能遭持续滥用,钓鱼邮件攻击潮再起

微软365的Direct Send功能被不法分子利用,成为钓鱼邮件新兴攻击载体。检测与防御这一威胁手段对企业信息安全至关重要。本文深入剖析攻击原理、实际案例以及防护策略,助力企业提升安全防范能力。