第8章Web安全要点课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《第8章Web安全要点课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Web 安全 要点 课件
- 资源描述:
-
1、12第第8章章 Web安全安全本章主要内容:本章主要内容:8.1 Web安全概述安全概述 8.2 安全套接字层(安全套接字层(SSL)和传输层安全()和传输层安全(TLS)8.3 SSL/TLS在在Web中的应用中的应用 8.4 安全电子交易(安全电子交易(SET)38.1 Web安全概述安全概述8.1.1 Web面临的安全威胁8.1.2 Web安全的实现方法48.1.1 Web面临的安全威胁面临的安全威胁l Web是一个运行于是一个运行于internet和和TCP/IP intranet 之上的基本的之上的基本的client/server应用。应用。l Web安全性涉及前面讨论的所有计算机与
2、网络的安全性内容。安全性涉及前面讨论的所有计算机与网络的安全性内容。同时还具有新的挑战。同时还具有新的挑战。uWeb具有双向性,具有双向性,Web server易于遭受来自易于遭受来自Internet的攻击。的攻击。(传统出版系统为单向,包括电子出版系统图文电视、语音(传统出版系统为单向,包括电子出版系统图文电视、语音应答、传真应答系统)应答、传真应答系统)u实现实现Web浏览、配置管理、内容发布等功能的软件异常复杂。浏览、配置管理、内容发布等功能的软件异常复杂。其中隐藏许多潜在的安全隐患。短短的其中隐藏许多潜在的安全隐患。短短的Web发展历史已经说发展历史已经说明了这一点。明了这一点。uWe
3、b通常是一个公司或机构的发布板,常常和其它计算机联通常是一个公司或机构的发布板,常常和其它计算机联系在一起。一旦系在一起。一旦Web server被攻破,可能殃及其它。被攻破,可能殃及其它。u用户往往是偶然的和未经训练的,对安全风险没有意识,更用户往往是偶然的和未经训练的,对安全风险没有意识,更没有足够的防范工具和知识。没有足够的防范工具和知识。58.1.1 Web面临的安全威胁面临的安全威胁 l Web安全威胁分类安全威胁分类u被动攻击和主动攻击被动攻击和主动攻击p被动攻击包括监听浏览器和服务器之间的数据流,被动攻击包括监听浏览器和服务器之间的数据流,以及对以及对Web站点的施加了访问控制措
4、施的信息的未站点的施加了访问控制措施的信息的未授权访问。授权访问。p主动攻击包括对其他用户的冒充、修改客户服务器主动攻击包括对其他用户的冒充、修改客户服务器之间传递的消息,以及修改之间传递的消息,以及修改Web站点的信息等。站点的信息等。u两种攻击方法是互补的,被动攻击难以检测但相对容两种攻击方法是互补的,被动攻击难以检测但相对容易预防,而主动攻击难以预防但相对容易检测。易预防,而主动攻击难以预防但相对容易检测。68.1.1 Web面临的安全威胁面临的安全威胁 l Web面临的安全威胁与对策面临的安全威胁与对策 威威 胁胁 后后 果果解决措施解决措施完整性完整性修改用户数据特洛伊木马修改内存修
5、改传输中的消息信息丢失危及服务器安全对各种攻击变得脆弱加密校验和签名机密性机密性网络上的窃听窃取服务器信息窃取客户数据网络配置信息窃取客户与服务器的会话信息信息丢失隐私泄密加密Web代理拒绝服务攻击拒绝服务攻击中断用户连接对服务器进行泛洪攻击耗尽磁盘或内存空间攻击DNS服务器网络瘫痪骚扰用户阻止用户完成正常工作难以防御认证认证冒充合法用户数据伪造出现假冒用户误信虚假信息加密技术Web威胁的比较 78.1.2 Web安全的实现方法安全的实现方法 保证保证Web应用安全首先需要保证服务器系统和客户工作站计算机系统的安全,因为系统应用安全首先需要保证服务器系统和客户工作站计算机系统的安全,因为系统安
6、全是整个应用安全性保障的基础安全是整个应用安全性保障的基础。在此基础上,在此基础上,Web应用的安全实现主要依赖于应用协议的安全性和网应用的安全实现主要依赖于应用协议的安全性和网络通信的安全性。络通信的安全性。应用协议的安全性在协议的设计和实现中体现。网络通信的安全性需要应用协议的安全性在协议的设计和实现中体现。网络通信的安全性需要依靠一些安全通信协议和机制来保护网络中的通信流量。依靠一些安全通信协议和机制来保护网络中的通信流量。安全协议是附加在安全协议是附加在TCP/IP协议中的一系列安全机制。从协议中的一系列安全机制。从TCP/IP协议栈的协议栈的角度,角度,Web安全的实现方法分为安全的
7、实现方法分为3种:基于网络层、基于传输层和基于种:基于网络层、基于传输层和基于应用层。应用层。1网络层网络层HTTPSMTPFTPTCPIP/IPSec 基于网络层实现基于网络层实现Web安全安全88.1.2 Web安全的实现方法安全的实现方法2传输层传输层基于传输层实现Web安全HTTPSMTPFTPSSL 或 TLSTCPIP98.1.2 Web安全的实现方法安全的实现方法3应用层应用层基于应用层实现Web安全 108.2 安全套接字层和传输层安全安全套接字层和传输层安全8.2.1 SSL概述 8.2.2 SSL体系结构8.2.3 SSL记录协议8.2.4 更改加密规格协议8.2.5 报警
8、协议8.2.6 握手协议 8.2.7 主密钥计算8.2.8 传输层安全(TLS)118.2.1 SSL概述概述 l 1994年,Netscape公司开发了SSL协议,用于保证Web通信协议的安全。uSSL v1:没有被真正应用。:没有被真正应用。uSSL v2:第一个成熟版本,被集成到:第一个成熟版本,被集成到Netscape的因特网的因特网相关产品中。相关产品中。uSSL v3:1996年发布,事实上的工业标准,该版本增年发布,事实上的工业标准,该版本增加了对除加了对除RSA算法以外的其他算法的支持和一些新的算法以外的其他算法的支持和一些新的安全特性,并且修改了前一个版本中存在的安全缺陷。安
9、全特性,并且修改了前一个版本中存在的安全缺陷。l Microsft公司在SSL v2之上作了一些改进,提出了一种类似的协议PCT(Private Communication Technology)。128.2.2 SSL体系结构体系结构l SSL包含两层协议:一种底层协议,即SSL记录协议;三种上层协议,即SSL握手协议、SSL更改密码规格协议和SSL报警协议。l SSL记录协议为不同的上层协议提供基本的安全服务。SSL特有的三种高层协议主要用于管理SSL的密钥交换。SSL握手协议SSL更改密码规格协议SSL报警协议HTTPSSL记录协议TCPIPSSL协议栈 138.2.2 SSL体系结构体
10、系结构uSSL会话:SSL会话是客户和服务器之间的一种关联,会话是通会话是客户和服务器之间的一种关联,会话是通过握手协议来创建的,会话定义了一个密码学意义的安全参数集过握手协议来创建的,会话定义了一个密码学意义的安全参数集合,这些参数可以在多个连接中共享,从而避免每建立一个连接合,这些参数可以在多个连接中共享,从而避免每建立一个连接都要进行的代价昂贵的重复协商都要进行的代价昂贵的重复协商u会话状态分为两种:会话状态分为两种:u待决状态:包含了当前握手协议协商好的压缩、加密和待决状态:包含了当前握手协议协商好的压缩、加密和MAC算算法,以及加解密的密钥等参数。法,以及加解密的密钥等参数。u当前操
11、作状态,包含了当前当前操作状态,包含了当前SSL记录协议正在使用的压缩、加密记录协议正在使用的压缩、加密和和MAC算法,以及加解密的密钥等参数。算法,以及加解密的密钥等参数。u“待决状态待决状态”和和“当前操作状态当前操作状态“又分别分为:又分别分为:”读状态读状态”和和“写状态写状态”分别表示有关读操作(接收)和写操作(发送)中使分别表示有关读操作(接收)和写操作(发送)中使用的参数。如读状态中包含解压缩、解密和用的参数。如读状态中包含解压缩、解密和MAC的验证算法以的验证算法以及解密密钥等;写状态中则包含压缩、加密和及解密密钥等;写状态中则包含压缩、加密和MAC生成算法以生成算法以及加密密
12、钥等。及加密密钥等。uSSL连接:一个连接是一个提供某种类型服务的传输载体一个连接是一个提供某种类型服务的传输载体(在在OSI层模型中定义层模型中定义)。对。对SSL而言,连接是一种点对点关系,同时,这而言,连接是一种点对点关系,同时,这种连接是暂时的,每一个连接和一个会话相关联。种连接是暂时的,每一个连接和一个会话相关联。148.2.3 SSL记录协议记录协议l SSL记录协议(Record Protocol)用来描述SSL信息交换过程中的记录格式,它提供了数据加密、数据完整性等功能。l 记录协议为SSL连接提供两种类型的服务u机密性:握手协议定义了一个共享密钥,该密钥可以握手协议定义了一个
13、共享密钥,该密钥可以用于用于SSL有效载荷的常规加密。有效载荷的常规加密。u消息完整性:握手协议还定义了一个用于形成消息认握手协议还定义了一个用于形成消息认证码(证码(MAC)的共享密钥。)的共享密钥。158.2.3 SSL记录协议记录协议l 记录协议的操作过程记录协议的操作过程 SSL记录协议操作步骤 16l 分段分段;每一个应用层消息被分为;每一个应用层消息被分为214字节(字节(1684字节)或更小字节)或更小l 压缩压缩:可选。如果选择,保证压缩过程不会丢失数据,如果增加了:可选。如果选择,保证压缩过程不会丢失数据,如果增加了数据长度,保证增加值不应该超过数据长度,保证增加值不应该超过
14、1024字节。字节。l 计算消息认证码(计算消息认证码(MAC):l 加密加密:使用对称密码算法。加密操作后内容长度的增加不应该超过:使用对称密码算法。加密操作后内容长度的增加不应该超过1024字节,因此全长不应该超过字节,因此全长不应该超过214+1024个字节个字节l 增加增加SSLSSL记录头记录头:记录头包含以下域:记录头包含以下域:内容类型:内容类型:8位,用于处理封装后分段的上层协议类型。位,用于处理封装后分段的上层协议类型。协议版本号:高协议版本号:高8位为主要版本号,低位为主要版本号,低8位为次要版本号。位为次要版本号。压缩后的长度:最大值为压缩后的长度:最大值为214+204
15、8178.2.3 SSL记录协议记录协议l SSL记录格式记录格式 SSL记录格式 加密数据记录头内容类型压缩长度次要版本主要版本明文(压缩可选)MAC值(0,16或20字节)188.2.4 更改密规格协议更改密规格协议(Change Cipher Spec Protocol)更改加密规格协议是使用SSL记录协议的三种SSL特定的协议之一,也是最简单的一种。它具有以下特点:u位于位于SSL记录协议之上记录协议之上uContentType=20u协议只包含单独的一条消息,该消息包含一个字节,协议只包含单独的一条消息,该消息包含一个字节,值为值为1。这条消息的唯一的作用是将延迟状态设置为当。这条消
16、息的唯一的作用是将延迟状态设置为当前状态,更新在当前连接中应用的密码机制。前状态,更新在当前连接中应用的密码机制。198.2.5 报警协议报警协议报警协议用于向对等实体传送SSL相关的报警信息。与其他使用SSL协议的应用程序一样,报警信息按照当前状态所规定的处理机制进行压缩和加密。它具有以下特点:u位于位于SSL记录协议之上记录协议之上uContentType=21u协议的每条消息包含两个字节。第一个字节可以取值协议的每条消息包含两个字节。第一个字节可以取值为警告(为警告(Warning,代码为,代码为1)或者致命()或者致命(Fatal,代码,代码为为2),用以表示该消息的严重程度。如果严重
17、程度是),用以表示该消息的严重程度。如果严重程度是致命的,致命的,SSL将立刻中止该连接,该会话的其他连接可将立刻中止该连接,该会话的其他连接可以继续,但是本次会话不会允许建立新的连接;第二以继续,但是本次会话不会允许建立新的连接;第二个字节为警告代码,用于指明具体的警告。警告代码个字节为警告代码,用于指明具体的警告。警告代码及其含义参见教材。及其含义参见教材。208.2.6 握手协议握手协议l 握手协议是SSL中最为复杂的一部分内容,这一协议允许客户和服务器进行相互的身份认证;同时,客户和服务器还通过该协议进行协商,以决定在一次会话中所使用的加密算法、MAC算法以及用于保护SSL记录数据的加
18、密密钥。l 握手协议由一些客户和服务器之间交换的消息组成,每条消息包含三个域:u消息类型(1字节):表示本条消息的类型。表示本条消息的类型。u消息长度(3字节):以字节计数的消息长度。以字节计数的消息长度。u消息内容(0字节):与本条消息相关的参数。与本条消息相关的参数。218.2.6 握手协议握手协议消息类型消息类型参参 数数hello_requestNullclient_hello版本、随机数、会话ID、密码套件、压缩方法server_hello版本、随机数、会话ID、密码套件、压缩方法CertificateX.509 v3证书链senver_key_exchange参数、签名cerfif
19、icate_request类型、CAServer_doneNullCertificate_verify签名client_key_exchange参数、签名finishedhash值SSL握手协议消息类型 228.2.6 握手协议握手协议l 握手协议在任何上层应用程序数据传输之前运行。包括4个阶段:u客户端发起连接客户端发起连接u服务器认证和密服务器认证和密钥交换钥交换u客户认证和密钥客户认证和密钥交换交换u结束结束 握手过程 238.2.7 主密钥计算主密钥计算l 在SSL中,主密钥从预备主密钥产生出来。u在在RSA或或Fortezza加密技术中,预备主密钥是由客户端生成密钥,然加密技术中,预
20、备主密钥是由客户端生成密钥,然后通过后通过client_key_exchange消息发送给服务器。消息发送给服务器。u在在Diffie-Hellman加密技术中,预备密钥是由客户和服务器双方使用加密技术中,预备密钥是由客户和服务器双方使用对方的对方的Diffie-Hellman公钥来生成。公钥来生成。l 当生成了一个预备主密钥并且双方都知道它以后,就可以计算出主密钥了。客户和服务器都是用下面的公式计算主密钥:master_secret=MD5(pre_master_secret|SHA(A|pre_master_secret|ClientHello.random|ServerHello.ran
21、dom)|MD5(pre_master_secret|SHA(BB|pre_master_secret|ClientHello.random|ServerHello.random)|MD5(pre_master_secret|SHA(CCC|pre_master_secret|ClientHello.random|ServerHello.random)其中,ClientHello.random和ServerHello.random是在初始的hello消息中交换的两个临时值。24SSL应用中的安全问题应用中的安全问题l Client系统系统、Server系统系统、Keys和和Applicatio
展开阅读全文