注:本博客是基于谢希仁的《计算机网络》第七版编写,主要是为了自己考研,准备专业课
考点归纳:
网络安全概述
1.计算机网络面临的威胁
-
主动攻击
指攻击者对某个连接中通过的PDU进行各种处理,如有选择地更改、删除、延迟这些PDU,甚至还可将合成的或伪造的PDU送入到同一个连接中去常见的三种方式:篡改、恶意程序、拒绝服务Dos(Denial of service)
-
被动攻击
指攻击者从网络上窃听他人的通信内容在被动攻击中,攻击者只是观察和分析某一个PDU,而不干扰信息流
2.数据加密模型
如下图中,
发送端:A向B发送明文X,但通过加密算法E运算后,就得出密文Y
接收端:利用解密算法D和解密密钥K,解出明文X。其中解密算法是加密算法的逆运算,故需要事先约定好密钥
⚠️密钥由密钥中心提供,当密钥需要向远地传送时,一定要通过另一个安全信道
两类密码体制
1.对称密钥密码体制
-
所谓对称密钥密码体制:即加密密钥与解密密钥是使用相同的密码体制
-
数据加密标准DES(Data Encryption Standard)属于对称密钥密码体制
-
过程:
DES是一种分组密码。在加密前,先对整个的明文进行分组。每一个组为64位长的二进制数据。然后对每一个64位二进制数据进行加密处理,产生一组64位密文数据。最后将各组密文串接起来,即得出整个的密文 -
DES的保密性仅取决于对密钥的保密,而加密、解密算法是公开的
-
三重DES:把一个64位明文用一个密钥加密,再用另一个密钥解密,然后再使用第一个密钥加密
2.公钥密码体制
⚠️公钥密码体制使用不同的加密密钥与解密密钥
加密密钥PK(public key,即公钥)是向公众公开的,而解密密钥SK(secret key,即私钥或密钥)则是需要保密的。加密算法E和解密算法D也都是公开的
公钥密码体制的加密和解密过程特点:
-
密钥对产生器产生出接收者B的一对密钥:加密密钥PKb和解密密钥SKb。发送者A所用的加密密钥PKb就是接收者B的公钥,它向公众公开。而B所用的解密密钥SKb就是接收者B的私钥,对其他人都保密
-
发送者A用B的公钥PKb通过加密算法E运算对明文X加密,得出密文Y,发送给B
B用自己的私钥通过解密算法D运算进行解密
-
从PKb推导出SKb是"计算上的不可能"
⚠️使用对称密钥,可进行一对一的通信。而使用公钥密码时,可以是多对一的单向保密通信(因多人持有B的公钥)
数字签名
数字签名需要具备以下三种功能:
-
报文鉴别:接收者能够核实发送者对报文的签名,其他人无法伪造此签名,能确信该报文就是该发送者发送的;
-
报文的完整性:接收者确信所收的数据和发送者发送的完全一样;
-
不可否认:发送者事后不能抵赖对报文的签名;
算法可行性分析:
-
A把经过D运算得到的密文传送给B。B为了核实签名,用A的公钥进行E运算,还原出明文X;
⚠️任何人用A的公钥进行加密运算后都可以得出A发送的明文。上图中的通信方式并非为了保密,而是为了进行签名和核实签名,即确认此明文的确是A发的;
-
因为除A外没有人持有A的私钥,所以除A外没有别人能产生此密文,这样B就相信报文X是A签名发送的,这就是报文的鉴别功能;
-
同理,如果其他人篡改过报文,但因无法得到A的私钥来对X进行加密,所以对篡改过的报文进行解密后将得出不可读的明文,即验证了报文的完整性;
-
因为只有A持有私钥,所以只要A能够用私钥从进行“D运算加密”后的密文中解密出明文,A就无法抵赖对此报文的签名,实现不可否认;
上面的过程,仅解释对报文进行了数字签名,故还需对报文X本身进行加密,完整的过程如下图所示:
鉴别
目的:验证通信的对方的确是自己所要通信的对象,而不是其他冒充者,并且所传送的报文是完整的,没有被其他人篡改过
鉴别分为两种:
-
报文鉴别:鉴别收到的报文的确是报文的发送者发送的,而不是其他人伪造的或篡改的,包括端点鉴别和报文完整性的鉴别;
⚠️报文鉴别是对每一个收到的报文都要鉴别报文的发送者
-
实体鉴别:仅仅鉴别发送报文的实体。实体可以是一个人也可以是一个进程,这就是端点鉴别;
⚠️实体鉴别是在系统接入的全部持续时间内对和自己通信的对方实体只需验证一次
报文鉴别(关键):
实体鉴别:
上图中使用对称密钥的方法有很大的漏洞。例如:入侵者C可以从网上截获A发给B的报文,C并不需要破译这个报文,而是直接把这个由A加密的报文发送给B,使B误认为C就是A;然后B就向伪装成A的C发送许多本来应当发给A的报文。这就叫做重放攻击
为了对付重放攻击,可以使用不重数。不重数就是一个不重复使用的打随机数,即“一次一数”
A和B对不同的会话必须使用不同的不重数集。由于不重数不能重复使用,所以C在进行重放攻击时无法重复使用所截获的不重数
密钥分配
密钥分配有两种方式:
-
网外分配方式:派非常可靠的信使携带密钥分配给互相通信的各用户(已不再适用)
-
网内分配方式:密钥自动分配
对称密钥的分配
- 目前常用的密钥分配方式是设立密钥分配中心KDC。KDC都是大家信任的机构,其任务是给需要进行秘密通信的用户临时分配一个会话密钥(仅使用一次)
公钥的分配
- 认证中心CA(Certification Authority)将公钥与其对应的实体进行绑定,一般由政府出资建立。每个实体都有CA发来的证书,里面有公钥及其拥有者的标识信息
系统安全:防火墙与入侵检测
防火墙(对外)
防火墙(firewall)作为一种访问控制技术,通过严格控制进出网络边界的分组,禁止任何不必要的通信,从而减少潜在入侵的发生,是系统防御的第一道防线
防火墙是一种特殊编程的路由器,安装在一个网点和网络的其余部分之间,目的是实施访问控制策略
如下图所示:
防火墙技术一般分为以下两类:(一般同时具有这两种技术,见上图)
1、分组过滤路由器:一种具有分组过滤功能的路由器,它根据过滤规则对进出内部网络的分组执行转发或者丢弃(即过滤)。过滤规则是基于分组的网络层或运输层首部的信息
例如:某公司不愿意其雇员用户在上班时间去观看USENET新闻,可设置防火墙拦截目的端口为119的出分组,则雇员就访问不了新闻网USENET
2、应用网关/代理服务器,它在应用层通信中扮演报文中继的角色。每一种网络应用均需要一个不同的应用网关。在应用网关中,可以实现基于应用层数据的过滤和高层用户鉴别
例如:邮件网关可查看邮件信息,看看该邮件是否包含某些敏感词来确定该邮件能否通过防火墙
⚠️所有进出网络的应用程序报文都必须通过应用网关
入侵检测系统IDS(对内)
IDS对已进入网络的分组执行深度分组检查,当观察到可疑分组时,向网络管理员发出警告或执行阻断操作,是系统防御的第二道防线
入侵检测方法一般可以分为基于特征的入侵检测和基于异常的入侵检测
- 基于特征的入侵检测
指根据所有已知攻击标志性特征的入侵活动,当发现与其攻击特征相匹配的分组或分组序列时,则认为可能检测到某种入侵行为 - 基于异常的入侵检测
指观察网络正常运行时的网络流量,学习正常流量的统计特性和规律,当检测到网络中流量的某种统计规律不符合正常情况,则认为可能发生了入侵行为
————————————————————————————————————————————
习题:
1、对称密钥体制和公钥密码体制的特点各是什么?各有何优缺点?
答:
-
对称密钥体制:
- 特点:
- 加密、解密使用相同的密钥
- 收发双方必须共享密钥
- 算法的保密性仅取决于对密钥的保密,而算法是公开的
- 能进行一对一的双向保密通信
- 缺点:
- 密钥安全分发困难
- 特点:
-
非对称密钥体制:
- 特点:
- 加密、解密使用不同的密钥
- 能实现数字签名
- 密钥分配简单
- 能进行多对一的单向保密通信
- 缺点:
- 算法实现较复杂,开销较大
- 特点:
2、试举出一种密钥分配的方法
-
P337,密钥分配中心KDC
-
P338,Kerberos协议
3、试述数字签名的原理
答:P331
4、试述实现报文鉴别和实体鉴别的方法
P332—P335
5、什么是重放攻击?怎么防止重放攻击
- 重放攻击:
过程:入侵者C可以从网络上截获A发给B的报文,C并不需要破译这个报文,而是直接把这个由A加密的报文发送给B,使B误以为C就是A;然后B就向伪装成A的C发送许多本来应当发给A的报文,这就是"重放攻击"。 - 防止:使用不重数
6、什么是"中间人攻击"?
P336 ,中间人攻击