第〇单元:导论与能力框架

AI 时代的攻防实战

黄玮

2026-秋

主题 1:课程范式与一个真实问题

一个真实问题

「如何系统地攻防一个真实系统?」

  • 本课程不是靠几道选择题应付的考核,而是贯穿整学期的工程实践
  • 经典安全课:分章讲授 + 分章实验报告 → 知识碎片化、无法度量综合能力
  • 本课程:整学期只做一个综合实践项目(capstone)(一个「含 AI 能力的靶场 Web 应用」),按里程碑 M0-M7 渐进迭代
  • 知识按需、实战驱动;课堂只补「做出来所需」的最小讲授

课程范式:少讲授 · 边学边做

类别 学时 占比
课堂按需讲授 16 25%
实战 / 实验 / 作品 48 75%
合计 64 100%

趋势:讲授学时将继续精简,实践比重进一步提升。每单元 = 真实问题引入 + 实战实验 + 按需讲授。

AI 时代,你学网安的意义

AI 能秒级写代码、找漏洞——你「学」的意义是什么?

  • 人的价值 = 驾驭 AI:拆问题、指挥、否决错误担责——AI 自己做不了
  • 课奖励驾驭质量,不奖励执行速度
  • 焦虑解药 ≠ 跑赢 AI;= 成为 AI 做不到的指挥者

评价:让真学可见

  • git 提交史 + CI 构建 + 终端录屏 = 高伪造成本过程证据
  • 不追求「不可骗」;追求让骗的成本 > 真学的成本
  • AI-only 一把梭 → commit 粒度 / 录屏露馅 → 激励对齐

本单元定位(U0)

