2017中科大信息安全课程总结一

https部分

1.https原理

  • 1.客户端(浏览器)的“证书管理器”里有“受信任的根证书颁发机构”,即对应的CA和服务器站点的证书。
  • 2.客户端向服务器端发送加密请求(如https://www.baidu.com)。
  • 3.服务器收到请求后,需要向客户端验证自己的身份。于是将自己的公钥发送给CA,CA用自己的私钥对服务器的公钥加密,生成数字签名。CA再将服务器的公钥、数字签名和服务器的一些其它消息整合在一起,生成证书,再将证书返回给服务器。
  • 4.客户端对服务器发送过来的证书,用CA的公钥解密,可得服务器的公钥和一些服务器的相关信息,与浏览器中的服务器站点的证书进行匹配。若匹配成功,则表明验证成功。
  • 5.验证成功后,浏览器将网站公钥加密的一个随机密码数发送给网站服务器,网站服务器通过私钥解密得到随机密码数,这个随机密码数就是对称加密的密钥,此步骤实现了密码协商的过程。
  • 6.浏览器和网站的服务器就可以通过这个密码进行加密通信。

2.SSL Spoofing(https协议降级)

攻击能够实现的原因:实现和实现SSL/TLS协议出现了漏洞,导致攻击者可以攻击一些旧版本的SSL/TLS协议。当SSL/TLS加密协议漏洞爆出来之后,最新版本的SSL/TLS协议修复了已知漏洞,但旧版本的加密协议却变得不安全了。

https降级协议

首先我们知道,SSL/TLS协议通过握手来确定通信信息,其中握手双方要统一加密协议版本。

在握手过程中确认加密协议版本:

  • 1.客户端发送一个数据包ClientHello,这个数据包中保存着客户端支持的加密协议版本
  • 2.服务器收到这个ClientHello数据包,查看里面客户端支持的加密协议版本,然后匹配服务器自己支持的加密协议版本,从而确认双方应该用的加密协议版本。
  • 3.服务器发送ServerHello数据包给客户端,告诉客户端要使用什么加密协议版本。

但在上述过程中,如果客户端发送给服务器的ClientHello数据包中说自己仅支持某个有漏洞的旧版本加密协议(比如仅支持SSLv3.0),服务器两种可能:

  • 1.服务器支持多版本,认可使用有漏洞的旧版本协议
  • 2.服务器不支持有漏洞的旧版本,拒绝客户端的这次请求

对于情况2,攻击者无能为力。
对于情况1,攻击者能作为中间人控制被攻击者的浏览器发起漏洞版本的https请求,那虽然攻击者听到的也是加密过后的数据,但因为加密协议有漏洞,可以解密这些数据,所以数据和明文传输没有什么差别。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值