《网络安全》课程教学大纲(2023版)
一、课程基本信息
课程编码
|
CS06245 |
学 分
|
3
|
学 时
|
40(授课)+4(讨论)+8(课程实践)
|
|||||
课程名称
|
(中文)网络安全
|
|||||||||
(英文)Network Security
|
||||||||||
课程类别
|
专业核心课程
|
|||||||||
授课专业
|
信息安全、保密技术
|
|||||||||
开课单位
|
湖南大学信息科学与工程学院
|
|||||||||
先修课程
|
信息安全数学基础、计算机网络
|
|||||||||
课程负责人
|
靳文强 |
开课学期
|
23春季 |
|||||||
线上课程网址
|
http://kczx.hnu.edu.cn/G2S/Template/View.aspx?action=view&courseType=0&courseId=5756
|
|||||||||
教材与参考资料
|
||||||||||
教材
|
作者
|
名称
|
出版社
|
ISBN
|
出版时间
|
|||||
刘建伟, 王育民
|
网络安全—技术与实践(第3版)
|
清华大学出版社
|
9787302467588
|
2017
|
||||||
David Brumley Vyas Sekar.
|
Introduction to Computer Security.
|
Course of CMU
|
|
2017
|
||||||
李剑, 杨军, 胡玉鹏
|
网络空间安全实验
|
机械工业出版社
|
9787111671602
|
2022
|
||||||
参考资料
|
作者
|
名称
|
出版社
|
ISBN
|
出版时间
|
|||||
王智民
|
工业互联网安全
|
清华大学出版社
|
|
2020
|
||||||
陈伟, 李频
|
网络安全原理与实践
|
清华大学出版社
|
|
2016
|
||||||
徐爱国, 张淼, 彭俊好
|
网络安全(第2版)
|
北京邮电大学出版社
|
|
2007
|
||||||
Goodrich ,Tamassia
|
Introduction to Computer Security
|
Pearson
|
|
2010
|
||||||
Charles P. Pfleeger,Shari Lawrence Pfleeger
|
Security in Computing(Third Edition)
|
电子工业出版社
|
|
2004
|
||||||
杜静,敖富江 译
|
汽车黑客大曝光
|
清华大学出版社
|
|
2016
|
||||||
工业和信息化部人才交流中心
|
智能互联的网络安全技术及应用
|
电子工业出版社
|
|
2018
|
||||||
注:1.课程类别指通识必修、通识选修、学门核心、学类核心、专业核心、个性培养、实践环节等(与《湖南大学本科专业培养方案(2020版)》保持一致);
2.线上课程网址包括学校课程中心及MOOC、SPOC等自建课程网址;
3.教材与参考资料可根据选用情况加行。
二、课程简介
(一)课程中文简介
该课程主要是为了面向国家网络战略需求,适应计算机网络安全技术发展和应用的需要,以培养“基础扎实、视野开阔、德才兼备”的信息安全专业人才为总目标,帮助学生树立正确的总体国家安全观和网络安全观,并对新一代的网络安全攻防技术有比较全面的认识。
该课程会从网络协议和各个应用层协议出发,分析其中的漏洞以及相关攻击方式,使学生能够了解网络安全相关的原理,用攻防对抗无限迭代的思维和网络空间全局的视角来探索网络安全世界。教学过程中强调在实际系统的操作中发现问题、分析问题和解决问题,注重各教学环节(理论教学、小班讨论、课程实验、实验课程)的有机联系,特别是强化小班讨论与课程实验环节,使学生加深对课堂教学内容的理解,提高分析解决问题的能力。教学中有计划有目的地向学生介绍各专业课之间的关系,配合实际应用例子,由浅入深善于诱导,使学生从被动吸收知识转化为主动索取知识,培养学生的学习兴趣。
通过该课程的学习,使学生能够了解网络安全相关的原理,从网络协议和各个应用层协议出发,分析其中的漏洞和攻击方式,用全局的视角来探索网络安全世界。同时,通过课程可以帮助学生更好地理解如何检测和防范各种攻击,掌握设计、维护安全的复杂网络架构及网络工程应用系统的基本手段和常用方法,具有追踪最新网络安全问题的意识和能力。
(二)课程英文简介
This course is mainly in order to meet the needs of national cyber security strategy, and adapt to the needs of the development and application of computer network security technology, in order to cultivate "solid foundation, broad vision, both integrity and ability" of information professionals as the overall goal, to help students establish a correct concept of network security, and network security technology has a comprehensive understanding and understanding.
This course will start from the network protocol and each application layer protocol, analyze the vulnerabilities and related attack methods, so that students can understand the principles related to network security, with a global perspective to explore the world of network security. Emphasized in the teaching process found problems in the operation of the actual system, to analyze and solve problems, pay attention to each teaching link (theory teaching, small class discussion, course experiment, experiment courses) of organic connection, especially strengthen small class discussion and curriculum experiment link, causes the student to deepen the understanding of classroom teaching content, improve the ability of problem solving. In the teaching, the relationship between the professional courses is introduced to the students in a planned and purposeful way. With practical application examples, the students are good at inducing from the shallow to the deep, so that the students can transform from passive absorption of knowledge to active acquisition of knowledge and cultivate their interest in learning.
Through the study of this course, students can understand the principles related to network security, analyze the vulnerabilities and attack modes from the perspective of network protocols and various application-layer protocols, and explore the world of network security from a global perspective. At the same time, the course can help students better understand how to detect and prevent various attacks, master the basic means and common methods of designing and maintaining a secure complex network architecture and network engineering application system, and have the awareness and ability to track the latest network security problems.
三、课程内容
(一)课程教学目标
1.学校办学定位
帮助我校大学生树立正确的网络安全观,在计算机原理、密码学、通信原理和计算机网络技术等基础上,掌握网络安全的基本概念,理解各种常见网络安全威胁产生的原因,对计算机网络安全有一个系统全面的理解;理解网络作为万物互联时代系统攻防入口的重要性。
2.专业人才培养要求
1) 教学目标明确。紧扣教学目标,以培养学生的网络安全思维能力作为基本出发点安排教学内容,系统地结合小班讨论、课程实验来帮助学生更好地理解如何检测和防范各种攻击,掌握设计、维护安全的网络架构的基本手段和常用方法。
2) 授课形式多样。本课程教学采用大班教学和小班讨论的形式来完成。课堂教学讲授基础知识、核心概念以及典型实例,用于帮助学生建立课程学习所必要的知识体系。小班讨论则根据课程目标,分别安排4个主题进行自由讨论、程序实操演示和交流。
3) 课程实验。基于教材丰富灵活的实验环境,学生可以从网络的各个层面开始深入到网络系统内部去学习、了解和掌握网络安全的基本概念,理解各种常见网络安全威胁产生的原因,对计算机网络安全有一个系统全面的理解。
3.学习本课程后应该达到的知识、能力水平
1) 掌握网络协议栈的工作原理和常见漏洞;掌握web应用的主要安全隐患及攻击原理;熟悉消息认证机制及其在网络安全中的重要角色;熟悉网络加密和秘钥分发机制、无线网络的安全风险、移动端系统安全风险的内在原理;了解物联网、车联网、人工智能等前沿领域存在的网络安全问题;并能综合运用以上知识点分析复杂网络安全问题。
2) 掌握常见的网络攻击方法和技术,熟练各种网络攻击和渗透测试工具,达到对各种网络攻击方式的深入理解。
3) 熟悉各种网络攻击的检测或防范技术手段,掌握设计、维护安全的复杂网络架构及网络工程应用系统的基本手段和常用方法。
4) 具有“网络空间安全”的系统思维方式和分析设计能力,具有追踪最新网络空间安全问题的主动意识和能力。
4.课程思政育人目标
教导学生坚定共产主义和保家卫国的信念,作为信息安全专业的学生,学会时刻保持对信息、数据的警惕性,学好专业知识,争取为国家的网络安全领域贡献自己的力量,同时培养人文社会科学素养,树立较强的社会责任感,能够在工程实践中理解并遵守工程职业道德和规范,履行责任。
具体目标包括但不限于:了解信息安全、信息对抗等技术发展历程,能够理解网络攻防技术对人类文明、社会进步和民族复兴的推动作用和潜在的不良影响;在工程实践中体现良好的人文素养,展现较强的行业职业道德和规范意识,认识到信息安全领域工程师在网络、社会和企业组织中的作用,提升自我专业技能,争取在岗位上为国家建设社会主义事业添砖增瓦,充分实现个人的社会价值。
(二)教学基本内容
1. 理论环节分配
理论章节目标和课时分配表
章节
|
课时
|
第一章 概述
|
5
|
第二章 缓冲区溢出攻击
|
6
|
第三章 低层协议的安全性
|
6
|
第四章 高层协议的安全性
|
2
|
第五章 Web应用攻防技术
|
9
|
第六章 消息认证与杂凑函数
|
4
|
第七章 网络加密与密钥管理
|
4
|
第八章 前沿网络安全技术-5G/6G网络、量子密钥等
|
4
|
合计
|
40
|
第一章
教学目的与要求:
要求学生能够对网络空间安全有一个全方位的认知,了解当前最新的国内外网络安全形势,树立正确的网络安全观,对网络攻防、网络潜在隐患等基础知识有一个基本的了解,并对后续章节的安排有一个总体的了解。
教学重点:
树立正确的网络安全观,认识掌握网络安全的重要性与需求。
教学难点:
常见的网络攻击形式的分类与基本原理。
教学内容:
通过大量案例对网络安全问题做了一个总体的分析介绍,讲解网络安全的重要性和常用的安全技术及相关管理和法律问题,介绍网络安全的思政内容;并对一些后续章节将要重点展开的概念进行简明的概括与介绍。
教学思政元素:
通过大量案例分析全球网络安全国际形势,国家信创工程与当代青年大学生密切关系,掌握自主知识产权、核心产品的重要性。
学时分配:
5学时
相应毕业要求:
GA1工程知识:能够将相关数学、物理、信息安全基础和专业知识用于描述、分析和解决信息内容安全、网络安全、软件安全、硬件安全等相关复杂工程问题。
GA5使用现代工具:能够针对信息安全领域复杂工程问题,开发、选择与使用恰当的技术、资源、现代工程工具和信息技术工具,包括对信息安全复杂工程问题的预测与模拟,并能够理解其局限性。
GA8职业规范:具有人文社会科学素养、社会责任感,能够在工程实践中理解并遵守工程职业道德和规范,履行责任。
GA10沟通:能够就信息安全领域复杂工程问题与业界同行及社会公众进行有效沟通和交流,包括撰写报告和设计文稿、陈述发言、清晰表达或回应指令。并具备一定的国际视野,能够在跨文化背景下进行沟通和交流。
第二章
教学目的与要求:
要求学生能够对程序堆栈结构有清晰的认识,掌握缓冲区溢出的原理和攻击技术。
教学重点:
掌握缓冲区溢出攻击的原理。
教学难点:
程序编译与反汇编操作。
教学内容:
通过对编译器做总体的分析介绍,让学生熟悉程序编译中的缓冲区漏洞,介绍缓冲区溢出攻击的原理及其他溢出攻击。
教学思政元素:
分析讲解系统底层漏洞,漏洞利用,远程攻击,辨明是非,为国家网络安全防御贡献漏洞挖掘力量。
学时分配:
6学时
相应毕业要求:
GA1工程知识:能够将相关数学、物理、信息安全基础和专业知识用于描述、分析和解决信息内容安全、网络安全、软件安全、硬件安全等相关复杂工程问题。
GA5使用现代工具:能够针对信息安全领域复杂工程问题,开发、选择与使用恰当的技术、资源、现代工程工具和信息技术工具,包括对信息安全复杂工程问题的预测与模拟,并能够理解其局限性。
GA8职业规范:具有人文社会科学素养、社会责任感,能够在工程实践中理解并遵守工程职业道德和规范,履行责任。
GA10沟通:能够就信息安全领域复杂工程问题与业界同行及社会公众进行有效沟通和交流,包括撰写报告和设计文稿、陈述发言、清晰表达或回应指令。并具备一定的国际视野,能够在跨文化背景下进行沟通和交流。
第三章
教学目的与要求:
要求学生能够对底层的网络协议栈有一个系统性的了解,熟悉其中各个层次的常见漏洞,掌握ARP攻击、ICMP攻击、IP攻击、DOS攻击和DNS攻击等危害性较大的网络攻击的内部机理。
教学重点:
认识掌握底层网络协议栈的工作原理与漏洞。
教学难点:
常见的针对低层网络协议的攻击行为、内部原理与防范措施。
教学内容:
对底层网络协议栈的安全问题做详细的介绍,并对一些常见攻击方式的运行机理和防范措施进行讲解。
教学思政元素:
分析讲解网络安全协议的安全对于我们日常生活、工作和学习带来的影响。
学时分配:
6学时
相应毕业要求:
GA1工程知识:能够将相关数学、物理、信息安全基础和专业知识用于描述、分析和解决信息内容安全、网络安全、软件安全、硬件安全等相关复杂工程问题。
GA5使用现代工具:能够针对信息安全领域复杂工程问题,开发、选择与使用恰当的技术、资源、现代工程工具和信息技术工具,包括对信息安全复杂工程问题的预测与模拟,并能够理解其局限性。
GA8职业规范:具有人文社会科学素养、社会责任感,能够在工程实践中理解并遵守工程职业道德和规范,履行责任。
GA10沟通:能够就信息安全领域复杂工程问题与业界同行及社会公众进行有效沟通和交流,包括撰写报告和设计文稿、陈述发言、清晰表达或回应指令。并具备一定的国际视野,能够在跨文化背景下进行沟通和交流。
第四章
教学目的与要求:
要求学生能够对高层的网络协议栈有一个系统性的了解,熟悉其中各个层次的常见漏洞,掌握电子邮件安全、消息传输协议、网络时间协议、远程登录协议等网络协议的潜在攻击。
教学重点:
认识掌握高层网络协议栈的工作原理与漏洞。
教学难点:
常见的针对高层网络协议的攻击行为、内部原理与防范措施。
教学内容:
对高层网络协议栈的安全问题做详细的介绍,并对一些常见攻击方式的运行机理和防范措施进行讲解。
教学思政元素:
分析讲解网络安全协议的安全对于我们日常生活、工作和学习带来的影响。
学时分配:
2学时
相应毕业要求:
GA1工程知识:能够将相关数学、物理、信息安全基础和专业知识用于描述、分析和解决信息内容安全、网络安全、软件安全、硬件安全等相关复杂工程问题。
GA5使用现代工具:能够针对信息安全领域复杂工程问题,开发、选择与使用恰当的技术、资源、现代工程工具和信息技术工具,包括对信息安全复杂工程问题的预测与模拟,并能够理解其局限性。
GA8职业规范:具有人文社会科学素养、社会责任感,能够在工程实践中理解并遵守工程职业道德和规范,履行责任。
GA10沟通:能够就信息安全领域复杂工程问题与业界同行及社会公众进行有效沟通和交流,包括撰写报告和设计文稿、陈述发言、清晰表达或回应指令。并具备一定的国际视野,能够在跨文化背景下进行沟通和交流。
第五章
教学目的与要求:
要求学生能够对Web应用系统面临的安全问题有一个全面的认识,掌握Web应用核心安全问题的根源和常用的防御机制,掌握常见的Web攻击技术及防范措施;了解流行的Web服务器漏洞扫描技术和工具。
教学重点:
认识掌握常见的Web应用注入攻击和防范措施。
教学难点:
跨域攻击、XSS漏洞攻击、Web服务器漏洞扫描。
教学内容:
对Web应用的漏洞和攻防措施有一个全面的介绍,并重点讲解几种常见的Web攻防机制。
教学思政元素:
分析讲解Web安全对于我们日常生活、工作和学习带来的影响,以及相应的预防网络诈骗的准则。
学时分配:
9学时
相应毕业要求:
GA1工程知识:能够将相关数学、物理、信息安全基础和专业知识用于描述、分析和解决信息内容安全、网络安全、软件安全、硬件安全等相关复杂工程问题。
GA5使用现代工具:能够针对信息安全领域复杂工程问题,开发、选择与使用恰当的技术、资源、现代工程工具和信息技术工具,包括对信息安全复杂工程问题的预测与模拟,并能够理解其局限性。
GA8职业规范:具有人文社会科学素养、社会责任感,能够在工程实践中理解并遵守工程职业道德和规范,履行责任。
GA10沟通:能够就信息安全领域复杂工程问题与业界同行及社会公众进行有效沟通和交流,包括撰写报告和设计文稿、陈述发言、清晰表达或回应指令。并具备一定的国际视野,能够在跨文化背景下进行沟通和交流。
第六章
教学目的与要求:
要求学生能够对认证的本质和主要环节有较全面的认识,掌握杂凑函数的内部原理及其在网络消息认证中的主要应用方式,熟悉几种常见的杂凑函数,包括MD系统、SHA系列。
教学重点:
认识掌握消息认证的主要原理、熟悉MD系列算法。
教学难点:
MD算法关键步骤和原理。
教学内容:
对消息认证的流程和机制有一个全面的介绍,并重点讲解几种经典认证算法,包括MD和SHA算法的输入和输出,内部运算过程。
教学思政元素:
通过案例分析并讲解密码在决定战争胜负中的关键作用,密码管理与社会工程学,人性的弱点。
学时分配:
4学时
相应毕业要求:
GA1工程知识:能够将相关数学、物理、信息安全基础和专业知识用于描述、分析和解决信息内容安全、网络安全、软件安全、硬件安全等相关复杂工程问题。
GA5使用现代工具:能够针对信息安全领域复杂工程问题,开发、选择与使用恰当的技术、资源、现代工程工具和信息技术工具,包括对信息安全复杂工程问题的预测与模拟,并能够理解其局限性。
GA8职业规范:具有人文社会科学素养、社会责任感,能够在工程实践中理解并遵守工程职业道德和规范,履行责任。
GA10沟通:能够就信息安全领域复杂工程问题与业界同行及社会公众进行有效沟通和交流,包括撰写报告和设计文稿、陈述发言、清晰表达或回应指令。并具备一定的国际视野,能够在跨文化背景下进行沟通和交流。
第七章
教学目的与要求:
要求学生能够对网络数据交换中用密钥加密的实现原理、密钥的生成、分发、管理和存储流程有一个总体的认识,熟悉密钥管理流程中的风险及解决措施。
教学重点:
认识掌握网络中端到端和链路加密的技术原理。
教学难点:
密钥分发和管理。
教学内容:
重点讲解网络数据交换中密钥的加密使用过程、密钥是生成、分配协议、管理过程、存储机制,并介绍密钥的撤销与销毁原理。
教学思政元素:
通过案例分析并讲解密码在决定战争胜负中的关键作用,密码管理与社会工程学,人性的弱点。
学时分配:
4学时
相应毕业要求:
GA1工程知识:能够将相关数学、物理、信息安全基础和专业知识用于描述、分析和解决信息内容安全、网络安全、软件安全、硬件安全等相关复杂工程问题。
GA5使用现代工具:能够针对信息安全领域复杂工程问题,开发、选择与使用恰当的技术、资源、现代工程工具和信息技术工具,包括对信息安全复杂工程问题的预测与模拟,并能够理解其局限性。
GA8职业规范:具有人文社会科学素养、社会责任感,能够在工程实践中理解并遵守工程职业道德和规范,履行责任。
GA10沟通:能够就信息安全领域复杂工程问题与业界同行及社会公众进行有效沟通和交流,包括撰写报告和设计文稿、陈述发言、清晰表达或回应指令。并具备一定的国际视野,能够在跨文化背景下进行沟通和交流。
第八章
教学目的与要求:
要求了解前沿网络领域的安全问题和攻防技术,包括5G/6G网络、工业互联网、移动车联网和量子密钥等。
教学重点:
工业互联网安全、无人驾驶网联车的安全漏洞,人工智能技术安全问题。
教学难点:
智能网联车系统的结构,人工智能技术。
教学内容:
重点分析无线网络中的安全问题,与传统有线网络的区别;讲解典型的工业互联网安全应用与案例;针对无人驾驶网联车的攻击和相关案例,分析其技术原理;讲解物联网存在的安全漏洞;讲解人工智能技术存在的安全问题。
教学思政元素:
探讨前沿网络安全对抗技术、信创产业对于我国国家安全产生的影响。
学时分配:
4学时
相应毕业要求:
GA1工程知识:能够将相关数学、物理、信息安全基础和专业知识用于描述、分析和解决信息内容安全、网络安全、软件安全、硬件安全等相关复杂工程问题。
GA5使用现代工具:能够针对信息安全领域复杂工程问题,开发、选择与使用恰当的技术、资源、现代工程工具和信息技术工具,包括对信息安全复杂工程问题的预测与模拟,并能够理解其局限性。
GA8职业规范:具有人文社会科学素养、社会责任感,能够在工程实践中理解并遵守工程职业道德和规范,履行责任。
GA10沟通:能够就信息安全领域复杂工程问题与业界同行及社会公众进行有效沟通和交流,包括撰写报告和设计文稿、陈述发言、清晰表达或回应指令。并具备一定的国际视野,能够在跨文化背景下进行沟通和交流。
2. 小班讨论分配
讨论安排和课时分配表
讨论
|
课时
|
讨论一:代码漏洞分析与缓冲区溢出攻击
|
1
|
讨论二:Wireshark报文捕捉分析或web应用跨站请求伪造CSRF攻击与防御(二选一)
|
1
|
讨论三:利用AFL进行模糊测试漏洞挖掘
|
2
|
合计
|
4
|
讨论一
讨论内容:
Ÿ 讨论分析代码漏洞扫描的基本原理;
Ÿ 讨论缓冲区溢出攻击与防御技术的关键环节;
Ÿ 讨论如何发现常见软件漏洞(stack overflow, double free, format string vulnerability, etc)。
Ÿ 攻击漏洞程序并获得root权限。
讨论要求:
PPT宣讲并分析解决思路,现场程序演示,问答互动。
学时分配:
4学时
讨论二
讨论内容:
Ÿ 掌握Wireshark抓包软件的基本使用方法;使用Wireshark抓取数据报,分析TCP头的结构、分析TCP的“三次握手”和“四次挥手”的过程。(思考讨论:四次挥手 为什么最后还要等一会才timeout?);使用wireshark提取还原报文中的图片
Ÿ 或者构造针对web应用程序的跨站请求伪造CSRF攻击,并掌握采用 SameSite Cookie进行防御
Ÿ 讨论分析mitmproxy中间人攻击神器拦截修改手机通信内容(参考:http://www.freebuf.com/sectool/76361.html);学习使用fiddler4捕捉修改http报文(可选,自学)
讨论要求:
PPT宣讲并分析解决思路,现场程序演示,问答互动。
学时分配:
4学时
讨论三
讨论内容:
Ÿ 了解模糊测试的基本原理和工作流程;
Ÿ 熟悉使用AFL工具实现Fuzzing;
Ÿ 了解如何通过afl-cmin和afl-tmin工具对种子进行修剪;
Ÿ 按照实验步骤进行操作,并成功找出crash并分析root cause。
讨论要求:
PPT宣讲并分析解决思路,现场程序演示,问答互动。
学时分配:
4学时
3. 实验环节分配(实验上机课可完成讨论课的实验,或选择以下实验内容)
实验安排和课时分配表
实验
|
课时
|
实验一 Metasploit之攻击实例
|
2
|
实验二:Web应用SQL注入攻击与防御
|
2
|
实验三:Web应用XSS攻击与防御
|
2
|
实验四:安卓平台恶意代码检测技术探讨
|
2
|
合计
|
8
|
实验一
教学目的与要求:
学习并掌握使用metasploit工具集进行缓冲区溢出攻击,了解缓冲区溢出攻击的原理。
教学重点:
metasploit的具体命令和操作流程。
教学难点:
通过payloads设置在程序的地址空间里安排适当的代码。通过适当的初始化寄存器和内存,让程序跳转到入侵者安排的地址空间执行。
教学内容:
通过完成给定目标主机的缓冲区漏洞扫描,基于metasploit实施缓冲区攻击,掌握主动和被动两种缓冲区攻击形式。
学时分配:
4学时
实验二
教学目的与要求:
学习并掌握SQL注入和盲SQL注入攻击的原理和具体步骤。
教学重点:
SQL注入的具体方式和操作流程。
教学难点:
通过SQL UNION提取数据。
教学内容:
通过完成给定目标主机的渗透分析,进行SQL注入和盲SQL注入,基于SQL常用语法和注入工具sqlmap进行SQL注入攻击,并尝试进行后台防御。
学时分配:
4学时
实验三
教学目的与要求:
学习并掌握多种跨站脚本XSS攻击的原理和具体步骤。
教学重点:
XSS攻击的具体方式和操作流程。
教学难点:
分析查找XSS漏洞。
教学内容:
通过完成给定目标主机的漏洞分析,完成XSS攻击,并尝试进行后台防御。
学时分配:
4学时
实验四:安卓平台恶意代码检测技术探讨
教学目的与要求:
学习并掌握安卓平台的架构特点,了解安卓平台的权限机制和通信机制存在的攻击风险和漏洞,了解用基本的机器学习方法检测安卓的恶意代码。
教学重点:
掌握用机器学习的方法分析恶意代码的特征。
教学难点:
APK的反编译、AndroidManifest文件的权限提取和源代码特征分析,以及对机器学习方法的掌握。
教学内容:
设计一个检测系统的总体架构,单机版或web版,能基于机器学习的方法自动提取恶意代码样本的特征,建立模型进行训练,从而对用户上传的APK进行分析检测,判断恶意或非恶意代码。
学时分配:
4学时
四、考核方式
(一)考核方式
本课程为教学梯队授课。教师负责课堂授课及期末综合成绩评定,助教参与整个教学过程中各个环节,包括:助教负责批改平时作业并评价,助教参与每次的课程实验集中检查并对学生的实验完成情况进行详细记录和评价。
考核方式分为课堂及作业、讨论课、课程实验、期中考试和期末考试。期中考试和期末考试为闭卷笔试,由阅卷教师给出百分制成绩。其他教学环节使用先分档(优/良/中/差)评价、再规格化(百分制)评价的方式。
最终期末总评成绩构成如下:
总成绩 = 平时成绩1*25% + 平时成绩2*25% + 期末考试成绩*50%
其中:
平时成绩1 = 课堂表现及作业*50% + 期中考试*50%
平时成绩2 = 实验成绩*50% + 小班讨论*50%
(二) 教学各环节教学检查与成绩评定基本安排
(1)教师及助教的“教学过程分档化评价”评分标准
作业。主要考核学生对每堂课知识点的复习、理解和掌握程度。平时作业以教材习题为主,目的是检查学生对知识的掌握情况以及帮助学生巩固所学各章节的知识。
考核内容
|
比例
|
优
|
良
|
中
|
差
|
完成进度
|
10%
|
提前完成
|
按时完成
|
按时完成
|
未提交/抄袭
|
概念掌握程度
|
30%
|
90%以上概念清晰
|
80%以上概念清晰
|
70%以上概念清晰
|
40%以上概念清晰
|
方案正确性
|
40%
|
正确
|
基本正确
|
基本正确
|
有较大缺陷
|
分析或结论有效性
|
20%
|
分析合理,结论有效
|
分析较合理
结论基本有效
|
分析较合理
结论基本有效
|
存在严重错误
|
课堂。主要考核学生学习态度,以便及时发现教学过程中的问题,保证教学过程中学生的参与度并及时解决学习中的问题。课堂考勤采用随机抽查方式,每缺席一次课从该部分成绩中降半档处理。
讨论课。小班讨论各班分组进行,每组3-4人。指导教师对课堂情况和学生表现分别记录。通用评分标准如下。
考核内容
|
优
|
良
|
中
|
差
|
文献检索及整理(25%)
|
阅读文献多,归纳全面正确
|
阅读文献多,归纳较全面正确
|
阅读文献较多,归纳基本正确
|
阅读文献不足,归纳不够全面正确
|
案例分析(20%)
|
案例分析深入,仿真或分析的方法与结论正确
|
案例分析较深入,仿真或分析的方法与结论正确
|
案例分析略简单,仿真或分析的方法与结论基本正确
|
案例分析简单,仿真或分析的方法与结论基本正确
|
PPT制作(20%)
|
PPT制作精美,表述简洁清晰,整体内容层次分明,主题明确
|
PPT制作比较精美,表述简洁清晰,整体内容有层次,但主题不鲜明
|
PPT制作尚可,表述清晰,整体内容有一定层次但主题零乱
|
PPT制作一般,表述内容欠清晰,整体一般
|
团队协作(15%)
|
履行角色全部任务,不需任何提醒完成工作,能适当的提出和听取意见
|
几乎能履行角色全部任务,很少需提醒,能倾听别人意见
|
履行角色很少任务,经常需提醒完成工作,不能听取别人意见
|
不能履行角色任务,依靠提醒完成工作,不许他人讲话
|
表述与交流(25%)
|
声音洪亮、叙述清楚、有逻辑性,能很好的与同学交流分享
|
声音洪亮、叙述清楚、逻辑性一般,能较好的与同学交流分享
|
叙述清楚、逻辑性一般,能与同学简单交流分享
|
叙述含糊、交流分享一般
|
课程实验。开放性实验。实验内容课程中心提前发布,学生自主选择课余时间完成,安排固定时间节点集中进行实验验收。要求实验成绩按评分标准打出区分度。每次实验成绩评定细则如下。
考核内容
|
优
|
良
|
中
|
差
|
系统或程序实际操作演示(40%)
|
能熟练地使用实验所要求的工具开展实验并理解其局限性。
|
能较熟练地使用实验所要求的工具开展实验,了解其局限性。
|
能使用实验所要求的工具开展实验,了解其局限性。
|
能在同学帮助下使用实验所要求的工具开展实验。
|
程序代码分析、调试(20%)
|
能熟练地运行、分析、解释、更改实验代码,并分析代码变动所带来的结果变化及其原因。
|
能运行、分析、解释、更改实验代码,并分析代码变动所带来的结果变化及其原因。
|
能简单地运行、分析、解释、更改实验代码,简单分析代码变动所带来的结果变化及其原因。
|
未能熟练地运行、分析、解释、更改实验代码,不能分析代码变动所带来的结果变化及其原因。
|
提交时间与完成度度(20%)
|
能提前申请验收,并完整完成实验项目和实验报告,完成度均很好。
|
能按期完成实验验收和提交实验报告,完成度较好。
|
能按期完成实验验收和提交实验报告,基本完成。
|
未能在规定时间申请验收、提交实验报告
|
实验报告(20%)
|
能根据实验指导书要求撰写实验报告。报告叙述清楚,逻辑性好,且结构完整,层次分明,图表规范,并提出独到见解,记录实验过程中的困难和解决办法。
|
能根据实验指导书要求撰写实验报告。报告叙述清楚,结构完整,图表规范,有一定的见解。
|
能根据实验指导书要求撰写实验报告。报告叙述清楚,结构完整,图表较规范。
|
能根据实验指导书要求撰写实验报告。报告叙述较清楚,结构完整,图表较规范。
|
五、授课手段(教学方法)
从课程组织方式、教学方法、面向学习产出的教学策略设计、教学相关安排这四个方面进行介绍。
(一)课程组织方式
本课程由教学梯队2位老师共同主讲。针对教学内容,强化实际操作,通过课堂讲授、小班讨论、课程实验、实验课程和小学期设计等“链式”实践环节安排强化“网络安全”理论和实践能力的培养。
本课程配备助教,由本专业硕士研究生担任,助教将跟班听课,负责辅导答疑、批改作业及辅导课程实验,参与讨论课程,协助主讲教师完成教学活动各个环节。小班讨论以学生分组报告和演示为主、鼓励和要求全班同学积极参与讨论、助教和指导老师辅助点评。小班讨论的内容安排合理考虑实际操作演练和检测、课程授课内容的重点讨论和分析、部分教材内容自学与讲解等多种形式。期中考试和期末考试采用闭卷笔试方式,主要考察课程知识点综合掌握情况。
所有教学资源(课件PPT、实验环境和教学教辅资料等)、教学过程(课堂作业、小班讨论PPT和准备文档和实验报告等)和答疑活动等均在湖南大学课程中心提交、批改和管理。
(二)教学方法
为了达成课程目标,课程教学采用课堂讲授、小班讨论和开放性课程实验集中检查结合的方式进行。教学过程管理完全使用课程中心,电子化、网络化的方式进行。
课堂讲授:由于本课程内容包含了网络安全相关的原理,从各个层面的网络协议和应用层协议出发,分析其中的漏洞和攻击方式,用全局的视角来探索网络安全世界。本课程的特点是实践性强,教学中应注重启发引导学生掌握重要安全机理的背景思想,理解重要概念的思想本质,避免学生死记硬背,加深学生对课堂教学内容的理解,提高其分析解决问题的能力和运算能力。在传授知识原理的前提下,配合实际应用例子,由浅入深善于诱导,使学生从被动吸收知识的状态下,转化到主动索取知识的状态中来,并采用多媒体辅助教学,加大课堂授课的知识含量。
小班讨论:按教学需求一般设置三类小班讨论专题:第一,与关键课程实验或者实验课程紧密相关的操作性专题,要求学生在小班讨论上充分演示整个实际操作过程,并分享遇到的问题和解决方案;第二,以小班讨论补充和强化课堂教学内容,以专题形式对部分难点进行分析和讲解,要求学生做详细分析报告,助教和指导教师点评;第三,知识延伸/扩展类专题,要求学生按专题题目要求,通过查阅文献,对该专题进行问题分析、解决方案设计和实际解决方法进行完整的展示和说明,同学们自由讨论,助教和指导教师点评。
课程实验:按照核心教学内容安排课程实验4个。课程实验采取开放性实验集中验收的组织方式,即在课程中心上发布实验内容,学生自由选择完成实验的时间和地点,然后在规定的时间节点通过课程中心提交实验报告和结果,并在教学进程中规定的实验集中检查时间由指导教师和助教对每个学生的实验完成情况进行验收,并详细记录验收过程、给出评价。
(三)面向学习产出的教学策略设计
课堂教学产出目标:学生掌握高级应用层协议的运行机理及其缺陷,建立从协议层面看待安全漏洞的思维。
教学策略设计:1.强调某些具体应用系统的功能性之外,所涉及的安全问题等核心知识点;
案例1:会话管理攻击的原理
核心基础知识:session的工作原理;
策略设计:1.依据http协议的特点,如何保持一个会话的连续性; 2.会话固定攻击出现的原因是什么,生活中类似的情形和案例;3.引导学生设计会话固定攻击的防范方法。
小班讨论产出目标:以小组为单位,学生掌握按照给定主题进行自主资料查找、分析与综合的能力,能提出较为清晰的解决思路,并给出基本结果,并展现出合格的现场宣讲与演示能力。
教学策略设计:1.每次专题的讨论均需准备宣讲PPT和现场代码演示; 2.可协作完成,但每人均需独立准备汇报PPT、演示系统和提问纲领,并于课前上传课程中心; 3.鼓励自由讨论和交流;
案例2:讨论二:代码漏洞分析与缓冲区溢出攻击,主题:讨论缓冲区溢出攻击与防御技术的关键环节
策略设计:1.必须代码演示,考察实际操作和动手能力; 2.PPT汇报必须展现汇报人完成该问题时遇到的问题、想到的解决办法及其尝试结果(要求试错、试对均展示); 3.进行现场交流;
课程实验产出目标:独立完成实验内容,熟悉训练平台,掌握SQL注入攻击的原理和实操步骤,通过渗透测试进行SQL注入攻击与防御。
教学策略设计:1.问题统一,但要求个人寻找各自的解决方法; 2.通过集中检查强化每个人实际操作能力的锻炼; 3.要求在实验报告中突出展示问题的分析和解决过程的记录;
案例3:实验二:Web应用SQL注入攻击与防御
策略设计:1.检查时一对一实操测试; 2.实验要求完成的每个模块都要求讲解思路和想法来源,并解释资料查找过程。
(四)教学相关安排
课次
|
课程讲授
|
阅读内容
|
作业
|
讨论
|
实验与项目
|
1
|
概述
|
1.1引言-网络安全观
1.2网络安全与保密需求
1.3 安全威胁与防护措施
1.4 网络安全模型及策略
1.5 开放系统互联安全体系结构
|
|
|
|
2
|
概述、缓冲区溢出攻击
|
1.6 网络安全法与思政教育
2.1 基本概念与栈结构
2.2 缓冲区溢出原理
|
作业一:撰写自己身边的网络安全威胁案例及思政心得报告
|
|
|
3*
|
缓冲区溢出攻击
|
2.3 缓冲区溢出攻击
2.4 其它溢出攻击
|
|
讨论一(代码漏洞分析与缓冲区溢出攻击)
|
实验一
|
4*
|
低层协议的安全性
|
3.1 TCP/IP协议栈安全分析
|
|
|
|
5
|
低层协议的安全性
|
3.2 网络路由和DNS域名管理
3.3 IPv6
3.4 网络地址转换
|
|
|
|
6
|
高层协议的安全性
|
4.1 电子邮件协议
4.2 网络电话协议
4.3 远程登录协议Telnet
4.4 SSH
|
|
|
|
7*
|
高层协议的安全性
|
4.5 多播协议
4.6 HTTPS和SSL协议
4.7 社交APP通讯协议(端到端加密)
|
|
|
|
8*
|
Web应用安全
|
5.1 Web应用安全现状
5.2 注入攻击
|
|
|
实验二
|
9
|
Web应用安全
|
5.3 文件遍历
5.4 点击劫持
|
|
|
|
10*
|
Web应用安全
|
5.5 跨站请求伪造CSRF
5.6 跨站脚本攻击XSS
|
|
讨论二(Wireshark报文捕捉分析,或web应用跨站请求伪造CSRF攻击与防御(二选一)
|
实验三
|
11
|
Web应用安全
|
5.7 多方Web应用交互安全
5.8 会话管理攻击
5.9 Web应用测试及工具包
|
作业二:分析会话管理攻击的原理
|
|
|
12
|
期中考试
|
|
|
|
|
13
|
消息认证与杂凑函数
|
6.1 什么是认证
6.2 信息加密能保证真实性吗
6.3 杂凑(Hash)函数
|
|
|
|
14
|
消息认证与杂凑函数
|
6.4 消息认证码
6.5 应用杂凑函数的基本方式
|
|
|
|
15
|
网络加密与密钥管理
|
7.1 网络加密方式的实现
7.2 密钥管理的基本概念
7.3 密钥生成
|
|
|
|
16*
|
网络加密与密钥管理
|
7.4 密钥的保护、存储与备份
7.5 密钥的泄漏、撤销、过期与销毁
|
|
|
|
17*
|
无线网络安全
|
8.1 无线网络面临的安全威胁
8.2 无线蜂窝网络的安全性
|
|
|
|
18
|
无线网络安全
|
8.3 无线数据网络的安全性
8.4 移动IP的安全性
8.5 Ad hoc网络的安全性
|
|
|
|
19
|
移动安全
|
9.1 移动安全导论
9.2 移动系统安全
9.3 安卓APP安全审计
9.4 安卓恶意APP和异常行为检测
|
|
|
实验四
|
20
|
前沿网络安全技术
|
10.1 工业互联网安全
10.2 物联网/车联网安全
10.3 人工智能安全
|
|
讨论三(利用AFL进行模糊测试漏洞挖掘)
|
|

