本文主要描述计算机网络
的安全问题,不涉及主机安全
计算机网络通信面临的两大类威胁,即被动攻击
和主动攻击
。
被动攻击
指攻击者从网络上窃听他人的通信内容,也被称为截获
。包含:
流量分析
。攻击者只是观察
、分析
协议数据单元而不干扰
信息流,从而了解所交换数据的某种特征。主动攻击
的常见方式:
篡改
。攻击者故意篡改网络上传送的报文。恶意程序
,主要种类:
计算机病毒(computer virus)
。一种会“传染”其它程序的程序,传染是通过修改其它程序
来把自身或自己的变种
复制进去而完成的。计算机蠕虫(computer worm)
。通过网络通信
功能,将自身从一个节点发送到另一个节点并自动启动运行
的程序。特洛伊木马(Trojan horse)
。一种程序,它执行的功能并非它所声称
的功能,而是某种恶意功能
。逻辑炸弹(logic bomb)
。一种当运行环境满足某种特定条件时,执行其他特殊功能
的程序。后门入侵(backdoor knocking)
。利用系统
实现过程中的漏洞
通过网络
入侵系统。流氓软件
。一种未经客户允许
就在用户计算机上安装运行
并损害用户利益
的软件。拒绝服务Dos (Denial of Service)
。指攻击者向互联网上的某台服务器不停的发送大量分组,使该服务器无法提供正常服务,甚至完全瘫痪。
分布式拒绝服务 DDoS(Distributed Denial of Service)
。从互联网上 N 个网站
集中攻击一个网站
。交换机中毒
。在使用以太网交换机的网络中,攻击者向某个交换机发送大量伪造的源 MAC 地址的帧,交换机的交换表因写入大量源 MAC 而存储不够用,导致交换机无法正常工作。计算机的安全目标如下:
一个安全的计算机网络应设法达到以下四个目标:
保密性
。信息的内容,仅有信息的发送方和接收方懂。端点识别
。能够鉴别发送方、接收方的真实身份。信息的完整性
。信息的内容未被人篡改过。运行的安全性
。计算机网络能够正常、安全的运行。对称密钥密码体制
和公钥密码体制
即加密密钥、解密密钥是使用相同的密码体制。
常用算法:
数据加密标准 DES(Data Encryption Standard)
三重 DES
,算法流程
高级加密标准 AES(Advanced Encryption Standard)
使用一对
密钥,加密密钥
向公众公开,解密密钥
则是需要保密的。加密算法、解密算法也都是公开滴。
引入公钥密码体制的原因:
对称密码体制
的密钥分配
问题,分配的方式有:
事先约定
。这种方式,造成密钥的管理、更换极大的不便。信使传达
。在高度自动化的计算机网络中,使用信息传达密钥明显不合适。使用高度安全的密钥分配中心 KDC(Key Distributed Center)
。会使网络成本增加。算法实现:
公钥密码体制的特点:
数字签名必须具备的能力:
报文鉴别
。即接收者能够确信该报文的确是发送者发送的。报文的完整性
。接收者接收到的数据,与发送者发送的报文保持一致。不可否认
。发送着事后不能抵赖对报文的签名。数字签名的流程
D 运算:解密算法;
E 运算:加密算法
备注:RSA 的 E 运算、D 运算需要占用非常多的计算机的 CPU 时间。
散列函数的特点:
密码学
中使用的密码散列函数
,最重要的一个特点:要找到不同的报文,具有同样的密码散列函数输出,在计算上是不可行的
。
实用的密码散列函数 MD5 和 SHA-1
使用散列函数构建报文鉴别码
用报文鉴别码 MAC鉴别报文
由于入侵者不掌握密钥 K,所以入侵者无法伪造 A 的报文鉴别码 MAC,因为无法伪造 A 发送的报文。这样就完成了对报文的鉴别。
注意:这里的密钥 K,可以是对称密钥体系,也可以公钥体系。所以在正式通信前,会有一次密钥交换过程。
实体鉴别所面临的问题:
1. 重放攻击
2. 中间人攻击(man-in-the-middle attack)
即便使用公钥体系 + 不重数字
,中间人攻击
依然可以使互相通信的 A 和 B 毫无察觉。这里需要确认你所收到的公钥真的是对方的公钥吗?所以,公钥的分配、以及认证公钥的真实性是一个非常重要的事情。
密钥分配的两种方式:
常用的方式是设立密钥分配中心 KDC(Key Distribution Center)
,它的特点是:
大家
都信任
的机构秘密通信
的用户临时分配一个会话密钥(仅在一次会话期间使用)
与 KDC 通信的主密钥
图:KDC对会话密钥的分配
分配结束后,A 与 B 获得一个临时会话密钥 Kab,使用 Kab 进行加密通信。
认证中心 CA(Certification Authority),特点:
政府
出资建立绑定
CA 发来的证书
,证书里面有公钥及其拥有者的标识信息(人名或 IP 地址)
网络层使用 IPsec(IP security) 协议族,它不是一个单一协议,是一个框架,允许通信双方选择合适的算法和参数(例如,密钥长度)
广泛使用的两种协议:
SSL
作用在端系统的应用层 HTTP 和运输层
之间,在 TCP
之上建立一个安全通道,为通过 TCP 传输的应用层数据
提供安全保障。
未使用 SSL 时,应用层的应用程序通过 TCP 套接字与运输层进行交互的。
应用层使用 SSL 最多的是 HTTP,但 SSL 并非仅用于 HTTP,而是可用于任何应用层的协议。比如:邮件 IMAP
SSL 提供的安全服务可归纳为三种:
SSL建立安全会话的简单过程
在事前
可以采用防火墙技术
防范,事中
采用入侵检测系统
防范。
防火墙作为一种访问控制技术,通过严格控制进出网络边界的分组,禁止不必要的通信,从而减少潜在入侵的发生。
防火墙是一种可特殊编程的路由器,安装在一个网点和网络的其余部分之间,目的是实施访问控制策略。
防火墙技术一般分为两类:
分组过滤路由器
应用网关,也称为代理服务器
入侵检测方法一般分为基于特征的入侵检测
和基于异常的入侵检测
基于特征的入侵检测
只能检测已知攻击,对未知攻击则束手无策,原理:
基于异常的入侵检测
,原理:观察正常运行的网络流量,学习正常流量的统计特征和规律,当检测到网络流量不符合正常情况时,则认为发生入侵
入侵检测系统中的漏报、误报
,如果漏报率
比较高,则仅能检测到少量的入侵,给人以安全的假象;误报率太大
会导致大量的虚假报警。
文章关联: