遇见数据集

synthetic-sensitive-data-in-source-code-n300

收藏
Hugging Face2026-08-02 更新2026-08-03 收录
官方服务:

资源简介:

该数据集是一个合成数据集,包含300个源代码和配置文件片段,其中嵌入了硬编码的机密信息(如API密钥、密码、连接字符串、PII、内部URL等)以及私钥/密钥库。每个样本至少包含一个敏感发现(无干净的负样本),版本1.2确保在multi_secret类别中标记了所有存在的机密(完整真实标注)。数据集涵盖7个类别:api_key(55个)、password_secret(50个)、connection_string(45个)、pii(45个)、internal_url(40个)、multi_secret(35个)、private_key_keystore(30个),涉及Python、JavaScript、Java、C#、Kotlin、Go、Bash、env、YAML、JSON等多种编程语言。每条记录包含:id(样本ID,格式SDS-####)、category(主要类别)、language(片段语言)、code_text(原始代码/配置,作为模型输入)、sensitive_count(标记的机密数量)、finding_types(机密类型,以|分隔,CSV格式)、sensitive_findings(真实标注列表,仅JSON格式)。数据集旨在用于机密/PII检测基准测试、本地掩码和反向掩码评估,以及LLM中的提示/代码泄漏实验(特别针对OWASP LLM02——敏感信息泄露)。所有值均为合成/伪造,使用种子42可完全重现,每个样本平均机密数约为1.29。数据集包含多种格式文件:JSON、CSV、Excel(含土耳其语变体)以及统计文件。

This is a synthetic dataset containing 300 source code and configuration file snippets embedded with hard-coded sensitive information, including API keys, passwords, connection strings, PII, internal URLs, and private keys/keystores. Each sample contains at least one sensitive finding, with no clean negative samples. Version 1.2 of the dataset ensures full ground truth annotation for all existing secrets in the multi_secret category. The dataset covers 7 categories: api_key (55 samples), password_secret (50 samples), connection_string (45 samples), pii (45 samples), internal_url (40 samples), multi_secret (35 samples), and private_key_keystore (30 samples), spanning multiple programming and configuration languages including Python, JavaScript, Java, C#, Kotlin, Go, Bash, env files, YAML, and JSON. Each record includes the following fields: id (sample ID in the format SDS-####), category (primary category), language (language of the snippet), code_text (raw code/configuration for model input), sensitive_count (number of annotated secrets), finding_types (secret types separated by | in CSV format), and sensitive_findings (list of ground truth secrets formatted exclusively in JSON). This dataset is intended for secrets/PII detection benchmarking, local masking and reverse masking evaluations, as well as prompt/code leakage experiments in LLMs, specifically targeting OWASP LLM02: Sensitive Data Exposure. All values within the dataset are synthetic or fabricated, and full reproducibility can be achieved using seed 42. The average number of secrets per sample is approximately 1.29. The dataset includes files in multiple formats: JSON, CSV, Excel (with a Turkish language variant), and statistical files.

创建时间:
2026-07-25
原始信息汇总

数据集概述:合成源代码敏感数据(N=300)

