研究发现12,000个“有效”API密钥和密码存在于...
研究发现12,000个“有效”API密钥和密码存在于公共数据集中
我们通过扫描Common Crawl这一庞大的公共数据集,发现了约12,000个硬编码的API密钥和密码。这一发现揭示了一个日益严重的问题:在不安全代码上训练的大型语言模型(LLM)可能会无意中生成不安全的输出。
主要发现
- 11908个实时秘密:在400TB的网络数据中,使用TruffleLog检测到这些密钥和密码(“实时”密钥指的是成功通过身份验证的密钥)。
- 276万个网页:这些网页包含实时秘密。
- 高重复使用率:63%的秘密在多个网页上重复使用。例如,一个WalkScore API密钥在1871个子域中出现了57029次。
方法概述
Common Crawl简介
Common Crawl是一个包含400TB压缩网络数据的庞大数据集,其内容来自3830万个注册域名和4750万台主机。数据以WARC(Web ARCive)文件格式存储,每个WARC文件包含多个记录,记录了客户端请求、服务器响应及相关元数据。
以下是WARC记录的一个示例:

数据处理与扫描
为了处理如此庞大的数据集,我们使用了20台高性能服务器(每台16核CPU和32GB内存),构建了一个分布式作业队列。每个节点的处理步骤如下:
- 下载一个4GB的Common Crawl文件。
- 使用
awk解压缩并拆分WARC记录。 - 对提取的内容运行TruffleLog进行扫描。
优化与挑战
WARC流媒体效率问题
我们尝试构建自定义的WARC文件处理程序,但发现直接流式处理WARC文件效率较低。最终,我们选择通过awk分割文件后再扫描,显著提高了处理速度。
仅报告“活着”的秘密
在研究中,我们仅统计了通过自动验证过程确认有效的API密钥和密码。这些“活着”的秘密能够成功通过各自服务的身份验证,而未验证的类似字符串则未被纳入统计范围。

需要注意的是,LLM在训练过程中无法区分有效和无效的秘密,这可能导致不安全的编码实践被强化。
研究影响与下一步
我们的研究表明,LLM在Common Crawl数据集中暴露了数百万个包含硬编码秘密的代码示例。这些暴露可能会影响LLM的输出安全性,尤其是在模型训练时未能有效过滤这些数据的情况下。
为了减少风险,我们建议:
- 扩展秘密扫描范围,涵盖公共网页和存档数据集(如Common Crawl和Archive.org)。
- 采用改进的保障措施(如宪法AI技术),以降低无意中复制或暴露敏感信息的可能性。
关于披露的说明
Common Crawl的数据集是公共互联网的快照,记录了开发者将密钥硬编码到前端HTML和JavaScript中的情况。需要明确的是,这并非Common Crawl的责任,而是开发者未能妥善管理敏感信息所致。
作为一项政策,当Truffle Security发现泄露的秘密时,我们会尽力帮助受影响的组织撤销密钥。在此次研究中,我们选择与用户受影响最大的供应商合作,成功撤销了数千个密钥。
额外收获:值得注意的暴露
前端代码中的AWS根密钥
我们发现一个AWS根密钥被硬编码在前端HTML中,虽然S3基本身份验证未生效,但这一暴露本不应存在。

Mailchimp API密钥的硬编码
我们还发现了近1500个独特的Mailchimp API密钥被硬编码在HTML表单和JavaScript代码中,而非使用服务器端环境变量。这种做法可能导致攻击者利用这些密钥进行钓鱼、数据泄露或品牌冒充。

重复使用的密钥
一些软件开发公司在多个客户站点上重复使用相同的API密钥,这使得攻击者可以轻松识别客户列表,进一步增加了安全风险。
总结
本次研究揭示了公共数据集中硬编码秘密的严重性,并强调了改进LLM训练数据过滤和开发者安全实践的重要性。未来,我们希望通过技术改进和行业合作,进一步降低敏感信息泄露的风险。
原文链接: https://trufflesecurity.com/blog/research-finds-12-000-live-api-keys-and-passwords-in-deepseek-s-training-data
最新文章
- 增强API安全性:使用OPA和Kong Gateway进行细粒度访问控制
- 如何免费调用有道翻译API实现多语言翻译
- 公司logo获取服务:如何让企业自动化生成Logo变得轻松简单?
- 了解和使用REST API
- 为什么API开发对现代应用至关重要?
- 如何利用Apache APISIX实现高效的API认证与鉴权:全面解析主流认证方式
- 医疗保健领域中api解决方案的优势与劣势
- 如何获取腾讯AI开放平台 API Key 密钥(分步指南)
- 如何使用Flask-RESTX构建和文档化RESTful API
- API类型:详解与图示 – Kodezi博客
- 百度文心一言API使用指南:非技术人员入门教程
- 如何获取腾讯AI开放平台 API Key 密钥(分步指南)