benottom/ai-security-from-scratch
GitHub: benottom/ai-security-from-scratch
基于控制论的 AI 安全工程课程,通过理论课程、交互式实验和 CTF 挑战系统化教授 LLM 与 AI Agent 安全攻防。
Stars: 0 | Forks: 0
# 从零开始的 AI 安全
### 思考。实践。执行。 —— 基于 MIT 风格与控制论基础的 AI 安全工程
[](LICENSE)
[](ROADMAP.md)
[](ROADMAP.md)
[](ctf/)
[](psets/)
[](ROADMAP.md)
[](requirements.txt)
[](CONTRIBUTING.md)
Lessons & Readings"] --> P["🎮 PLAY
Notebooks & CTF"] P --> D["🔧 DO
Labs & Problem Sets"] D -->|feedback| T style T fill:#4a90d9,stroke:#333,color:#fff style P fill:#d94a4a,stroke:#333,color:#fff style D fill:#2d8a4a,stroke:#333,color:#fff ``` ### 🧠 思考 —— 讲座、课程与阅读 每节课都以一节发展概念框架的**课程**开始。这些课程带有明确的观点——它们表明立场,反驳世俗智慧,并解释*为什么*传统方法是错误的。我们不模棱两可。我们不平等地展示每一个观点。我们展示控制论的观点,并说明它为什么有效。 课程包括概念检查、常见错误以及真实安全事件(Chevrolet 机器人、Samsung 数据泄露、Air Canada 裁决)的经验教训。带有焦点问题并与控制论相结合的精选阅读清单将在每节课前为你做好准备。 ### 🎮 实践 —— Notebooks 与 CTF 挑战 每节课都有一个**交互式 Jupyter Notebook**,你可以在其中运行代码、破坏系统并在实践中学习。Notebooks 使用了模拟的 LLM,因此无需 API 密钥即可运行——但攻击行为与生产环境中真实 LLM 的表现完全一致。 每个阶段都有一个带有隐藏 flag(`AISec{...}`)的 **CTF 挑战**。这些 flag 具有竞技性、趣味性和教学精确性——每一个 flag 都教授一个特定的控制回路概念。分数从 100 分(简单)到 500 分(专家)不等,并配有奖励坚持不解者的提示惩罚系统。 ### 🔧 执行 —— 实验室与习题集 实验室在真实运行的系统上遵循**构建 → 攻击 → 防御 → 测试 → 监控 → 保障**的工作流。不是攻击的模拟——你亲自构建易受攻击的应用程序,攻击它,观察它的失败,添加防御,然后验证修复效果。 习题集遵循 MIT 的传统:数学分析(证明纵深防御呈指数级有效)、设计问题(为给定的 AI 系统设计完整的安全架构),以及简答题(使用控制论推理反驳常见误解)。 ## 快速开始 三条路径。选择最适合你学习方式的一条。 ### 📖 路径 1:跟随课程大纲 从阶段 1,第 01 课开始。按顺序完成课程、Notebooks 和实验。这是精心设计的路径——每一节课都在前一节课的基础上构建。 ``` git clone https://github.com/benottom/ai-security-from-scratch.git cd ai-security-from-scratch pip install -r requirements.txt # 从 Class 01 开始 cd phases/phase-01-foundations/class-01-ai-security-as-control/ # 阅读:lesson.md(思考) # 运行:notebook.ipynb(体验) # 实践:lab.md(实践) ``` ### 💻 路径 2:直接上手实操 跳过阅读。打开一个 Notebook 并开始尝试破坏。当你想了解你的攻击*为什么*有效时,再回来学习课程。 ``` git clone https://github.com/benottom/ai-security-from-scratch.git cd ai-security-from-scratch pip install -r requirements.txt # 启动第一个 notebook jupyter notebook phases/phase-01-foundations/class-01-ai-security-as-control/notebook.ipynb ``` ### 🏴 路径 3:参与竞技 直接进入 CTF 挑战。与时间赛跑,捕获 flag,并通过利用控制回路缺口来学习。 ``` git clone https://github.com/benottom/ai-security-from-scratch.git cd ai-security-from-scratch # 开始第一个 CTF 挑战 cd ctf/challenge-01-control-loop-basics/ make setup && make run # 通过运行中的 API 捕获 flags # 跟踪你的进度:ctf/SCOREBOARD.md ``` **先决条件:** Python 3.11+,基本的 ML 素养,熟悉命令行。无需先前的安全经验。**无需 API 密钥——一切都在本地运行。** ## 目录结构 ``` ai-security-from-scratch/ ├── framework/ # 🧠 Control-theoretic AI security theory (7 documents) ├── phases/ # 📚 12 phases, 76 classes │ └── phase-XX-name/ │ └── class-XX-topic/ │ ├── README.md # Overview + learning objectives │ ├── lesson.md # 🧠 THINK: Conceptual framework │ ├── notebook.ipynb # 🎮 PLAY: Interactive Jupyter notebook │ ├── lab.md # 🔧 DO: Build/attack/defend lab │ ├── assignment.md # Take-home design/analysis problem │ ├── control-loop-analysis.md │ └── threat-model.md ├── ctf/ # 🏴 Capture-the-flag challenges │ ├── README.md # CTF framework & scoring rules │ ├── SCOREBOARD.md # Track your flags & reflections │ ├── challenge-01-control-loop-basics/ │ │ ├── app.py # Vulnerable FastAPI app │ │ ├── Dockerfile │ │ └── Makefile │ └── challenge-07-prompt-injection/ │ ├── app.py │ ├── Dockerfile │ └── Makefile ├── psets/ # 📝 Problem sets (MIT tradition) │ ├── README.md # PSet program & grading philosophy │ └── pset-01-foundations/ │ ├── README.md # 6 problems, 120 points │ └── SOLUTIONS.md # Complete solutions with proofs ├── readings/ # 📖 Curated reading lists │ ├── README.md # Reading methodology │ ├── phase-01-readings.md # 8 readings: Wiener, Carlini, OWASP... │ └── phase-02-readings.md # 6 readings: Liu, Wei, Hines... ├── labs/ # 🧪 Vulnerable applications │ ├── vulnerable-chatbot/ │ ├── vulnerable-rag/ │ ├── vulnerable-agent/ │ ├── vulnerable-memory-assistant/ │ └── enterprise-ai-assistant/ ├── attacks/ # ⚔️ Attack scenarios with control-loop analysis ├── defenses/ # 🛡️ 7 defense implementations with Python & tests ├── evals/ # 📊 AI security eval harness ├── patterns/ # 🏗️ 9 secure architecture patterns ├── observability/ # 📡 Control ledger, event schema, monitoring ├── assurance/ # 📋 ISO 27001, NIST AI RMF, OWASP mappings ├── templates/ # 📄 Class, lab, threat model, report templates ├── tools/ # 🔧 AI content agents, lab validator, generators ├── ci/ # ⚙️ GitHub Actions workflows ├── scripts/ # 🛠️ Scaffold and utility scripts └── assets/ # 🎨 Banner and images ``` ## 课程大纲概览 ``` graph LR P1["Phase 1
Foundations"] --> P2["Phase 2
Prompt Injection"] P2 --> P3["Phase 3
RAG Security"] P3 --> P4["Phase 4
Agent & Tool Security"] P4 --> P5["Phase 5
Memory & Feedback"] P5 --> P6["Phase 6
Data & Privacy"] P6 --> P7["Phase 7
Supply Chain"] P7 --> P8["Phase 8
Defensive Controls"] P8 --> P9["Phase 9
Security Testing"] P9 --> P10["Phase 10
Observability"] P10 --> P11["Phase 11
Governance"] P11 --> P12["Phase 12
Capstone"] style P1 fill:#4a90d9,stroke:#333,color:#fff style P2 fill:#d94a4a,stroke:#333,color:#fff style P3 fill:#d9a84a,stroke:#333,color:#fff style P4 fill:#8a4ad9,stroke:#333,color:#fff style P5 fill:#4ad9a8,stroke:#333,color:#fff style P6 fill:#d94a8a,stroke:#333,color:#fff style P7 fill:#8ad94a,stroke:#333,color:#fff style P8 fill:#4a8ad9,stroke:#333,color:#fff style P9 fill:#d9d94a,stroke:#333,color:#fff style P10 fill:#4ad9d9,stroke:#333,color:#fff style P11 fill:#d94ad9,stroke:#333,color:#fff style P12 fill:#2d8a4a,stroke:#333,color:#fff ``` | 阶段 | 课程 | CTF 挑战 | 习题集 | |-------|---------|--------------|-------------| | **1 — 基础** | 01–06 | `01-control-loop-basics` (5 个 flag) | 习题 01:控制回路安全架构 | | **2 — 提示词注入** | 07–12 | `07-prompt-injection` (4 个 flag) | 习题 02:注入即控制回路失效 | | **3 — RAG 安全** | 13–19 | *13-rag-poisoning* (即将推出) | 习题 03:观测通道安全 | | **4 — Agent 与工具安全** | 20–26 | *19-tool-abuse* (即将推出) | 习题 04:执行通道安全 | | **5 — 记忆与反馈** | 27–32 | *25-memory-poisoning* (即将推出) | 习题 05:反馈通道安全 | | **6 — 数据与隐私** | 33–38 | — | 习题 06:数据流安全 | | **7 — 供应链** | 39–44 | — | 习题 07:供应链安全 | | **8 — 防御控制** | 45–50 | *37-circuit-breaker* (即将推出) | 习题 08:组合分层防御 | | **9 — 安全测试** | 51–56 | — | 习题 09:验证与确认 | | **10 — 可观测性与事件响应 (IR)** | 57–62 | — | 习题 10:监控控制回路 | | **11 — 治理与保障** | 63–69 | — | 习题 11:构建保障案例 | | **12 — 毕业项目** | 70–76 | — | 习题 12:端到端安全 AI 系统 |
📖 按阶段划分的完整课程列表
### 阶段 1:基础 `6 节课` | # | 课程 | 重点 | |---|---|---| | 01 | 作为工程学科的 AI 安全 | 为什么 AI 安全是一个控制问题 | | 02 | AI 安全的控制理论 | 控制器、反馈、干扰、监督控制 | | 03 | 作为对抗性控制回路的 AI 系统 | 将聊天机器人、RAG、Agent 分解为回路 | | 04 | AI 系统的威胁建模 | STRIDE-AI、攻击树、信任边界 | | 05 | LLM 应用程序剖析 | 提示词、上下文、检索、工具、记忆、API | | 06 | 构建你的第一个易受攻击的 AI 助手 | 动手实践:一个没有安全控制的聊天机器人 | ### 阶段 2:提示词注入 `6 节课` | # | 课程 | 重点 | |---|---|---| | 07 | 直接提示词注入 | 通过用户输入劫持控制器 | | 08 | 系统提示词泄露 | 提取系统指令 | | 09 | 间接提示词注入 | 通过外部数据源注入 | | 10 | 越狱与指令冲突 | 角色扮演、多轮对话、指令层级 | | 11 | 提示词注入防御模式 | 上下文分离、层级、验证、过滤 | | 12 | 提示词安全回归测试 | 将攻击转化为自动化测试 | ### 阶段 3:RAG 安全 `7 节课` | # | 课程 | 重点 | |---|---|---| | 13 | 构建基本的 RAG 系统 | 文档摄取、分块、检索、答案生成 | | 14 | 将 RAG 作为观测系统 | 通过控制回路视角理解 RAG | | 15 | 文档投毒 | 向检索语料库中注入恶意内容 | | 16 | 引用伪造 | 捏造来源引用 | | 17 | 未授权检索 | 访问超出用户权限的文档 | | 18 | 感知权限的 RAG | 在检索层强制执行文档 ACL | | 19 | 安全的 RAG 评估 | 端到端测试 RAG 安全控制 | ### 阶段 4:Agent 与工具安全 `7 节课` | # | 课程 | 重点 | |---|---|---| | 20 | 构建使用工具的 Agent | 模拟工具、Agent 循环、无安全性 | | 21 | 工具滥用与过度代理 | 不受限制的工具调用和参数注入 | | 22 | 通过工具进行命令注入 | 利用工具参数执行代码 | | 23 | 安全工具网关 | 风险分类、允许列表、审批门 | | 24 | 人工审批门 | 高风险操作需要确认 | | 25 | Agent 沙箱化 | 用边界隔离 Agent 动作 | | 26 | Agent 安全测试 | 针对 Agent 漏洞的自动化测试 | ### 阶段 5:记忆与反馈安全 `6 节课` | # | 课程 | 重点 | |---|---|---| | 27 | 会话记忆风险 | 上下文窗口操纵与会话劫持 | | 28 | 长期记忆投毒 | 注入持久的恶意记忆 | | 29 | 跨用户记忆泄露 | 用户会话之间的信息溢出 | | 30 | 记忆信任评分 | 在使用前评估记忆可靠性 | | 31 | 记忆隔离 | 隔离并验证新记忆 | | 32 | 反馈回路安全 | 保护 AI 系统中的反馈通道 | ### 阶段 6:数据、隐私与泄露 `6 节课` | # | 课程 | 重点 | |---|---|---| | 33 | AI 应用中的敏感数据暴露 | AI 系统如何泄露机密信息 | | 34 | 密钥泄露 | 模型输出中的 API 密钥、token 和凭证 | | 35 | PII 检测与脱敏 | 识别并掩码个人身份信息 | | 36 | Embedding 隐私 | 向量 Embedding 中的隐私风险 | | 37 | 向量数据库访问控制 | 保护对 Embedding 存储的访问 | | 38 | 保护隐私的 AI 日志记录 | 在不暴露敏感数据的情况下进行日志记录 | ### 阶段 7:模型与供应链安全 `6 节课` | # | 课程 | 重点 | |---|---|---| | 39 | 模型供应链风险 | 第三方模型的信任与验证 | | 40 | 不安全的模型加载 | 加载不受信任的模型文件的风险 | | 41 | 数据集投毒概念 | 训练数据操纵及其影响 | | 42 | Fine-Tuning 风险 | 模型适配的安全隐患 | | 43 | 模型提取概念 | 通过查询窃取模型能力 | | 44 | AI 材料清单 (AI Bill of Materials) | 记录 AI 系统中的每一个组件 | ### 阶段 8:防御控制 `6 节课` | # | 课程 | 重点 | |---|---|---| | 45 | 从零开始的防护栏 | 构建输入/输出安全过滤器 | | 46 | AI 系统的策略即代码 | 版本化、可测试的行为策略 | | 47 | 输出验证 | 根据安全要求验证模型输出 | | 48 | 上下文防火墙 | 将系统指令与用户输入分离 | | 49 | AI 安全网关 | AI 交互的集中控制点 | 50 | 熔断器与紧急停止开关 | 检测并停止失控的 AI 行为 | ### 阶段 9:AI 安全测试与 CI/CD `6 节课` | # | 课程 | 重点 | |---|---|---| | 51 | AI 安全测试设计 | 构建有效的安全测试套件 | | 52 | 从零开始的评估框架 | 构建自动化测试运行器 | | 53 | 攻击数据集 | 策划具有代表性的攻击语料库 | | 54 | 安全评分 | 衡量和比较防御有效性 | | 55 | 用于 AI 安全的 GitHub Actions | 用于安全回归的 CI/CD 集成 | | 56 | AI 控制的回归测试 | 防止安全控制退化 | ### 阶段 10:可观测性与事件响应 `6 节课` | # | 课程 | 重点 | |---|---|---| | 57 | AI 安全日志记录 | 记录什么以及如何构建结构 | | 58 | 控制账本 | 安全决策的不可变记录 | | 59 | 运行时风险评分 | 实时评估 AI 行为风险 | | 60 | AI 事件响应 | AI 安全事件的应急预案 | | 61 | RAG 投毒事件 | 演练:检测和响应语料库攻击 | | 62 | Agent 工具滥用事件 | 演练:检测和停止未经授权的工具使用 | ### 阶段 11:治理与保障 `7 节课` | # | 课程 | 重点 | |---|---|---| | 63 | AI 安全治理 | 框架与组织结构 | | 64 | AI 风险登记册 | 系统性的风险跟踪与管理 | | 65 | 保障案例 | 包含证据的结构化安全论证 | | 66 | ISO 27001 映射 | 将 AI 控制映射到 ISO 27001 | | 67 | NIST AI RMF 映射 | 将 AI 控制映射到 NIST AI 风险管理框架 | | 68 | OWASP LLM Top 10 映射 | 将 AI 控制映射到 OWASP LLM 漏洞列表 | | 69 | 高管汇报 | 向领导层传达 AI 安全态势 | ### 阶段 12:毕业项目 `7 节课` | # | 课程 | 重点 | |---|---|---| | 70 | 构建易受攻击的企业级 AI 助手 | 具有漏洞的全功能 RAG + Agent | | 71 | 对助手进行红队测试 | 系统性的攻击行动 | | 72 | 加固助手 | 实施分层监督控制 | | 73 | 添加安全回归测试 | 证明控制有效的自动化测试套件 | | 74 | 添加运行时监控 | 控制账本和仪表板 | | 75 | 产出保障证据 | 完整的审计包 | | 76 | 提交最终安全报告 | 达到作品集级别的安全评估 |vulnerable system"] --> A["Attack it
safely"] A --> M["Measure the
failure"] M --> D["Design the
control"] D --> T["Test the
control"] T --> O["Monitor
runtime"] O --> E["Produce
evidence"] style B fill:#4a90d9,stroke:#333,color:#fff style A fill:#d94a4a,stroke:#333,color:#fff style M fill:#d9a84a,stroke:#333,color:#fff style D fill:#8a4ad9,stroke:#333,color:#fff style T fill:#4ad9a8,stroke:#333,color:#fff style O fill:#4a8ad9,stroke:#333,color:#fff style E fill:#2d8a4a,stroke:#333,color:#fff ``` 每节课都会产出 **7 项交付物**——没有孤立的知识: | 交付物 | 内容 | |---|---| | 易受攻击的应用 | 带有已知安全缺陷的、可运行的 AI 应用程序 | | 攻击记录 | 展示漏洞的安全本地利用 | | 控制回路分析 | 根本原因映射到控制论模型 | | 修补后的应用 | 实施了监督控制的应用程序 | | 安全回归测试 | 证明防御有效的自动化 pytest 套件 | | 可观测性事件 | 显示运行时监控的控制账本条目 | | 保障证据 | 映射到治理框架的、可审计的就绪文档 | ## 控制回路框架 本课程中的每一个 AI 系统都被建模为一个控制回路。正是这种心智模型使得本课程与众不同: | 元素 | 在 AI 安全中的角色 | 示例 | |---|---|---| | **目标** | 系统必须维持的安全属性 | “绝不公开机密文档” | | **控制器** | 决定如何行动的组件 | LLM + 编排逻辑 | | **观测值** | 控制器能看到的信号 | 用户提示词、检索到的文档、工具结果 | | **动作** | 控制器可以做什么 | 生成答案、调用工具、拦截请求 | | **反馈** | 关于动作是否达成目标的信息 | 用户后续反馈、日志、评分 | | **干扰** | 破坏控制回路的对抗性输入 | 提示词注入、投毒文档 | | **不安全状态** | 违反安全目标的条件 | 数据泄露、未经授权的操作 | | **监督控制** | 进行监控和调整的高阶控制 | 策略引擎、防护栏、审批门 | | **监控** | 对控制有效性的持续观察 | 控制账本、事件日志 | | **恢复** | 恢复安全操作的程序 | 隔离、重置、撤销访问权限 | 普通的教程会说:“*这里是一个提示词注入攻击。*” 本课程会说:“*这是一次通过不受信任的观测通道进行的控制器指令劫持。这里是易受攻击的应用程序、攻击过程、失效的控制、加固后的设计、回归测试和证据包。*” 这就是区别所在。 ## 宣言 大多数 AI 安全内容教你如何进行破坏。那是简单的部分。破坏成本低廉、引人注目且具有误导性。它让你觉得攻击无处不在,却没有为你提供防御的架构。 本项目立足于不同的前提:**安全不在于没有攻击,而在于是否存在控制。** 当你能够明确 AI 系统应该做什么,衡量它是否在这样做,在它出现偏差时予以纠正,并证明你的纠正有效时——即使在有人蓄意使其失败的情况下——这个 AI 系统就是安全的。 这是一个控制问题。不是一份检查清单,不是你束之高阁的威胁模型,也不是一枚合规徽章。它是一个生动的、持续的、工程化的控制回路,贯穿设计、部署和运营。 本课程中的每一节课都遵循一个循环:**构建事物,破坏事物,分析失败,设计控制,测试控制,监控控制,保障控制有效。** 你绝不会在学习攻击时不去构建它所针对的系统。你绝不会在不测试防御是否能阻止攻击的情况下实施防御。你绝不会在不去监控防御在漂移下是否依然有效的情况下发布它。 这不是一门综述课程,而是一个工坊。你将编写代码、破坏代码、修复代码,并证明你的修复依然有效。如果你完成了这门课程,你将不仅仅是了解 AI 安全。你将亲身实践过——跨越聊天机器人、RAG 系统、自主 Agent 和多模型流水线——并具备与那些对真实人员依赖的系统负责签字的工程师所期望的同等严谨性。 ## 技术栈 | 组件 | 选择 | 原因 | |---|---|---| | 语言 | Python 3.11+ | AI/ML 行业标准 | | Web 应用 | FastAPI | 快速、类型化、异步优先 | | 测试 | pytest | 行业标准,出色的 fixture | | Notebooks | Jupyter | 交互式,ML 教育的标准 | | 向量数据库 | ChromaDB (本地) | 零配置,离线运行 | | 策略引擎 | Python + YAML | 简单、可审计、可版本控制 | | 可观测性 | JSONL 事件日志 | 便携、对 grep 友好,无需基础设施 | | CI | GitHub Actions | 原生 GitHub 集成 | | CTF 应用 | FastAPI + Docker | 自包含、可复现 | | 图表 | Mermaid | 在 GitHub 上原生渲染 | **所有实验室均使用模拟数据在本地运行。无需 API 密钥。** ## 对比 | 方面 | 本课程 | 传统 AI 安全 | 参考代码库 (ai-engineering-from-scratch) | |--------|-------------|------------------------|----------------------------------------------| | **框架** | 控制论模型 | 临时检查清单 | 软件工程最佳实践 | | **教学法** | 思考 / 实践 / 执行 | 观看讲座 | 阅读 + 构建 | | **动手实践** | 构建 → 攻击 → 防御 → 测试 → 监控 → 保障 | 阅读关于攻击的内容 | 构建生产系统 | | **交互** | Jupyter notebooks + CTF 挑战 | 选择题测验 | 代码练习 | | **评估** | 真实的防御 + 数学证明 | 基于回忆的问题 | 可运行的代码 | | **输出** | “我能构建一个抵抗提示词注入的系统并证明它” | “我了解提示词注入” | “我能构建一个 AI 系统” | | **理论** | 形式控制论 + 可证明的边界 | “最佳实践” | 应用工程学 | | **CTF** | 每个挑战 4–5 个 flag,映射控制回路 | 无 | 无 | | **习题集** | MIT 风格,带有证明和设计问题 | 家庭作业练习 | 无 | | **阅读** | 精心挑选,带有焦点问题和控制论联系 | “阅读这篇论文” | 无 | ## 标准实验流程 每个实验室都遵循相同的模式和一致的命令: ``` make setup # Install dependencies make run-vulnerable # Start the vulnerable application make attack # Run the attack against the vulnerable app make run-patched # Start the hardened application make test-security # Run security regression tests make evidence # Generate assurance evidence report ``` ## 学完本课程后 你将能够: - [ ] 使用控制回路分析对 LLM、RAG 和 Agent AI 系统进行威胁建模 - [ ] 识别 AI 应用程序中的控制回路失效 - [ ] 在安全的实验室中利用提示词注入、RAG 投毒、工具滥用和记忆投毒 - [ ] 为 AI 系统设计监督控制 - [ ] 构建尊重文档访问控制、感知权限的 RAG - [ ] 为 AI Agent 构建安全的工具网关 - [ ] 编写 AI 安全回归测试 - [ ] 将 AI 安全检查集成到 CI/CD 流水线中 - [ ] 使用控制账本在运行时监控 AI 系统 - [ ] 为治理和审计产出保障证据 - [ ] 以数学方式证明纵深防御属性 - [ ] 通过利用特定的控制回路缺口来捕获 CTF flag ## 目标受众 | 受众 | 为什么他们需要这个 | |---|---| | AI 工程师 | 保护你正在构建的 LLM 应用程序 | | 网络安全工程师 | 学习 AI 攻击面 | | AppSec 团队 | 通过适当的威胁建模来审查 AI 功能 | | CISO 和安全架构师 | 采用带有可防御控制的 GenAI | | 红蓝对抗人员 | 将你的技能应用于 AI 系统 | | 学生 | 结构化、动手实践的 AI 安全学习路径 | | 审计人员 | 评估 AI 控制是否真正有效 | | 讲师 | 现成的 MIT 风格课程,带有 CTF 和习题集 | ## AI 辅助开发 本项目是在 AI Agent 的帮助下构建的,但所有技术内容在发布前都经过了**人工审查和验证**。AI Agent 协助起草课程、构建实验室、创建攻击、编写测试和生成报告。人工负责审查、执行、更正并批准每一个 Pull Request。 AI 辅助加速了我们的工作,但不能取代我们的判断。 请参阅 [`tools/ai_content_agents/`](tools/ai_content_agents/) 了解完整的 Agent 流水线。 ## 贡献 我们欢迎各种贡献。请参阅 [CONTRIBUTING.md](CONTRIBUTING.md) 了解: - 质量门禁(内容、代码、安全、保障、编辑) - 13 步课程生成工作流 - PR 模板和审查清单 - 样式指南和约定 ## 许可证 本项目基于 MIT 许可证授权。详情请参阅 [LICENSE](LICENSE)。 版权所有 2026 从零开始的 AI 安全贡献者 ## ⚠️ 负责任的使用 本课程在受控的教育环境中教授进攻性技术。攻击仅针对**特意构建的易受攻击的实验室系统**进行演示——绝不针对生产服务或第三方系统。 **请勿使用这些资料攻击你不拥有或未获得明确测试授权的系统。** 每一次进攻性演示的存在都是为了教授防御性工程。每一次攻击都配备了缓解措施、回归测试和证据产出。 请参阅 [RESPONSIBLE_USE.md](RESPONSIBLE_USE.md) 了解完整的政策。
*构建系统。打破循环。工程化控制。证明其有效。*
**思考。实践。执行。**
标签:DLL 劫持, NoSQL, 人工智能安全, 合规性, 大语言模型, 安全工程, 提示注入, 红队工程, 网络安全教程, 请求拦截, 逆向工具, 集群管理