




已阅读5页,还剩72页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1 信息安全原理与应用第十一章网络安全协议本章由王昭主写 2 内容提要 网络协议安全简介网络层安全传输层安全 3 TCP IP协议栈 4 Internet安全性途径 网络层 IP安全性 IPsec 传输层 SSL TLS应用层 S MIME PGP PEM SET Kerberos SHTTP SSH 5 应用层安全 应用层安全必须在终端主机上实施 优点以用户为背景执行 更容易访问用户凭据对用户想保护的数据具有完整的访问权应用可以自由扩展应用程序对数据有着充分的理解缺点针对每个应用须设计一套安全机制 6 传输层安全 优点不会强制要求每个应用都在安全方面作出相应改进缺点由于要取得用户背景 通常假定只有一名用户使用系统 与应用级安全类似 只能在端系统实现应用程序仍需要修改 才能要求传输层提供安全服务 7 网络层安全 优点密钥协商的开销被大大削减了需要改动的应用程序要少得多能很容易构建VPN缺点很难解决 抗抵赖 之类的问题 8 数据链路层 最大的好处在于速度不易扩展在ATM上得到广泛应用 9 网络层安全 10 传输层安全 11 应用层安全 12 内容提要 TCP IP基础网络层安全传输层安全 用户数据经过协议栈的封装过程 IPv4数据报 15 IPv6分组 16 IPv6基本头 17 IP协议 IP是TCP IP协议族中至关重要的组成部分 但它提供的是一种不可靠 无连接的的数据报传输服务 不可靠 unreliable 不能保证一个IP数据报成功地到达其目的地 无连接 connectionless IP并不维护关于连续发送的数据报的任何状态信息 18 IPv4的缺陷 缺乏对通信双方身份真实性的鉴别能力缺乏对传输数据的完整性和机密性保护的机制IP的分组和重组机制不完善由于IP地址可软件配置 IP地址的表示不需要真实并确认真假 以及基于源IP地址的鉴别机制 IP层存在 业务流被监听和捕获 IP地址欺骗 信息泄露和数据项篡改等攻击 IP碎片攻击 源路由攻击 IP包伪造 PingFlooding和PingofDeath等大量的攻击 19 IPsec 网络层安全性需求 身份鉴别 数据完整性和保密性好处 对于应用层透明弥补IPv4在协议设计时缺乏安全性考虑的不足 20 IPsec的历史 1994年IETF专门成立IP安全协议工作组 来制定和推动一套称为IPsec的IP安全协议标准 1995年8月公布了一系列关于IPSec的建议标准1996年 IETF公布下一代IP的标准IPv6 把鉴别和加密作为必要的特征 IPsec成为其必要的组成部分1999年底 IETF安全工作组完成了IPsec的扩展 在IPSec协议中加上ISAKMP InternetSecurityAssociationandKeyManagementProtocol 协议 密钥分配协议IKE Oakley ISAKMP IKE Oakley支持自动建立加密 鉴别信道 以及密钥的自动安全分发和更新 2005年底 对IPsec所采用和支持的算法等特性又进行了新的修订 公布了一系列新的IPsec标准 21 IPsec的应用方式 端到端 end end 主机到主机的安全通信端到路由 end router 主机到路由设备之间的安全通信路由到路由 router router 路由设备之间的安全通信 常用于在两个网络之间建立虚拟私有网 VPN 22 IPsec的文档 IPsec包含三个系列的文档 第一系列的文档重要的有1995年发布的RFC1825 RFC1826 RFC1827 RFC1827 RFC1829 第二系列的文档包括1998年发布的RFC2401 RFC2412 重要的有RFC2401 RFC2402 RFC2406和RFC2408 最新系列的文档发布于2005年 包括RFC4301 RFC4309 最新系列IPsec文档的组成 24 IPsec的内容 协议部分 分为AH AuthenticationHeaderESP EncapsulatingSecurityPayload密钥管理 KeyManagement SA SecurityAssociation IKEv2是目前正式确定用于IPsec的密钥交换协议 25 说明 IPSec在IPv6中是强制的 在IPv4中是可选的 这两种情况下都是采用在主IP报头后面接续扩展报头的方法实现的 AH AuthenticationHeader 是鉴别的扩展报头ESPheader EncapsulatingSecurityPayload 是实现加密和鉴别 可选 的扩展报头 26 安全关联SA SecurityAssociation SA是IP鉴别和保密机制中最关键的概念 一个关联就是发送与接收者之间的一个单向关系 是与给定的一个网络连接或一组网络连接相关联的安全信息参数集合如果需要一个对等关系 即双向安全交换 则需要两个SA 每个SA通过三个参数来标识安全参数索引SPI SecurityParametersIndex 对方IP地址安全协议标识 AHorESP 27 SAD定义了SA参数 序号计数器 一个64位值 用于生成AH或ESP头中的序号字段 计数器溢出位 一个标志位表明该序数计数器是否溢出 如果是 将生成一个审计事件 并禁止本SA的的分组继续传送 抗重放窗口 用于确定一个入站的AH或ESP包是否是重放AH信息 鉴别算法 密钥 密钥生存期以及相关参数ESP信息 加密和鉴别算法 密钥 初始值 密钥生存期 以及相关参数SA的生存期 一个时间间隔或字节计数 到时间后 一个SA必须用一个新的SA替换或终止 并指示哪个操作发生的指示 IPSec协议模式 隧道 传输路径MTU 不经分片可传送的分组最大长度和老化变量 28 AH AuthenticationHeader 为IP包提供数据完整性和鉴别功能利用MAC码实现鉴别 双方必须共享一个密钥鉴别算法由SA指定鉴别的范围 整个包两种鉴别模式 传输模式 不改变IP地址 插入一个AH隧道模式 生成一个新的IP头 把AH和原来的整个IP包放到新IP包的净荷数据中 29 IPsecAuthenticationHeader 30 AH处理过程 1 AH定位在IP头之后 在上层协议数据之前鉴别算法计算ICV或者MAC对于发出去的包 OutboundPacket 的处理 构造AH查找SA产生序列号计算ICV IntegrityCheckValue 内容包括 IP头中部分域 AH自身 上层协议数据分片 31 AH处理过程 2 对于接收到的包 InboundPacket 的处理分片装配查找SA依据 目标IP地址 AH协议 SPI检查序列号 可选 针对重放攻击 使用一个滑动窗口来检查序列号的重放ICV检查 ICV MAC计算 MAC计算所有变化的字段填0后参与运算源和目的地址都是受保护的 可防地址欺骗 33 ICV MAC算法 RFC4305规定必须实现的完整性算法是HMAC SHA1 96 RFC2404 应该实现的完整性算法是AES XCBC MAC 96 RFC3566 可以实现HMAC MD5 96 RFC2403 HMAC SHA1 96和HMAC MD5 96都使用了基于SHA 1或者MD5的HMAC算法 计算全部HMAC值 然后取前96位 AES XCBC MAC 96算法是使用1个1和多个0填充的基本CBC MAC的变体 AES XCBC MAC 96的计算使用128位密钥长度的AES 34 AH两种模式示意图IPv4 35 AH两种模式示意图IPv6 36 ESP EncapsulatingSecurityPayload 提供保密功能 包括报文内容的机密性和有限的通信量的机密性 也可以提供鉴别服务 可选 将需要保密的用户数据进行加密后再封装到一个新的IP包中 ESP只鉴别ESP头之后的信息加密算法和鉴别算法由SA指定也有两种模式 传输模式和隧道模式 37 IPsecESP格式 38 ESP的算法和实现要求 39 ESP的传输模式 40 ESP隧道模式 41 ESP处理过程 1 ESP头定位加密算法和鉴别算法由SA确定对于发出去的包 OutboundPacket 的处理查找SA加密封装必要的数据 放到payloaddata域中不同的模式 封装数据的范围不同增加必要的padding数据加密操作产生序列号计算ICV 注意 针对加密后的数据进行计算分片 42 ESP处理过程 2 对于接收到的包 InboundPacket 的处理分片装配查找SA依据 目标IP地址 ESP协议 SPI检查序列号 可选 针对重放攻击 使用一个滑动窗口来检查序列号的重放ICV检查解密根据SA中指定的算法和密钥 参数 对于被加密部分的数据进行解密去掉padding重构原始的IP包 43 SA的组合 1 特定的通信量需要同时调用AH和ESP服务 2 特定的通信量需要主机之间和防火墙之间的服务传输邻接 同一分组应用多种协议 不形成隧道循环嵌套 通过隧道实现多级安全协议的应用 44 鉴别与机密性的组合 带有鉴别选项的ESP传输邻接使用两个捆绑的传输SA 内部是ESPSA 没有鉴别选项 外部是AHSA传输隧道束加密之前进行鉴别更可取内部的AH传输SA 外部的ESP隧道SA 45 IPsec密钥管理 包括密钥的确定和分配 两种方式 手工的自动的 Internet密钥交换IKE 非IPSec专用 作用 在IPsec通信双方之间 建立起共享安全参数及验证过的密钥 建立 安全关联 IKE代表IPsec对SA进行协商 并对SAD数据库进行填充 46 IPsec小结 IPsec在网络层上提供安全服务定义了两个协议AH和ESPIKE提供了密钥交换功能通过SA把两部分连接起来已经发展成为Internet标准一些困难IPsec太复杂协议复杂性 导致很难达到真正的安全性管理和配置复杂 使得安全性下降实现上的兼容性攻击 DOS 网络层之下的协议 之上的协议的弱点还在进一步完善 47 内容提要 TCP IP基础网络层安全传输层安全 48 传输层安全 传输层介绍传输层的安全性 49 传输层介绍 传输层存在两个协议 传输控制协议 TCP 和用户数据报协议 UDP TCP是一个面向连接的协议UDP是一个非面向连接的协议 50 TCP数据包格式 51 TCP包头 TCP包头的标记区建立和中断一个基本的TCP连接有三个标记来完成这些过程SYN 同步序列号FIN 发送端没有更多的数据要传输的信号ACK 识别数据包中的确认信息 52 建立一个TCP连接 53 结束一个TCP连接 54 用户数据报协议 UDP 传输层协议 为无确认的数据报服务 只是简单地接收和传输数据UDP比TCP传输数据快 55 TCP和UDP的公认端口 56 传输层安全 传输层介绍传输层的安全性 57 传输层安全措施 依赖于应用 程序 对安全保密的需求 以及用户自己的需要 必须的安全服务 密钥管理机密性抗抵赖完整性 身份验证授权 58 SSL TLS协议 1994年Netscape开发了SSL SecureSocketLayer 安全套接层协议 专门用于保护Web通讯在互联网上访问某些网站时也许你会注意到在浏览器窗口的下方会显示一个锁的小图标 这个小锁表示什么意思呢 它表示该网页被SSL TLS保护着 SSL TLS被设计用来使用TCP提供一个可靠的端到端安全服务 为两个通讯个体之间提供保密性和完整性 身份鉴别 59 版本和历史 1 0 不成熟2 0 基本上解决了Web通讯的安全问题Microsoft公司发布了PCT PrivateCommunicationTechnology 并在IE中支持3 0 1996年发布 增加了一些算法 修改了一些缺陷TLS1 0 TransportLayerSecurity传输层安全协议 也被称为SSL3 1 1997年IETF发布了Draft 同时 Microsoft宣布放弃PCT 与Netscape一起支持TLS1 01999年 发布RFC2246 TheTLSProtocolv1 0 2006年 发布了RFC4346 TheTLSProtocolv1 1 和RFC4366 TLSExtensions 以取代RFC2246 2008年8月发布了RFC5246 TheTLSProtocolv1 2 取代RFC3268 RFC4346和RFC4366 60 TLS体系结构 61 两个主要的协议 TLS记录协议建立在可靠的传输协议 如TCP 之上它提供连接安全性 有两个特点保密性 使用了对称加密算法完整性 使用HMAC算法用来封装高层的协议TLS握手协议客户和服务器之间相互鉴别协商加密算法和密钥它提供连接安全性 有三个特点身份鉴别 至少对一方实现鉴别 也可以是双向鉴别协商得到的共享密钥是安全的 中间人不能够知道协商过程是可靠的 62 TLS的两个重要概念 TLS连接 connection 一个连接是一个提供一种合适类型服务的传输 OSI分层的定义 TLS的连接是点对点的关系 连接是暂时的 每一个连接和一个会话关联 TLS会话 session 一个TLS会话是在客户与服务器之间的一个关联 会话由HandshakeProtocol创建 会话定义了一组可供多个连接共享的密码安全参数 会话用以避免为每一个连接提供新的安全参数所需昂贵的协商代价 63 会话状态 有多个状态与每一个会话相关联一旦一个会话建立 就存在一个读或写的当前状态在握手协议中 创建了挂起的读写状态成功的握手协议 将挂起状态转变为当前状态 64 会话状态参数 连接端点 connectionend 一个连接中的客户端或者服务器端 PRF算法 用于从主密钥推导密钥的算法 总体加密算法 bulkencryptionalgorithm 用于加密的算法 须说明算法的密钥长度 是分组还是流密码 分组密码的分组大小 MAC算法 用于消息鉴别的算法 须说明MAC算法输出的消息鉴别码的长度 压缩算法 compressionalgorithm 用于数据压缩的算法 主密钥 mastersecret 连接双方共享的48字节秘密值 客户端随机数 clientrandom 客户端提供的32字节数值 服务器端随机数 serverrandom 服务器端提供的32字节数值 65 安全参数 客户端写MAC秘密值 clientwriteMACkey 一个密钥 用来对client发送的数据进行MAC操作 服务器端写MAC秘密值 serverwriteMACkey 一个密钥 用来对server发送的数据进行MAC操作 客户端写密钥 clientwriteencryptionkey 用于client进行数据加密 server进行数据解密的对称保密密钥 服务器端写密钥 serverwriteencryptionkey 用于server进行数据加密 client进行数据解密的对称保密密钥 客户端写初始向量 clientwriteIV 服务器端写初始向量 serverwriteIV 66 TLSRecordProtocol具体操作 67 TLS记录协议中的操作 第一步 fragmentation上层消息的数据被分片成214 16384 字节大小的块 或者更小第二步 compression 可选 必须是无损压缩 如果数据增加的话 则增加部分的长度不超过1024字节 68 第三步 MAC计算 使用共享的密钥MAC write secretMAC MAC write key seq num TLSCompressed type TLSCompressed version TLSCompressed length TLSCompressed fragment 其中 MAC write secret 共享的保密密钥seq num 该消息的序列号TLSCompressed type 更高层协议用于处理本分段TLSCompressed length 压缩分段的长度TLSCompressed fragment 压缩的分段 无压缩时为明文段 可供选择的MAC算法有HMAC MD5 HMAC SHA1 HMAC SHA 256 HMAC SHA 384和HMAC SHA 512 69 第四步 加密 可供选择的加密算法 BlockCipher StreamCipher 128位的流密码RC4和分组密码3DES EDE 128位和256位密钥的AES 分组密码采用CBC模式进行计算 采用CBC 算法由cipherspec指定说明 如果是流密码算法 则不需要padding 70 TLS记录格式 内容类型 ContentType 一个8位字节 封装上层协议的类型 协议主从版本号 两个8位字节 如TLS的版本号为 3 3 压缩长度 16位 明文段的长度 71 TLS的其他协议 修改密码规范协议警报协议握手协议 72 握手消息的处理过程 73 TLS握手协议步骤 交换Hello消息 商定算法 交换随机数 对会话的重用进行检查 交换必要的密码参数 允许客户和服务器商定预主密钥 premastersecret 交换证书和密码信息 允许客户和服务器相互鉴别 从预主密钥产生一个主密钥 交换随机数 为记录层提供安全参数 允许客户与服务器验证对方得到了同样的安全参数 握手协议没有遭到攻击者的攻击 74
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年度新能源车辆货运运输服务协议
- 2025年度房地产项目开发承包合同
- 2025版清单检查项在电力行业的设备巡检与维护合同
- 2025年度家居用品全国铺货合作协议规范模板
- 2025版绿色环保墙体租赁及推广应用合同
- 2025版上海电信光纤网络升级改造合同
- 2025年特色小镇土地及房屋买卖转让协议
- 2025版教育培训机构试用期员工劳动合同模板
- 2025年度城市地下综合管廊土石方工程居间服务合同
- 2025年医疗器械代理注册与产品注册推广合同
- 急性缺血性脑卒中溶栓治疗
- NB∕T 10209-2019 风电场工程道路设计规范
- GB/T 4668-1995机织物密度的测定
- GB/T 17107-1997锻件用结构钢牌号和力学性能
- 《无人机组装与调试》课件 第一章
- 校园文化施工组织设计范本
- 轨行区作业安全专项方案
- 大地的耳朵-阅读答案
- 2021年内江市工会系统招聘笔试试题及答案解析
- 云南省食品经营许可申请表
- 校园管制刀具排查记录表
评论
0/150
提交评论