1698021763
系统安全原理和实践 ¶
课程学习内容 ¶
本课程与软件安全重视用户态的攻防不同,主要介绍系统级别(主要是操作系统)的攻与防,具体内容为:
- 软件供应链安全:介绍软件供应链安全的基本概念,以及软件供应链安全的攻击案例和多层次的防御方案
- 操作系统安全,包括:
- Boot Security
- Runtime Security
- Hardware security mechanism,包括虚拟化 , TPM,TEE,PAC 等
事实上教学计划上还有容器安全和移动安全,但因为大作业答辩占据了太多课时所以 2022-2023 春夏并没有讲到。
预修要求 ¶
- 汇编语言(ARM,实际上会学过 RISC-V 即可,因为比较类似)
- 操作系统
- 软件安全
任课教师 ¶
这门课的任课老师是网络空间安全学院的申文博老师。申老师在系统安全工业界和学术界都有丰富的工作研究经验,因此这门课上下来会觉得申老师非常 professional,讲课也比较生动,会有大量的拓展。
当然申老师对学生的要求可能比较高,因此和隔壁软件安全的周老师风格不太一样,人少的时候会有 quiz,并且上课互动性也比较强(虽然经常没人理,申老师也很无奈)。除此之外大作业答辩也是非常重视工作量以及完成度,会明确直接地指出不足之处。当然最后给分如果工作量足够的话还是比较 nice 的。
课程教材 ¶
无指定教材,老师课前会发布 PPT,PPT 配合老师的讲解应该是比较清楚了。
分数构成 ¶
这门课分数由三个部分构成 :
-
课堂参与和讨论(10%)
申老师会有一些互动,偶尔会说回答的加分(即使这样还是没人参与互动),会有随堂 quiz(特别是人少的时候),但是 quiz 都会报完答案再交,所以不必太担心,只要到课就行。
-
实验(40%):共 3 次实验,内容和分数占比分别为:
- 复现 log4j2 漏洞(10%)
- OS ROP 攻击和防御(15%)
- OS JOP 攻击和防御(15%)
事实上实验难度并不大,特别是 ROP 没有软安那样的技巧,只是攻击对象从用户态程序变成了内核
-
大作业(50%)
2022-2023 春夏给出了三个方向,一个是供应链相关,一个是内核安全相关,最后是 ChatGPT 相关(结合时事),内核方向因为需要的专业知识比较多,所以要求相对于另外两个方向偏低,当然面对申老师的拷打的风险也更高。大程为了减少期末赶工的事件发生,设置有中期答辩,占比总评 20%,剩下 30% 是期末答辩的分数。给分只要工作量足够(这很重要),一般而言是不错的,除非让申老师觉得做的事情与预期产生了偏差。
要注意的是虽然目前这门课暂时没有期末考试,但申老师一直比较重视理论并且觉得大家系统理论功底一般(大概对于大部分同学而言事实也如此),因此不排除未来这门课加入期末考试作为考核的可能性。