Veedubin/attacklm-dataset

GitHub: Veedubin/attacklm-dataset

基于 MITRE ATT&CK 的安全领域大语言模型微调数据集,提供带完整来源追溯的训练数据及训练数据记忆隐私审计工具。

Stars: 0 | Forks: 0

# AttackLM 数据集 [![License: MIT](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE) [![Provenance: 100%](https://img.shields.io/badge/provenance-100%25-brightgreen.svg)](data/ATTRIBUTION.md) **一个基于 MITRE ATT&CK 的安全微调数据集,具有 100% 的每条记录来源和许可证归属。** ## 法律与来源 本项目实现了源自已发表学术研究的隐私审计技术(训练数据提取和成员推理攻击)。所有攻击代码仅用于**防御、审计和学术研究** —— 完整的权利声明请参见 [RIGHTS.md](./RIGHTS.md),按文件归属的模板请参见 [PROVENANCE.md](./PROVENANCE.md),以及 [RIGHTS.md §2](./RIGHTS.md#2-authoritative-sources-canonical-papers) 中的规范论文列表。 有关每条记录的数据集归属和许可证元数据,请参见 [data/ATTRIBUTION.md](./data/ATTRIBUTION.md) 和 [data/LEGAL.md](./data/LEGAL.md)。有关权利人的移除请求,请参见 [data/REMOVAL.md](./data/REMOVAL.md)。 **权利主张联系方式:** `veedubin.legal@example.com`(占位符 —— 在公开发布前替换)。 ## 概述 AttackLM 数据集提供了来自 16 个安全来源的 24,652 个高质量训练对,按 来源 -> 桶 -> MITRE 战术 进行组织。每条记录都包含完整的来源信息:来源、来源 URI、许可证、许可证 URI 和权利联系方。 ## 数据集构成 | 类别 | 来源示例 | 大致对数 | 许可证 | | :--- | :--- | :--- | :--- | | **攻击** | Metasploit, Atomic Red Team, MITRE Stockpile | 15,000+ | BSD-3 / MIT / Apache-2.0 | | **防御** | Sigma, Elastic, Splunk, Mordor, ThreatHunter | 7,000+ | DRL-1.1 / Apache-2.0 | | **AI 安全** | Garak, Promptfoo, PromptMap | 100+ | MIT / Apache-2.0 | | **元/IR** | NIST IR, Orchestrator | 500+ | Public Domain / MIT | | **合成** | LLM-generated, AttackLM synthetic, Replay | 2,000+ | GPL-3.0 / MIT | **总计**:涵盖 16 个活跃来源的 24,652 条记录(18 个目录,2 个为未来预留) ## 快速开始 ``` # 安装 pip install attacklm-dataset # 初始化数据集(下载预构建的 tarball) attacklm-dataset init --yes # 或从源码构建 attacklm-dataset init --from-source # 构建平衡的训练子集 attacklm-dataset balance --profile 7b-16gb --preset red-team ``` ## 逆推审计 使用 Carlini 的前缀补全提取 + MIA loss+zlib 评分,审计您自己的模型是否存在被记忆的训练数据。 ``` # 审计运行示例 attacklm-dataset audit --model --probe-count 50 ``` **关键标志:** - `--model`:被审计模型的路径。 - `--source-filter`:将探针过滤到特定来源。 - `--probe-count`:每个来源的探针数量。 - `--top-k`:要评估的 top-k 候选数量。 - `--mia-threshold-mode`:阈值方法(`median`、`percentile`、`holdout_file`)。 - `--mia-percentile`:用于阈值设定的百分位数(默认值:5)。 **输出结构:** 结果存储在 `data/audit//` 中,包含以下文件: - `summary.json`:高层级的汇总指标。 - `threshold.md`:MIA 阈值推导的文档。 - `inversion_results.jsonl`:原始的记录级别重构。 **⚠️ 警告**:原始重构内容属于敏感信息,必须保留在工作区内部(`chmod 0600`)。仅应导出汇总指标。训练数据带有各种许可证(BSD-3、DRL-1.1 等);导出原始样本可能会违反这些条款。 **延伸阅读:** - 有关夜间运行器的计划,请参见 [docs/AUDIT_RUNNER.md](docs/AUDIT_RUNNER.md)。 - 有关探针长度的原理说明,请参见 [docs/PROBE_TOKEN_BUDGET.md](docs/PROBE_TOKEN_BUDGET.md)。 - 有关阈值校准的设计,请参见 [docs/MIA_THRESHOLD_CALIBRATION.md](docs/MIA_THRESHOLD_CALIBRATION.md)。 ## 记录级来源 此数据集中的每条记录都包含以下字段: ``` { "source": "atomic-red-team", "source_uri": "https://github.com/redcanaryco/atomic-red-team", "license": "MIT", "license_uri": "https://opensource.org/licenses/MIT", "rights_contact": "see data/REMOVAL.md" } ``` ## 目录结构 ``` data/datasets/buckets/sources/ / # 18 source directories LICENSE.md # License excerpt + URI SOURCE.md # Source description + URI / # Training bucket / # MITRE TAxxxx data.jsonl # Human-sourced pairs data_llm.jsonl # LLM-generated pairs data_synth.jsonl # Deterministic templates ``` ## 许可证 - **项目**:MIT - **数据**:混合 —— 有关完整详情,请参见各来源的 `LICENSE.md` 和 [ATTRIBUTION.md](ATTRIBUTION.md) - **权利持有者**:有关移除请求,请参见 [data/REMOVAL.md](data/REMOVAL.md) ## 相关内容 - [AttackLM](https://github.com/Veedubin/AttackLM) —— 使用此数据集的训练流水线 ## 文档 - [PROBE_TOKEN_BUDGET.md](docs/PROBE_TOKEN_BUDGET.md) —— 自适应探针长度的原理。 - [MIA_THRESHOLD_CALIBRATION.md](docs/MIA_THRESHOLD_CALIBRATION.md) —— MIA 阈值系统的设计。 - [AUDIT_RUNNER.md](docs/AUDIT_RUNNER.md) —— 大规模审计的执行计划。
标签:AI安全, Chat Copilot, DLL 劫持, LLM微调, 大语言模型, 安全数据集, 攻击模拟, 数据溯源, 文档结构分析, 时序数据库, 逆向工具, 驱动签名利用