网络安全协议
安全协议概述:在信息网络中,可以在ISO七层协议中的任何一层采取安全措施。大部分安全措施都采用特定的协议实现。
????IPv6 extension headers
中继点选项(Hop-by-hop options)
寻路头标(Routing)
报片头标(Fragment)
信宿选项(Destination options)
认证头标(Authentication)
安全净荷加密头标(Encryption Security Payload)
????IPSec
- IPSec中的安全组合(SA)
- 需求
认证、加密算法及其参数、** - SA:
为使通信双方的认证/加密算法及其参数、**的一致,相互间建立的联系被称为安全组合或安全关联(Security Association)。
通过**管理协议在通信双方之间进行协商,协商完毕后,双方都在它们的安全关联数据库(SAD)中存储该SA参数。
SA由一个三元组唯一地标识,该三元组为安全索引参数SPI、一个用于输出处理的目的IP地址(或用于输入处理的源IP地址)和协议(如AH或ESP)。
SA是单向的,在双向通信时要建立两个SA。对于某一主机来说,某个会话的输出数据和输入数据流需要两个独立的SA。
安全参数索引(SPI)
SPI是为了唯一标识SA而生成的一个32位整数。包含在AH头标和ESP头标中,其值1~255被IANA留作将来使用,0被保留,目前有效的值为256~232-1
有了SPI,相同源、目的节点的数据流可以建立多个SA
安全策略数据库(SPD)
SPD中包含一个策略条目的有序表,通过使用一个或多个选择符来确定每一个条目。
选择符可以是五元组(目的/源地址,协议,目的/源端口号),或其中几个。
条目中包含:
策略(是否需要IPSec处理):丢弃,绕过,加载IPSEC
SA规范
IPSec协议(AH or ESP)
操作模式
算法
对外出处理,应在SPD中查找指向SAD中SA的指针
安全关联数据库(SAD)
SAD包含现行的SA条目,每个SA由三元组索引,一个SAD条目包含下面域:
***计数器:32位整数,用于生成AH或ESP头中的***
***溢出:是一个标志,标识是否对***计数器的溢出进行审核。
抗重放窗口:使用一个32位计数器和位图确定一个输入的AH或ESP数据包是否是重放包
SAD包含现行的SA条目,每个SA由三元组索引,一个SAD条目包含下面域:
AH的认证算法和所需**
ESP的认证算法和所需**
ESP加密算法,**,初始向量(IV)和IV模式
IPSec操作模式
路径最大传输单元(PMTU)
SA生存期
????认证头标AH
-
AH协议
提供无连接的完整性、数据源认证和抗重放保护服务
不提供保密性服务
AH使用消息认证码(MAC)对IP进行认证 -
认证头标
-
安全参数索引
此32比特和目的(或源)IP地址、IPSec协议(AH或ESP)组合即可确定SA,以确定采用的IPSec协议、操作模式、密码算法、**等。当建立新SA时,SPI的产生由目的系统选择。 -
***
单调增加的32位无符号整数,利用该域抵抗重发攻击(Replay Attack)。 -
认证数据
是一个长度可变的域,长度为32比特的整数倍。具体格式因认证算法而异 。该认证数据也被称为数据报的完整性校验值(ICV)。 -
外出处理
使用相应的选择符(目的IP地址,端口号和传输协议)查找安全策略数据库获取策略。如需要对分组进行IPSec处理,且到目的主机的SA已经建立,那么符合分组选择符的SPD将指向外出SA数据库的一个相应SA束。如果SA还未建立,IPSec将调用IKE协商一个SA,并将其连接到SPD条目上。
产生或增加***,当一个新的SA建立时,***计数器初始化为0,以后每发一个分组,***加1
计算ICV
转发分组到目的节点 -
进入处理
若IP分组采用了分片处理,要等到所有分片到齐后重组
使用IP分组头中的SPI、目的IP地址以及IPSec协议在进入的SA数据库中查找SA,如果查找失败,则抛弃该分组,并记录事件。
使用已查到的SA进行IPSec处理。
使用分组中的选择符进入SPD查找一条域选择符匹配的策略,检查策略是否相符
检查***,确定是否为重放分组,
使用SA指定的MAC算法计算ICV,并与认证数据域中的ICV比较,如果两值不同,则抛弃分组 -
完整性校验值ICV的计算
根据SA指定的认证算法和**对IP分组计算出消息认证码。
MAC的计算包括IP头标,计算前先将可变域置0,在隧道模式下,内部IP头标的可变域不用设为0。
ICV的长度依赖于使用的MAC算法,例如,HMAC-MD5的ICV是128位,HMAC-SHA1的ICV是160位。如果ICV不是32的整数倍,就需要填充成32的整数倍。
????加密头标ESP
ESP提供数据保密性、无连接完整性、抗重播服务。ESP大都采用对称密码体制加密,这是因为公钥密码系统的运算量要比对称密码大得多,ESP使用消息认证码(MAC)提供认证服务。
-
外出处理
使用分组的相应选择符(目的IP地址、端口、传输协议等)查找安全策略数据库(SPD)获取策略,如分组需要IPSec处理,且其SA已建立,则与选择符相匹配的SPD项将指向安全关联数据库中的相应SA,否则则使用IKE建立SA。
生成或增加***
加密分组,SA指明加密算法,一般采用对称密码算法
计算完整性校验值 -
进入处理
若IP分组分片,先重组
使用目的IP地址、IPSec协议、SPI进入SAD索引SA,如果查找失败,则丢弃分组
使用分组的选择符进入SPD中查找与之匹配的策略,根据策略检查该分组是否满足IPSec处理要求
检查抗重播功能
如SA指定需要认证,则检查数据完整性
解密
????IPSec的传输模式与隧道模式
-
传输模式
AH和ESP头标被插在IP头标及其他选项(或扩展头标)之后,但在传输层协议之前。它保护净荷的完整性和机密性。 -
隧道模式
在隧道模式下,AH或ESP头标插在IP头标之前,另外生成一个新的IP头放在前面,隧道的起点和终点的网关地址就是新IP头的源/目的IP地址。
保护整个IP分组
????IPSec隧道模式的应用-v*n
v*n( Virtual Private Networks )虚拟专网
在虚拟专网中,任意两个节点之间的连接并没有传统专网所需的端到端的物理链路,而是利用某种公众网的资源动态组成的。
IETF草案理解基于IP的v*n为:"使用IP机制仿真出一个私有的广域网“
通过隧道技术在公共数据网络上仿真一条点到点的专线技术。
所谓虚拟,是指用户不再需要拥有实际的专用线路,而是使用Internet公共线路。所谓专用网络,是指用户可以为自己制定一个最符合自己需求的网络。
IPSec v*n就是利用IPSec技术在Internet上建立的v*n
虚拟专网的用途
????IPSec的实现
Windows 2000
FreeBSD,OpenBSD
KAME:www.kame.net
OpenBSD Doc :www.openbsd.org/faq/faq13.html
Linux
FreeS/Wan:www.swan.org
Solaris
Cisco IOS (PIX and Routers)
????SSL
-
SSL概述
特点:
提供传输层的安全服务(按7层协议,也可以认为是会话层)
最先(1995年)是由Netscape公司开发的,被广泛应用于Web等安全服务,后改编为Internet标准TLS (Transport Layer Security) (TLS1.0,RFC2246与SSL3.0类似)
独立于应用层
传输层采用TCP提供可靠业务
SSL 可分成两层:
SSL握手协议:用于在客户与服务器之间建立安全连接之前交换安全信息
SSL记录协议 (低):确定数据安全传输模式
解决的问题/功能:
客户对服务器的身份认证
SSL服务器允许客户的浏览器使用标准的公钥加密技术和一些可靠的认证中心(CA)的证书,来确认服务器的合法性。
服务器对客户的身份认证
也可通过公钥技术和证书进行认证,也可通过用户名,password来认证。
建立服务器与客户之间安全的数据通道
SSL要求客户与服务器之间的所有发送的数据都被发送端加密、接收端解密,同时还检查 数据的完整性
提供的安全服务:
用户和服务器的合法性认证
using X.509v3 digital certificates
传输数据的机密性
using one of DES, Triple DES, IDEA, RC2, RC4, …
传输数据的完整性
using MAC with MD5 or SHA-1 -
SSL体系结构与协议
工作原理:
采用握手协议建立客户与服务器之间的安全通道,该协议包括双方的相互认证,交换**参数
采用告警协议向对端指示其安全错误
采用改变密码规格协议改变密码参数
采用记录协议封装以上三种协议或应用层数据(记录类型20=改变密码规格,21=告警,22=握手,23=应用层数据)
握手协议:
客户和服务器之间相互鉴别
协商加密算法和**
它提供连接安全性,有三个特点
身份鉴别,至少对一方实现鉴别,也可以是双向鉴别
协商得到的共享**是安全的,中间人不能够知道
协商过程是可靠的
SSL改变密码规格协议和告警协议:
SSL Change Cipher Spec Protocol
改变密码规格(参数)
SSL Alert Protocol
通知SSL对端有关安全错误警报,警报的级别有警告和致命两种( warning or fatal )
错误的原因有:
unexpected message, bad record mac, decompression failure, handshake failure, illegal parameter
close notify, no certificate, bad certificate, unsupported certificate, certificate revoked, certificate expired, certificate unknown
SSL记录协议:
机密性(confidentiality)
using symmetric encryption with a shared secret key defined by Handshake Protocol
IDEA, RC2-40, DES-40, DES, 3DES, RC4-40, RC4-128
message is compressed before encryption
报文完整性(message integrity)
using a MAC with shared secret key
similar to HMAC but with different padding -
SSL协议的安全性分析
SSL协议采用的加密和认证算法
加密算法与会话**:算法有RC4,RC2,IDEA和DES;**由消息散列函数MD5产生
认证算法:采用X.509证书
安全优势
监听和中间人攻击(√)
流量数据分析攻击(x)
截拼攻击(√)
重发攻击(√)
HTTPS:
HTTPS(SSL之上的HTTP)是指结合HTTP和SSL来实现Web浏览器和Web服务器之间的安全通信。
URL:https:// (端口号:443)
加密的元素:
请求文档的URL;
文档的内容;
浏览器格式的内容(格式是由浏览器用户决定的)
在浏览器和服务器之间传输的Cookies
HTTP报头的内容 -
SSL的应用
匿名SSL连接
使用SSL的基本模式——仅对服务器验证,用于用户注册等信息的保护
SSL v*n
服务器端需要验证证书,客户端可以验证证书或用户名加密码
电子商务
商家和银行必须有证书
客户和商家之间的通信用匿名方式,兼顾了安全和易用性
商家与银行之间传送的是顾客数据,通信双方必须先互相验证证书
????提问
- 隧道模式和传输模式的区别?
传输模式在发送信息的源点进行,隧道模式是在网关进行,在IPSec进行。隧道模式是在目标网络的网关才解封,传输模式是在目标站点才解封。 - 信息安全的五大性质如何保证?
保密性:加密(对称加密–>速度快,加密的对象是数据和非对称加密–>方便**管理和分配,加密的对象是**)
完整性
真实性:消息真实()和实体真实
可用性:关于网络攻防
不可抵赖性:数字签名(具有唯一性)
在消息认证中用密码哈希函数生成消息认证码MAC可以同时保证真实性和完整性。