课程大纲

课程大纲

软件安全漏洞分析与发现

课程编码:180203085412P2003H 英文名称:Analysis and Detection of Software Vulnerabilities 课时:50 学分:2.50 课程属性:专业核心课 主讲教师:苏璞睿等

教学目的要求
本课程为信息安全专业研究生的专业核心课。本课程讲授和讨论软件安全分析前沿研究领域的主要思想和关键技术。主要内容包括软件基础分析方法和软件漏洞分析利用方法两大部分,软件基础分析方法包括程序切片、污点传播、符号执行和模糊测试等,软件漏洞分析利用方法包括软件漏洞挖掘、机理分析、自动利用生成、漏洞利用缓解防御机制等。
通过本课程的学习,希望学生能了解软件安全漏洞分析前沿研究领域,了解软件漏洞机理分析和利用方面最新研究成果,掌握基本思想和关键技术,培养学生独立的软件安全漏洞分析和研究能力。

预修课程
软件安全原理、网络攻防基础、操作系统、汇编语言

大纲内容
第一章 绪论 3学时 苏璞睿
第1节 软件安全漏洞分析的目标和意义
第2节 软件安全漏洞分析方法概述
第3节 软件安全漏洞分析方法的应用
第二章 软件安全漏洞分析基础知识 6学时 闫佳
第1节 反汇编与汇编语言
第2节 程序基本结构与组成
第3节 操作系统基础知识
第4节 程序分析的图论基础
第5节 常用安全分析工具介绍
第三章 程序切片 3学时 闫佳
第1节 程序切片分析概述
第2节 切片基本原理和方法
第3节 程序切片的应用
第四章 污点传播 3学时 苏璞睿
第1节 污点传播分析概述
第2节 污点传播分析的基本原理和方法
第3节 污点传播分析的应用
第五章 实验一 逆向分析实验 3学时 苏璞睿
第1节 实验汇报讨论
第六章 模糊测试 3学时 苏璞睿
第1节 模糊测试概述
第2节 模糊测试的基本原理和方法
第3节 基于反馈的模糊测试
第4节 其他模糊测试方法
第5节 模糊测试常用工具和案例
第七章 符号执行 3学时 闫佳
第1节 符号执行概述
第2节 符号执行的基本原理
第3节 静态符号执行
第4节 动态符号执行
第5节 符号求解
第6节 符号执行常用工具和案例
第八章 网络协议逆向分析 3学时 闫佳
第1节 网络协议逆向分析概述
第2节 网络协议消息格式逆向方法
第3节 网络协议状态机恢复方法
第4节 网络协议逆向典型案例分析
第九章 典型软件漏洞 3学时 苏璞睿
第1节 软件漏洞分类标准
第2节 空间错误类内存漏洞及典型利用方法
第3节 时间错误类内存漏洞及典型利用方法
第4节 条件竞争类内存漏洞及典型利用方法
第5节 资源消耗类漏洞及典型利用方法
第6节 常见漏洞利用技术
第十章 软件漏洞挖掘 6学时 苏璞睿
第1节 软件漏洞挖掘分析概述
第2节 基于模糊测试的软件漏洞挖掘方法
第3节 特定类型软件漏洞挖掘
第4节 漏洞挖掘典型案例
第十一章 漏洞机理分析 3学时 闫佳
第1节 软件漏洞分析环境搭建
第2节 内存漏洞机理分析
第3节 漏洞触发关键要素分析定位
第4节 典型漏洞分析系统平台
第5节 漏洞分析实践
第十二章 实验二 漏洞分析实验 3学时 苏璞睿
第1节 实验汇报讨论
第十三章 软件漏洞利用 3学时 苏璞睿
第1节 漏洞可利用性评估和利用生成概述
第2节 Shellcode编写方法
第3节 常见操作系统防护方法
第4节 操作系统防护机制突破
第5节 攻击代码构造
第十四章 软件漏洞利用缓解防御机制 3学时 闫佳
第1节 软件漏洞利用缓解防御机制概述
第2节 函数指针与返回地址保护
第3节 基于硬件辅助的漏洞利用防御方案
第4节 现代操作系统漏洞利用防御方案
第5节 控制流完整性保护技术和挑战
第6节 主流的控制流保护方案

教材信息
1、 软件安全分析与应用 苏璞睿 2017年11月出版 清华大学出版社

参考书
1、 软件漏洞分析技术 吴世忠 2014年 科学出版社出版

课程教师信息
苏璞睿 男,中国科学院大学网络空间安全学院教授, 中国科学院软件研究所研究员,博士,博导,所学术委员会委员。长期从事软件动态分析、漏洞分析与利用检测等方面的研究,主要研究方向有:恶意软件动态逆向分析、智能移动终端应用安全以及软件漏洞分析与评估。发表论文50余篇。曾主持国家自然科学基金、836计划、973计划等10余项。