虚拟化方法和安全
- 层级
- 研究生
- 状态
- 建设中
提示:本课程仍在持续设计和校准中,页面内容仅供参考,不代表最终教学版本。
教学大纲
课程概览
虚拟化方法和安全课程研究虚拟机、容器、hypervisor、设备虚拟化、隔离和云安全。课程既讲虚拟化机制,也分析逃逸、侧信道、镜像供应链和 confidential computing 的边界。
这是操作系统、体系结构和系统安全之后的研究生系统专题课。
先修要求
- 操作系统、体系结构和系统安全基础。
- 理解页表、中断、设备和权限级别。
- 能阅读内核或 hypervisor 相关代码。
学习目标
- 解释 CPU、内存和 I/O 虚拟化机制。
- 比较虚拟机、容器和沙箱隔离边界。
- 分析 hypervisor、容器运行时和镜像供应链风险。
- 评估云环境中的逃逸、侧信道和租户隔离。
- 构建一个虚拟化实验或安全评估工具。
教学组织
- 每周 2 次课堂:一次讲授核心概念,一次用于实验、论文讨论或项目评审。
- 课程按 16 周推进,每周都有可检查的作业、实验或项目里程碑。
- 强调可复现材料:代码、配置、数据、实验日志和报告需要能被助教或同学复查。
周计划
第 1 周
第 2 周
虚拟化目标和隔离模型实验与评审
比较 VM、容器和进程沙箱威胁模型。完成配套实验、记录问题,并在课堂评审中解释设计取舍。
第 3 周
第 4 周
CPU 虚拟化和陷入实验与评审
跟踪一次特权指令或 VM exit。完成配套实验、记录问题,并在课堂评审中解释设计取舍。
第 5 周
第 6 周
内存虚拟化和 EPT实验与评审
分析二级页表和隔离成本。完成配套实验、记录问题,并在课堂评审中解释设计取舍。
第 7 周
第 8 周
I/O、设备和中断虚拟化实验与评审
评估设备直通或模拟设备风险。完成配套实验、记录问题,并在课堂评审中解释设计取舍。
第 9 周
容器、namespace 和 cgroup
配置容器隔离并测试边界。
第 10 周
容器、namespace 和 cgroup实验与评审
配置容器隔离并测试边界。完成配套实验、记录问题,并在课堂评审中解释设计取舍。
第 11 周
第 12 周
逃逸、侧信道和云多租户实验与评审
复盘一个虚拟化漏洞或云隔离案例。完成配套实验、记录问题,并在课堂评审中解释设计取舍。
第 13 周
第 14 周
镜像、运行时和供应链实验与评审
审计镜像和运行时配置。完成配套实验、记录问题,并在课堂评审中解释设计取舍。
第 15 周
confidential computing 和局限
提交虚拟化安全评估报告。
第 16 周
confidential computing 和局限实验与评审
提交虚拟化安全评估报告。完成配套实验、记录问题,并在课堂评审中解释设计取舍。
考核方式
个人作业
25%概念题、阅读题、设计题和小型编程或实验任务。
实验与项目
40%虚拟化实验、安全评估、配置审计和报告。
课堂参与与评审
10%参与讨论、演示、代码或论文评审,以及同伴反馈。
期末报告与答辩
25%提交可复现材料、技术报告和演示,说明方法、结果、限制与后续工作。
课程项目
项目围绕虚拟化机制或安全边界展开,例如容器隔离评估、hypervisor 实验、镜像供应链审计或云信任边界分析。
课程政策
- 允许使用 AI 工具,但所有生成代码、实验记录和设计建议必须经过学生本人审查,并在报告中说明使用方式。
- 严禁提交不能解释的代码、证明、配置或实验结果;答辩时每名成员都需要解释自己负责部分的设计、测试和取舍。
- 迟交会影响迭代评分,但课程更看重可复现、可审计和可维护的结果,而不是临时堆砌。
参考课程
国际名校
中国 985 高校
- 上海交通大学CS3328 系统安全(含虚拟化)
- 北京大学操作系统与虚拟化安全(沈晴霓)
- 北京大学沈晴霓教授主页
- 浙江大学USSLab ICS课程(含虚拟化安全)