跳转至

1698021763

系统安全原理和实践

IS 专业必修

课程学习内容

本课程与软件安全重视用户态的攻防不同,主要介绍系统级别(主要是操作系统)的攻与防,具体内容为:

  • 软件供应链安全:介绍软件供应链安全的基本概念,以及软件供应链安全的攻击案例和多层次的防御方案
  • 操作系统安全,包括:
    • Boot Security
    • Runtime Security
    • Hardware security mechanism,包括虚拟化 , TPM,TEE,PAC

事实上教学计划上还有容器安全和移动安全,但因为大作业答辩占据了太多课时所以 2022-2023 春夏并没有讲到。

预修要求

  • 汇编语言(ARM,实际上会学过 RISC-V 即可,因为比较类似)
  • 操作系统
  • 软件安全

任课教师

这门课的任课老师是网络空间安全学院的申文博老师。申老师在系统安全工业界和学术界都有丰富的工作研究经验,因此这门课上下来会觉得申老师非常 professional,讲课也比较生动,会有大量的拓展。

当然申老师对学生的要求可能比较高,因此和隔壁软件安全的周老师风格不太一样,人少的时候会有 quiz,并且上课互动性也比较强(虽然经常没人理,申老师也很无奈)。除此之外大作业答辩也是非常重视工作量以及完成度,会明确直接地指出不足之处。当然最后给分如果工作量足够的话还是比较 nice 的。

课程教材

无指定教材,老师课前会发布 PPTPPT 配合老师的讲解应该是比较清楚了。

分数构成

这门课分数由三个部分构成 :

  • 课堂参与和讨论(10%)

    申老师会有一些互动,偶尔会说回答的加分(即使这样还是没人参与互动),会有随堂 quiz(特别是人少的时候),但是 quiz 都会报完答案再交,所以不必太担心,只要到课就行。

  • 实验(40%):共 3 次实验,内容和分数占比分别为:

    • 复现 log4j2 漏洞(10%)
    • OS ROP 攻击和防御(15%)
    • OS JOP 攻击和防御(15%)

    事实上实验难度并不大,特别是 ROP 没有软安那样的技巧,只是攻击对象从用户态程序变成了内核

  • 大作业(50%)

    2022-2023 春夏给出了三个方向,一个是供应链相关,一个是内核安全相关,最后是 ChatGPT 相关(结合时事),内核方向因为需要的专业知识比较多,所以要求相对于另外两个方向偏低,当然面对申老师的拷打的风险也更高。大程为了减少期末赶工的事件发生,设置有中期答辩,占比总评 20%,剩下 30% 是期末答辩的分数。给分只要工作量足够(这很重要),一般而言是不错的,除非让申老师觉得做的事情与预期产生了偏差。

要注意的是虽然目前这门课暂时没有期末考试,但申老师一直比较重视理论并且觉得大家系统理论功底一般(大概对于大部分同学而言事实也如此),因此不排除未来这门课加入期末考试作为考核的可能性。