基本信息

  • 名称:Synthetic Sensitive Data in Source Code (N=300)
  • 规模:300 条样本(n<1K)
  • 许可证:MIT
  • 语言:英文、代码(Python、JavaScript、Java、C#、Kotlin、Go、Bash、env、YAML、JSON)
  • 任务类别:文本分类、其他
  • 标签:安全、密钥、PII、LLM、OWASP、合成、源代码、掩码

内容与设计

  • 包含 300 条源代码/配置文件片段,每一条都至少包含一个硬编码密钥或 PII(无干净负样本)。
  • 所有值均为合成/虚构数据,不可视为真实凭据。
  • 版本 1.2 中,multi_secret(及相关)样本会标注 code_text每一个出现的密钥(完整 ground truth)。

类别分布(N=300)

类别 数量
api_key 55
password_secret 50
connection_string 45
pii 45
internal_url 40
multi_secret 35
private_key_keystore 30

数据文件

文件 描述
synthetic_sensitive_data_in_source_code_n300.json 完整记录 + ground-truth sensitive_findings
synthetic_sensitive_data_in_source_code_n300.csv 扁平视图(`
` 转义)
synthetic_sensitive_data_in_source_code_n300_excel.csv Excel 友好(逗号 + BOM)
synthetic_sensitive_data_in_source_code_n300_tr.csv 土耳其语 Excel(分号 + BOM)
synthetic_sensitive_data_in_source_code_n300.xlsx Excel 工作簿
dataset_stats.json 分布摘要

数据字段(Schema)

  • id — 样本 ID(SDS-####
  • category — 主要类别
  • language — 片段语言
  • code_text — 原始代码/配置(模型输入)
  • sensitive_count — 标注的密钥数量
  • finding_types — 密钥类型,以 | 连接(CSV)
  • sensitive_findings — ground-truth 列表(仅 JSON)

预期用途

  • 密钥 / PII 检测基准测试
  • 本地掩码及反向掩码评估
  • LLM 中的提示 / 代码泄漏实验

附加说明

  • 完全合成,可通过 seed=42 复现
  • 每个样本平均约含 1.29 个密钥
  • OWASP 对齐在数据集级别(LLM02),无逐行 OWASP 列
  • 非生产环境漏洞语料库
  • 引用请参考 Nisa Nur Efendioğlu 的相关论文/学位论文工作
搜集汇总
数据集介绍
synthetic-sensitive-data-in-source-code-n300 数据集图片
构建方式
该数据集由Nisa Nur Efendioğlu精心构建,旨在为AI辅助编码工作流中的敏感信息泄露风险提供评估基准。数据集合成了300条源码或配置文件片段,每条至少包含一个硬编码的密钥或个人身份信息(PII),确保每个样本均为正向案例。构建过程采用固定随机种子(seed=42)确保可复现性,涵盖Python、JavaScript、Java等十种编程语言及配置格式,并按类别均衡分布:API密钥、密码、连接字符串、PII、内部URL、多密钥及私钥/密钥库等七类,其中多密钥样本完整标注了代码中每一个秘密,形成全面的真实标签。
特点
该数据集的核心特色在于其完全合成性,所有值均为虚构,避免了真实凭据风险,同时保持高度逼真,适用于安全研究。其精细的标注体系不仅包括秘密类型与数量,还提供逐一的ground-truth列表,便于精确评估检测和掩码算法。数据集与OWASP LLM02威胁对齐,专门针对大语言模型在处理代码时的敏感信息泄露场景,是测试提示注入、代码泄漏及掩码效果的小规模、高精度工具,平均每样本含1.29个秘密,统计信息丰富,支持多维度的性能剖析。
使用方法
使用该数据集时,研究者可将`code_text`字段作为模型输入,`sensitive_findings`列表作为参考答案,用于评估秘密检测、本地掩码及反掩码算法的准确率与召回率。内置的CSV和Excel变体便于快速导入分析工具,而完整的JSON格式则保留所有元数据。通过对比检测结果与真实发现,可衡量模型在OWASP LLM02场景下的敏感信息泄露风险。数据集规模适中,适合小批量验证与算法迭代,但需注意其非生产漏洞语料库,宜作为实验性基准而非实际安全审计依据。
背景与挑战
背景概述
随着大型语言模型(LLM)在软件工程领域的广泛应用,代码生成与补全工具在提升开发效率的同时,也引入了敏感信息泄露的严峻风险。OWASP LLM02 漏洞类别明确指出,LLM 在处理源代码时可能无意中暴露硬编码的密钥或个人信息(PII)。为应对这一挑战,Nisa Nur Efendioğlu 及其团队构建了名为 'synthetic-sensitive-data-in-source-code-n300' 的数据集,旨在系统性地评估和增强模型对源代码中敏感信息的识别与脱敏能力。该数据集于近期发布,包含 300 个精心构造的源代码与配置片段,覆盖 Python、JavaScript、Java 等主流语言,并标注了包括 API 密钥、密码、连接字符串及 PII 在内的七类敏感信息。其设计不仅服务于秘密检测与掩码评估,更致力于为 AI 辅助编程场景下的信息泄露防护提供标准化测试基准,对推动安全代码生成及 LLM 安全对齐研究具有重要参考价值。
当前挑战
该数据集所面临的挑战蕴含于其核心目标之中。首要挑战在于如何真实模拟 AI 辅助编码中敏感信息泄露的复杂场景,从单一密钥到多密钥混合,从显式凭证到内嵌于 URL 的隐秘数据,均需覆盖,同时确保样本(每样本平均约 1.29 个秘密)在有限规模内保持高代表性与多样性。构建过程中的另一难点是敏感信息类别的界定与标注一致性,尤其是 'multi_secret' 样本需要精确标注每一个秘密,以避免标注歧义与遗漏,这要求严苛的规则定义与质量验证。此外,数据集的合成属性虽规避了真实数据隐私问题,却对生成机制的可重复性(固定 seed)以及公开可用性(MIT 许可)提出了高要求,同时还需在保险性与真实性之间权衡,以防过度简化导致模型评估与真实分布产生偏差。这些挑战共同构成了数据集建设中的核心技术壁垒,也凸显了其在安全检测基准中的独特价值。
常用场景
经典使用场景
该数据集专为评估源代码与配置文件中的硬编码敏感信息(如API密钥、密码、PII)的检测与掩码技术而设计。在AI辅助编码流程中,它被用于测试和基准测试秘密检测算法的精确度与召回率,以及验证本地掩码和反掩码工具的有效性。每个样本均包含至少一个敏感发现,且提供完整的地面真值标注,使其成为开发与验证静态分析工具和机器学习模型的理想选择。
解决学术问题
该数据集解决了源代码中敏感信息泄露的学术研究问题,尤其针对OWASP LLM02(敏感信息泄露)场景。它为研究者提供了标准化的、合成的高质量数据,以评估和比较不同秘密检测方法的性能,填补了真实数据难以共享的空白。其合成性质确保了可复现性(seed=42),推动了该领域的可重复性研究,并促进了针对多类型秘密(如混合秘密)的细粒度检测技术发展。
衍生相关工作
该数据集衍生了一系列开创性工作,包括基于深度学习的秘密检测模型(如Transformer-based分类器)的基准测试,以及针对多标签分类和序列标注任务的新方法。其ground-truth标注启发了弱监督或半监督学习在敏感信息检测中的应用研究。同时,它催生了关于合成数据在实际安全工具中的有效性的探讨,以及掩码策略的对抗性鲁棒性研究。
以上内容由遇见数据集搜集并总结生成
二维码
社区交流群
二维码
科研交流群
商业服务