内容提要
GitHub现在能够扫描公共问题以发现PyPI密钥泄露。自2021年与PyPI集成以来,GitHub会在用户意外公开PyPI令牌时通知并自动撤销该令牌。最近,GitHub增强了秘密扫描功能,能够检测问题标题、描述和评论中的泄露,且无需更改现有集成。
延伸解读
扫描范围扩展至问题内容
GitHub 的秘密扫描功能此前仅覆盖代码,现在已扩展到公共问题的标题、描述和评论,包括历史修订。这意味着即使密钥没有直接提交到代码库,而是在问题讨论中被意外粘贴,也会被检测到。对于 PyPI 用户而言,这进一步降低了令牌泄露的风险,因为问题区往往是开发者分享配置或调试信息时容易疏忽的地方。
自动撤销机制与数据
自 2021 年集成以来,GitHub 在检测到公开的 PyPI 令牌后会通知 PyPI,后者自动撤销令牌,过程通常在数秒内完成。根据 PyPI 公布的 15 个月数据,共收到 5.87k 次通知,其中 537 个令牌有效,535 个被处理。收到与有效数量差异大,是因为同一令牌可能在多个仓库或分支中被重复报告;有效与处理的小差异则源于邮件通知异常。
无需额外配置的持续保护
此次增强不需要用户或集成方更改任何现有设置,PyPI 将继续从 GitHub 接收相同的通知。这意味着已有的自动撤销流程保持不变,用户无需采取额外行动即可获得对问题区泄露的防护。对于依赖 PyPI 的开发者来说,这相当于在原有代码扫描基础上,免费获得了一层针对协作场景的额外安全保障。
Q&A
GitHub如何扫描公共问题以发现PyPI密钥泄露?
GitHub通过增强的秘密扫描功能,检测公共问题的标题、描述和评论中的PyPI密钥泄露。
自2021年起,GitHub对PyPI令牌的处理流程是怎样的?
自2021年起,GitHub会在用户意外公开PyPI令牌时通知用户并自动撤销该令牌。
GitHub最近的增强功能对用户有什么影响?
用户将继续收到相同的通知,而无需更改现有集成,增强功能提升了安全性。
GitHub的秘密扫描功能之前只扫描哪些内容?
之前,GitHub的秘密扫描功能仅扫描代码,而现在扩展到公共问题的内容。
GitHub如何跟踪撤销的PyPI令牌数量?
GitHub在集成实施时设置了一些指标来跟踪撤销的令牌数量和收到的通知数量。
如果我的PyPI令牌被泄露,GitHub会如何处理?
如果令牌被泄露,GitHub会立即通知用户并自动撤销该令牌以防止滥用。