计算机网络安全技术教案.docx
《计算机网络安全技术教案.docx》由会员分享,可在线阅读,更多相关《计算机网络安全技术教案.docx(27页珍藏版)》请在冰豆网上搜索。
计算机网络安全技术教案
《计算机网络安全技术》课程教案
2017-2018学年第二学期
主要内容:
第一部分计算机网络安全综述(第1章)
第二部分黑客常用的攻击方法(第2章)
第三部分计算机病毒(第3章)
第四部分数据加密技术(第4章)
第五部分防火墙技术(第5章)
第六部分Windowsserver安全(第6章)
第七部分Web安全(第7章)
课程安排:
共18周,每周2次课,4学时
所用教材:
《计算机网络安全技术》XXXXX主编XXXXXXXX出版社
讲授内容:
理论部分:
第一周
教学要点:
1.网络安全的基本概念
2.网络安全的目标
3.网络安全与协议层次的关系
教学要求:
1掌握网络安全的目标及措施
2能够举出网络安全的实例并简要说明
3掌握不同协议层次上的网络安全问题
讲授内容:
1.1基本概念
例子保护私人住所
挂窗帘防止外人偷窥;
加锁防小偷;
养狼狗拒绝不受欢迎之客;
安装警报系统,摄像头检测不速之客;
电围墙,篱笆,门卫审查;
安全应考虑的问题的两方面(矛盾与统一):
安全威胁、被保护物品的价值
安全措施的目标:
AccessControl,Authentication,Integrity,Accountability,Privacy;
职业前景:
网络安全管理;网络安全软件设计开发;网络律师;网上监管专家;
与网络安全有关的著名公司:
Symantec(赛门铁克)、Microsoft、Kaspersky、Redhat、McAfeeVersign……;
国外著名公司漏洞统计数据;漏洞实例分析;
区分:
远程管理(控制)软件vs黑客软件,木马;
常见网络安全用语,俗语说明:
木马(trojan),特洛伊、肉鸡
隐私、言论自由、版权;
1.2网络拓扑与安全
什么是拓扑
网络按照基本拓扑的分类:
星型、总线型、环型
其他:
网状,不规则型
拓扑与网络安全的关系
星型网的优势:
所有两个节点间通信只定义了一条路径
网络(特指中间节点)处于固定的物理位置,易确保物理安全
TCP/IP协议进行通信;因特网上的安全隐患
按照TCP/IP的协议层次,安全隐患问题分以下来讨论:
网际层、传输层、应用层:
1.网际层:
伪造(假冒)IP地址伪造(假冒)ARP伪造(假冒)路径控制信息
恶意使用(假冒)源路由
利用IP/ICMP数据包的DoS攻击(非授权使用)
2.传输层:
预测(假冒)TCP初始序号
利用TCP/UDP数据包的DoS攻击(非授权使用)
3.应用层:
扫描/搜索(非授权使用)
DNS(DomainNameService:
域名服务)欺骗(假冒)
窃听用户认证信息(窃听)
攻击程序缺陷(非授权使用)
代理服务器的非法使用(非授权使用)
利用电子邮件进行的DoS攻击(非授权使用)
病毒与木马
1.3网络安全的层次结构(HierarchyofNetworkSecurity)
物理安全安全控制安全服务
1.4网络安全威胁
1.4.1网络威胁的类型
窃听、假冒、重放、流量分析、破坏完整性
1.4.2威胁的动机(Motives)
工业间谍、财政利益、报复或引人注意、恶作剧、无知
第二周
教学要点:
1网络攻击及其分类
2客户服务器的工作模式及其特点
教学要求:
1掌握主动攻击与被动攻击的区别并能举例说明
2能够针对客户和服务器进行区分并能编程
讲授内容:
1.5网络攻击
“攻击”的定义
任何非授权行为
法律定义:
入侵行为完全完成且入侵者已经在目标网络内部。
本课程:
可能使一个网络受到破坏的所有行为都被认为是攻击。
网络攻击的两大分类
被动攻击(PassiveAttacks):
攻击者监视所有信息流以获得某些秘密
形式:
窃听、流量分析最难被检测到
主动攻击(ActiveAttacks):
攻击者试图突破你的安全防线
形式:
假冒、重放、欺骗、消息篡改、拒绝服务等
对网络的被动攻击和主动攻击
1.6基本安全技术
防火墙(Firewall),加密(Encryption),身份认证(Authentication),数字签名(DigitalSignature),内容检查(ContentInspection)
网络攻击
“攻击”的定义:
任何非授权行为
法律定义:
入侵行为完全完成且入侵者已经在目标网络内部。
本课程:
可能使一个网络受到破坏的所有行为都被认为是攻击。
有关对网络的被动攻击和主动攻击的词汇:
NormalFlow;Interception;Interruption;Modification;Fabrication;
ModelforNetworkSecurity;NetworkAccessSecurityModel;
应用层的客户-服务器方式
在TCP/IP的应用层协议使用的是:
客户-服务器方式
计算机的进程(process)就是运行着的计算机程序。
为解决具体应用问题而彼此通信的进程称为“应用进程”。
应用层的具体内容就是规定应用进程在通信时所遵循的协议。
客户和服务器的区分:
客户(client)和服务器(server)都是指通信中所涉及的两个应用进程。
客户-服务器方式所描述的是进程之间服务和被服务的关系。
客户是服务请求方,服务器是服务提供方。
客户软件的特点:
在进行通信时临时成为客户,但它也可在本地进行其他的计算。
被用户调用并在用户计算机上运行,在打算通信时主动向远地服务器发起通信。
可与多个服务器进行通信。
不需要特殊的硬件和很复杂的操作系统。
服务器软件的特点:
专门用来提供某种服务的程序,可同时处理多个远地或本地客户的请求。
在共享计算机上运行。
当系统启动时即自动调用并一直不断地运行着。
被动等待并接受来自多个客户的通信请求。
一般需要强大的硬件和高级的操作系统支持。
客户进程和服务器进程使用TCP/IP协议进行通信
功能较强的计算机可同时运行多个服务器进程
1.7网络安全模型
考虑信息系统的四方模型:
Sender(发信者)、Receiver(收信者)、Enemy(敌人)、Boss(监控管理方)
1.8安全漏洞
信息系统的安全漏洞主要有三个方面:
1)OS操作系统
2)Network计算机网络
3)DBMS数据库管理系统
补充内容:
星号(*)密码的破解;一个电影网站的破解录像;网络嗅探器sniffer;Java编程初步
第三周
教学要点:
1对称密码系统的特点和代表算法
2古典密码的例子:
凯撒密码
3DES算法描述
教学要求:
1区分对称密码系统和非对称密码系统
2针对古典密码编程实现
3了解DES算法的特点及使用方法
讲授内容:
2.1前言
传统的密钥加密解密系统都是对称密钥密码系统。
加密和解密使用同一把密钥。
从最早的凯撒密码到使用最多的DES,以及下一代密码算法Rijndael
1976年,Diffie和Hellman发表论文“NewDirectioninCryptography”,从而出现了非对称密钥密码系统
密钥加密系统的几个部分:
M(Message)消息空间,C(Cipertext)密文空间
K(Key)密钥空间,E(EncryptionAlgorithm)加密算法
D(DecryptionAlorithm)解密算法
它们满足EK1(M)=CDK2(C)=MDK2(EK1(M))=M
两种密钥算法体制
对称密钥算法:
K1K2也叫秘密密钥算法,单一密钥算法
非对称密钥算法K1/K2也叫公开密钥算法
2.2古典密码
替换密码例:
凯撒密码
置换密码例:
纵行置换密码
凯撒密码----简介
凯撒密码是罗马扩张时期由JuliusCaesar创造的,用于加密通过信使传递的作战指令。
它把字母表中的字母移动一定位置而实现加密。
如向右移动2位,则A变成C,B变成D…X变成ZY变成Z变成?
凯撒密码----分析
字母表总共有26个字母
用凯撒密码加密,如果明文字符串是“Hello”,移动2位则变为密文
如何解密?
只要将字母向相反方向移动同样位数即可
这里移动的位数“2”是加密和解密共用的密钥
凯撒密码---编程思路
Step1:
读取要加密的字符串、密钥
Step2:
取出字符串中的每个字符
Step3:
对每个字符进行移位
这里采用Java编程实例说明:
Step1Step2Step3编译并运行程序
加密:
JavaCaesar明文密钥
解密:
JavaCaesar明文-密钥
这里明文指“要加密的字符串”;密钥指“移动的位数”
DES(数据加密标准):
最通用的对称密码体制算法:
DES--DataEncryptionStandard
密钥长度为56位,分组长度64位,需要进行16轮加密迭代的对称密钥加密分组算法。
对称密码算法的两种类型:
分组密码:
一次处理一块输入,每个输入块声称一个输出块,典型例子:
DES算法
流密码:
对输入元素连续处理,同时产生连续单个输出元素。
典型例子:
A5算法
2.3DES的工作模式
ECB(ElectronicCodebook)电子密码本CBC(CipherBlockChaining)密码分组链接
CFB(CipherFeedback)密文反馈OFB(OutputFeedback)输出反馈
有关DES的破解
早期官方的得出了十分乐观的结论;Diffie,Hellman等修改了他们的估计;计算机科学家Tanenbaum指出,即使没有这种专用机,也可以用穷举法破译DES。
A5算法序列密码简介
2.4其它对称密码算法
2.4.1IDEA
IDEA即国际数据加密算法,它的原型是PES,对PES改进后的新算法称为IPES,并于1992年改名为IDEA(InternationalDataEncryptionAlgorithm)。
补充内容
Word密码的破解;网络嗅探器sniffer;Java编程初步
第四周
教学要点:
1单向散列函数原理与应用
2单向散列函数安全性分析
教学要求:
1理解和掌握单向散列函数的原理和常用算法
2了解密码破解的原理和防范与应用
讲授内容:
单向散列函数的原理和应用场合
单向散列函数:
散列值是由单向散列函数产生的。
所谓的单向散列函数(HashFunction,又称哈希函数、杂凑函数),是将任意长度的消息M映射成一个固定长度散列值h的函数:
h=H(M)
其中,h的长度为m。
单向散列函数算法MD5和SHA-1的算法描述
MD5的前景
在2004国际密码学会议(Crypto’2004)上,王小云教授公布了破解MD5算法的研究成果,引起了密码学界轰动。
但这里MD5算法的破解对实际应用的冲击要远远小于它的理论意义,不会造成PKI、数字签名安全体系的崩溃。
MD5的安全性问题
MD5的两种常用的应用场合为:
单向变换用户口令;对信息进行签名
单向散列函数的强度体现在它能把任意的输入随机化到什么程度,并且能产生输出。
对MD5的普通直接攻击(野蛮攻击)穷举可能的明文产生和H(m)相同的结果
对MD5的生日攻击:
用概率来指导散列冲突的发现
其它对MD5的攻击:
微分攻击被证明对MD5的一次循环有效,但对全部4次循环无效。
有一种成功的MD5攻击,不过是它对MD5代码本身作了手脚,属于crack而不是hack
口令长度和信息论:
根据传统信息论,英语每个8-bit字母的信息熵为1.3bits(来源于英语语法的规律性这个事实,字母出现的概率不等造成了熵的减小,如果26个字母出现的概率均等,信息熵会增至4.7bits)。
密码系统的选择与密码攻击
对于一个密码系统来说,如果新的密码系统的强度依赖于攻击者不知道算法的内部机理,那这密码注定会失败。
最好的算法是那些已经公开的,并经过世界上最好的密码分析家们多年的攻击,但还是不能破解的算法。
密码攻击
密码分析攻击分类(都假设密码分析者知道所用的加密算法的全部知识)
唯密文攻击(ciphertextonly)已知明文攻击(knownplaintext)
选择明文攻击(chosenplaintext)选择密文攻击(chosenciphertext)
自适应选择明文/密文攻击(chosentext)选择密钥攻击(chosenkey)
软磨硬泡攻击(Rubber-hose)
补充内容
黑客字典介绍;Java编程初步;远程控制举例;VMWare介绍
虚拟机软件介绍:
VMWare
虚拟机软件可以在一台电脑上模拟出来若干台PC,每台PC可以运行单独的操作系统而互不干扰,实现一台电脑“同时”运行几个操作系统,还可以将这几个操作系统连成网络。
VMWare的使用:
GuestOS,模拟的硬件,可以使用ISO文件作为光盘,运行模式
网络设置方式:
Bridged方式,NAT方式
第五周
教学要点:
1公钥密码体制的原理和代表算法RSA和Diffie-Hellman
2Diffie-Hellman算法的安全性分析
3数字签名介绍
教学要求:
1理解和掌握RSA算法和Diffie-Hellman
2理解防范Diffie-Hellman攻击的方法
3了解数字签名的分类与应用
讲授内容:
公钥密码体制的历史和发展,参考文献
公钥密码系统原理:
基于陷门单向函数的概念。
单向函数是易于计算但求逆困难的函数,
公钥密码系统的应用:
通信保密、数字签名、密钥交换
密钥交换
通信双方交换会话密钥,以加密通信双方后续连接所传输的信息。
一般,每次逻辑连接使用一把新的会话密钥,用完就丢弃。
例如:
Diffie-Hellman密钥交换
公开密钥算法RSA的描述
选择两个不同的大素数p和q(一般都为100位左右的十进制数字),计算乘积:
n=pq
和欧拉函数值:
φ(n)=(p−1)(q−1)
随机取一整数e,1<e<φ (n),且e和φ (n)互素。
此时可求得d以满足:
ed==1modφ(n)则d=e–1modφ(n)
这样可以把e和n作为公开密钥,d作为私人密钥。
其中,p、q、φ(n)和d就是秘密的陷门(四项并不是相互独立的),这些信息不可以泄露。
RSA加密消息m时(这里假设m是以十进制表示的),首先将消息分成大小合适的数据分组,然后对分组分别进行加密。
每个分组的大小应该比n小。
设ci为明文分组m加密后的密文,则加密公式为
ci=mie(modn)
解密时,对每一个密文分组进行如下运算:
mi=cid(modn)
加/解密方案的可行性证明可以参考参考资料。
RSA应用举例:
选p=5,q=11,则
n=pq=55,φ(n)=(p−1)(q−1)=40
于是明文空间为在闭区间[1,54]内且不能被5和11整除的数。
选择e=7,则d=23。
由加/解密公式可以得到加密表如表4-1所示。
4.2Diffie-Hellman密钥交换
4.2.1算法概述
Diffie-Hellman算法的安全性在于在有限域上计算离散对数非常困难。
(1)Alice和Bob协商一个大素数p及p的本原根a,a和p可以公开;
(2)Alice秘密产生一个随机数x,计算X=axmodp,然后把X发送给Bob;
(3)Bob秘密产生一个随机数y,计算Y=aymodp,然后把Y发送给Alice;
(4)Alice计算k=Yxmodp;
(5)Bob计算k'=Xymodp。
k和k'是恒等的,因为k=Yxmodp=(ay)xmodp=(ax)ymodp=Xymodp=k'
则k和k'即为秘密密钥。
4.2.2针对Diffie-Hellman算法的中间人攻击
4.2.3认证的Diffie-Hellman密钥交换---针对中间人攻击
4.2.4三方或多方Diffie-Hellman
4.3数字签名
数字签名的基本概念
数字签名与传统签名的比较
数字签名的分类
数字签名的方式:
直接数字签名;仲裁数字签名
安全性:
无条件安全的数字签名;计算上安全的数字签名
可签名次数:
一次性的数字签名;多次性的数字签名
数字签名算法:
普通数字签名算法EIGamalRSADSS/DSA
其他:
不可否认的数字签名算法;群签名算法;盲签名算法
补充内容:
Java实现的RSA加密和解密;Java实现的DiffieHellman密钥分配
第六周-第九周
教学要点:
1TCP/IP相关网络体系结构及协议复习
2漏洞扫描与端口扫描
3各种协议漏洞及其防范方法介绍
教学要求:
1理解和掌握TCP/IP网络基础知识中有关网络安全的内容
2理解和掌握端口扫描的作用和应用
3了解协议的漏洞分析方法,掌握防范方法及工具应用
讲授内容:
TCP/IP协议栈
通常被认为是一个四层协议系统。
UDP和TCP的对比
UDP:
面向无连接,传送数据前不需先建立连接,不可靠,只提供“尽最大努力服务”,但实现简单,速度快,开销小。
TCP:
面向连接,传送数据前建立连接,传送结束后释放连接,复杂性和开销都比UDP大。
但能提供可靠的全双工信道
有关运输层:
端口的概念
端口就是运输层服务访问点TSAP。
端口是用来标志应用层的进程。
端口号:
端口使用16bit的端口号进行标志。
端口号只具有本地意义,即端口号只是为了标志本计算机应用层中的各进程。
在因特网中不同计算机的相同端口号是没有联系的。
分为两类:
一类是所谓的熟知端口,数值为0~1023—>常用熟知端口(well-knownport)
其他的端口都属于一般端口,用来随时分配给请求通信的客户进程。
互联网地址
IP地址是在全世界范围是惟一的32bit的标识符。
每一类地址都由两个固定长度的字段组成,其中一个字段是网络号net-id,而另一个字段则是主机号host-id,它标志该主机(或路由器)。
常用的三种类别的IP地址的使用范围
协议封装
TCP传给IP的数据单元称作TCP报文段或简称为TCP段(TCPSegment)。
IP传给网络接口层的数据单元称作IP分组(IPDatagram)。
更准确地说,IP和网络接口层之间传送的数据单元应该是包(Packet)。
包既可以是一个IP数据报,也可以是IP数据报的一个片(Fragment)。
通过以太网传输的比特流称作帧(Frame)。
以太网数据帧的物理特性是其长度必须在46~1500字节之间
IP协议
网际协议IP是TCP/IP的核心,IP协议是不可靠的协议。
IP数据包中含有发送它的主机的IP地址(源地址)和接收它的主机的IP地址(目的地址)。
TCP协议
TCP数据包中包含序列号和应答号;排序;重传。
用三次握手建立TCP连接
TCP连接释放的过程
TCP的正常的连接建立和关闭
TCP的有限状态机模型
补充:
IP和地理位置的对应关系;IP数据库;VisualRoute等软件介绍
漏洞扫描相关知识与端口扫描软件PortScanner,SuperScan简介
扫描(scan)就是对计算机系统或者其他网络设备进行安全相关的检测,以找出安全隐患和可被黑客利用的漏洞。
扫描软件是一把双刃剑.
扫描的种类分为三类:
第一类数据库安全扫描器;
第二类操作系统安全扫描器;
第三类网络安全扫描器(针对子网络服务、应用程序、网络设备和网络协议等)。
端口扫描(PortScan)
常用的端口扫描技术:
TCPconnect()扫描;TCPSYN扫描;TCPFIN扫描;IP段扫描;TCP反向ldent扫描
扫描器举例:
X-SCAN
TCP会话劫持(TCPHijack)
攻击者截获和重定向客户与服务器之间的数据流,使之经过攻击者的机器。
对于客户和服务器来说,它们都认为是在直接进行通信。
TCP会话劫持涉及的具体手段:
去同步(Desynchronization)
常用攻击手段分析:
信任与认证(常见于Unix/Linux);伪造IP地址及其原理;
序列号猜测;利用TCP定时器漏洞实现的攻击;
UDP协议
ARP/RARP协议
IP包是被封装在以太网帧内的。
以太网有它自己的地址方案,它采用的是48比特的惟一硬件(MAC)地址。
以太网头包含源和目的硬件地址。
地址解析协议ARP原理
ARP高速缓存的作用:
缓存中毒;常见ARP攻击原理与防范
ARP应当注意的问题:
攻击一般局限于局域网内部
DDoS/DoS拒绝服务攻击原理:
目前出现最多,也是最难防范的攻击,
常见DDos攻击工具Trinoo,TFN:
UDPFlood攻击,PingFlood,
Smurf攻击,伪造源IP,特殊ICMP数据包通讯.
其他常见流行攻击工具与攻击手段分析:
结论:
攻击手段不断变化,隐蔽性更强,应不断学习提高以跟上网络安全技术发展
第十周
教学要点:
1VPN的作用和应用场合
2IPSec的作用和协议的规范
教学要求:
1了解VPN的应用
2理解IPSec的内容和配置
讲授内容:
VPN的安全考虑
实现VPN之前,我们不仅应看到其带来的好处,同时应清楚其存在的潜在安全威胁,
常见VPN应用环境
VPN通常用于三种网络环境。
远程接入
VPN安全策略
是网络安全策略的一个子集,相对来说它要更细节化(Granular)
VPN数据安全性
VPN协议
VPN是基于隧道(Tunneling)的技术。
VPN隧道对要传输的数据用IP协议进行封装,这样可以使数据穿越公网(Internet)。
IPSec的引入:
补充:
在网络的不同层次上的保密及特点。
针对网络的分层结构,保密层次也分为:
应用层、传输层、网络层、数据链路层。
应用层有PGP、Kerberos和Secure Shell等
传输层有TLS,SSL等。
网络层,即IP层主要有IPSEC等。
数据链路层,专有线路连接,是速度快,但实现难度大,如银行的ATM提款机。
IPV4数据报与IPv4的缺陷,IPv6
IPSec协议
IPSec是一套开放的,基于标准的安全体系结构提供了大量安全特性
IPSec的要点
两个通信协议:
AH,ESP
两种操作模式:
传输模式,隧道模式
一个密钥交换管理协议:
IKE
两个数据库:
安全策略数据库SPD,安全关联数据库SAD
IPSec的体系结构
IPSec数据包信息格式,因特网密钥管理协议
习题:
当使用隧道方式时,构造了新的外部IP首部。
对于IPv4和IPv6,指出外部分组中的每一个外部IP首部字段和扩展首部与内部分组的相应字段或扩展首部的关系。
即指出哪些外部值是从内部值得来的,哪些值是独立于内部值构造出来的。
第十一周
教学要点:
1SSL的作用和原理
2配置和使用SSL/TLS
教学要求:
1熟悉SSL/TLS中的术语和概念
2能够为Web服务器配置安全通信
讲授内容:
传输层安全SSL和TLS
SSL(SecureSocketsLayer)/TLS的历史和发展,各