维度 内容
真实问题 如何系统攻防一个真实系统?
实验(= 综合实践项目 M0) 立项与威胁建模
讲授 1h:能力框架 + CIA/STRIDE/CVSS 速成
来源 第 1-2 章压缩(经典全文见 cuc-ns-ppt 在线仓库
能力点亮 簇①·L1 认知 + 簇①·L2 实践

本单元不写代码,但把整学期的「地基」打好:能力框架、威胁建模语言、风险评分标尺。

AI 时代的攻防景观(双向)

一句话总览:AI 既是武器,也是靶场

  • AI 赋能安全:用大模型做代码审计、日志分诊、威胁情报、概念验证(PoC)生成、取证摘要
  • AI 作为安全对象:提示词注入、越狱、RAG 投毒、工具滥用、模型窃取
  • 课程主线把这两面织进同一个应用:U4/U5 传统方法 → AI 增强(埋伏)→ U6 AI 对抗(集中,核心 30%)
  • 本单元先建立「双语」直觉,细节留待 U6

详见 capability-framework.md 簇⑥。

主题 2:能力框架 v2

为什么需要能力框架

  • 旧考核 = 碎片化「分章实验报告」,无法度量综合能力,也无法串联知识体系
  • 能力框架 v2 用「簇 × 级 × 证据」三维度,把每一次单元实战都绑定到可观测能力
  • 经典理论见 cuc-ns-ppt 在线仓库 按需自学;课堂只保留「做出来所需」最小集

六大能力簇

# 能力簇 主单元 来源经典(参考)
安全基石与风险 U0-U1 第 1-3 章
侦察与发现 U2 第 4-5 章(+第 13 章 社工)
攻击与渗透 U3 第 6-7 章
防御与加固 U4 第 8-10 章
检测 / 取证 / 欺骗 U5 第 11-13 章
AI×网络安全(贯穿轴) U6(+U4/U5 埋伏) AI 安全专题(新增)

三级熟练度:L1 / L2 / L3

  • L1 认知:复述概念、识别场景(「知道是什么/为什么」)
  • L2 实践:在给定环境下用工具完成一次完整操作并解读结果(「会做一次」)
  • L3 工程化:设计、集成、评估可持续方案并权衡取舍(「能造、能守、能评」)

簇 ①:本单元你要点亮什么

能力描述 单元 证据
L1 复述 CIA/STRIDE/CVSS,识别资产与威胁 U0 课堂快问快答
L2 对一个系统做威胁建模 + CVSS 评分 U0 M0 立项与威胁建模
L3 设计 RBAC/风险登记表并随项目演进 U1 M1 安全基线

完整覆盖矩阵见 capability-framework.md。本单元实验 = M0,证据就是你的威胁建模产物。

主题 3:CIA / STRIDE / CVSS 速成

CIA 三元组:安全的「第一性」目标

  • 机密性(Confidentiality):信息不可见,乃至状态不可知
  • 完整性(Integrity):未经授权不能更改
  • 可用性(Availability):授权实体可按需访问与使用
  • 扩充属性:认证(Authentication)/ 授权(Authorization)/ 不可抵赖性(审计 Accountability)

每一次威胁建模,第一步都是问:这个资产,C/I/A 哪个最受关注?

【道】CIA 标注反例:别一刀切 C+I+A 全 High

新手误区:每个资产都标 C=H / I=H / A=H——等于没标。

  • 资产要挑最致命的 1 个属性打星(如「用户口令表 → C★」,泄露即沦陷)
  • 三问择一:「攻击者最想要什么 / 最怕什么被改 / 哪个挂了最要命」里最尖锐的那个
  • 例:orders 订单表 主要怕篡改/越权(I)而非机密性 → 标 I★ 才能引导 M3 SQLi 防御

【道】资产清单误区:对 127.0.0.1 自扫 OS 指纹意义有限

自己的应用做资产清单时,别急着 -O 扫 OS 指纹。

  • 你扫的是 127.0.0.1 = 你自己的机器 → OS 你本来就知道,指纹扫描信息量≈0
  • M0 资产清单要的是应用层资产:端点(/login /orders /api/agent)、数据(orders 表、USERS、secret_key)、依赖(Flask/sqlite/LLM SDK)
  • 指纹/版本扫描留到 U2 自侦察 才有意义(那时是「攻击者视角看暴露面」)

STRIDE:威胁分类的速查表

威胁(STRIDE) 破坏属性 小例子
Spoofing 假冒 认证 弱口令登录冒充他人
Tampering 篡改 完整性 改订单数据
Repudiation 否认 不可抵赖 「我没下过这个单」
Information Disclosure 信息泄露 机密性 报错回显 SQL/堆栈
Denial of Service 拒绝服务 可用性 耗尽连接
Elevation of Privilege 提权 授权 普通用户拿到 admin

STRIDE 是穷举式的清单——对每个资产/数据流逐一过一遍六类,不漏威胁。

CVSS:给风险打分([0,10])

  • 基本评估(Base):漏洞固有属性,不随时间/环境变化 —— 课堂主要用这组
  • 时效性评估(Temporal):是否已有概念验证 / 利用工具
  • 环境评估(Environmental):在你的部署环境里的实际影响

CVSS 3.1 Base 维度速查

维度 取值(CVSS 3.1) 说明
攻击途径 AV N / A / L / P 网络/邻接/本地/物理
攻击复杂度 AC L / H 低/高
所需权限 PR N / L / H 无/低/高
用户交互 UI N / R 不需要/需要
影响范围 S U / C 不变/改变
CIA 影响 N / L / H 无/低/高

真实 CVE 例子:Log4Shell(CVE-2021-44228)

  • 漏洞:Apache Log4j2 JNDI 注入,一行日志字符串即可 RCE
  • CVSS 3.1 Base:10.0(Critical)
  • 教训:一个广泛依赖的日志库 = 全行业「核弹级」攻击面

Log4Shell 的 CVSS 向量拆解

  • 向量:AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H
    • 网络(AV:N)、低复杂度(AC:L)、无需权限(PR:N)、无需交互(UI:N)
    • 范围改变(S:C),机密性/完整性/可用性全部 High

评分用 NVD CVSS 计算器。完整推导见 https://github.com/c4pr1c3/cuc-ns-ppt/blob/master/chap0x02.md

主题 4:怎么学 + 怎么交付

学习金字塔:主动学才有留存

学习金字塔

听讲 5% / 阅读 10% / 演示 30% / 讨论 50% / 实践 75% / 教别人 90%

主动学 · 主动做 · 主动讲

本课程范式 = 主动学 · 主动做 · 主动讲

  • 主动学:课堂只补最小集;经典理论按需自学见 在线仓库,助学层有题库自测
  • 主动做:每周有实验;整学期一个综合实践项目,M0-M7 持续迭代,开分支 milestone/m0milestone/m7 + MR(见 Git 指南
  • 主动讲:里程碑报告写「做了什么 / 点亮哪些能力 / 踩到什么坑」;M7 现场红队/蓝队汇报
  • 反馈环:每个里程碑对照能力框架自评「这次点亮了哪些簇 × 级」

课程主线:综合实践项目 M0-M7(M0-M3)

里程碑 主题 能力簇 权重
M0 立项与威胁建模 5%
M1 安全基线 5%
M2 自侦察 8%
M3 漏洞挖掘与利用 12%

课程主线:综合实践项目 M0-M7(M4-M7)

里程碑 主题 能力簇 权重
M4 加固与边界防护 12%
M5 日志·取证·蜜罐 8%
M6 AI 赋能与对抗(核心) 30%
M7 红队/蓝队对抗 + 复盘 + 自评 全簇 10%

主线一句话:搭建 → 攻击 → 检测 → 加固 → 装 AI → 攻防它的 AI,全程同一仓库。详见 capstone/overview.md。权重为相对权重(和 = 90%),按 60% × 权重 / 90% 折算入总评(期末 60% + 平时 20% + 考勤 10% + 线上 10%)。

起点:综合实践项目/种子工程(seed)

  • 学生派生 capstone/seed/(Flask 最小应用)作为整个学期的工程起点
  • 它故意「最小可运行 + 预留攻击面」,作为后续里程碑的真实素材:
    • /login:弱口令 + 明文比对 → M1
    • /orders:字符串拼接 SQL → M3
    • /api/agent:带工具的 LLM 端点 + 护栏钩子 → M6
    • AUDIT 日志:统一审计出口 → M5/M6
  • ⚠️ 所有攻击实验仅在自己的靶场、授权环境内进行;课程不教授编写恶意代码

本单元实验 = M0:你要交付什么

M0 立项与威胁建模
  • 任务 A:技术选型 + 派生仓库骨架
  • 任务 B:资产清单 + CIA 标注
  • 任务 C:对种子工程做 STRIDE 威胁建模
  • 任务 D:风险登记表(含 CVSS 评分

详见 labs/lab00-threat-model.md。完成后在能力框架自评里点亮 簇①·L1/L2

能力自评:本单元点亮

  • 簇①·L1:能复述 CIA / STRIDE / CVSS,识别资产与威胁
  • 簇①·L2:能对一个系统做威胁建模 + CVSS 评分(M0 证据)
  • 后续:U1 升到 L3(设计 RBAC / 风险登记表随项目演进)

下一单元 U1:安全基线 —— 把 M0 识别出的认证/会话/口令风险落到代码(M1)。

小结:今天带走的三件事

  1. 范式:少讲授、边学边做、整学期一个综合实践项目(M0-M7)
  2. 语言:CIA 是目标、STRIDE 是威胁清单、CVSS 是风险标尺 —— 三者构成威胁建模的最小工具箱
  3. 行动:派生 capstone/seed/,本单元实验用它完成 M0,点亮簇①·L1/L2

经典理论全文:https://github.com/c4pr1c3/cuc-ns-ppt/blob/master/chap0x01.mdhttps://github.com/c4pr1c3/cuc-ns-ppt/blob/master/chap0x02.md(按需自学)。