SSL简介及其压力测试THC-SSL-DOS工具介绍

SSL简介

安全套接层(Secure Sockets Layer,SSL)协议是一个安全传输、保证数据完整的安全协议,之后的传输层安全(Transport Layer Security,TLS)是SSL的非专有版本。SSL协议结合了对称密码技术和公钥密码技术,提供秘密性、完整性、认证性服务。
它处于应用层与传输层之间,是一个二层协议,其协议栈如下表所示:

SSL握手协议SSL修改密文协议SSL告警协议HTTP
SSL记录协议
TCP
IP
而其中四个主要协议的基本作用如下:
  1. SSL记录协议
    为高层协议提供基本的安全服务,提供实际的数据传输。该协议会把经由它的数据流切成一个个的小片段,并且对每个片段都进行加密传输,而对于接收方则是进行解密与验证;
  2. SSL握手协议
    该协议负责协商客户端与服务器的会话密钥,即通过前期的握手过程来商定一个双方后续会话采用的加密密钥,SSL记录协议用该密钥加密双方的通信信息;
  3. SSL修改密文协议
    在SSL协议中,同一个会话密钥不允许长时间使用,所以客户端与服务器每隔一段时间都需要重现协商一个会话密钥。而该协议由一条消息组成,这条消息可以由任意一方发送,用来提醒对方修改特定的状态;
  4. SSL告警协议
    本协议主要用来传输SSL连接的相关出错信息等。

SSL基本的工作流程

SSL协议的基本流程可以抽象成如下6个基本步骤:
SSL基本流程

  1. 客户端向服务器发送请求信息,用来请求协商SSL版本号、询问选择何种对称加密算法等,从而开启了整个会话连接;
  2. 服务器收到请求后,会返回给客户端所请求的信息,包含确定的SSL版本号与对称加密算法,还有用某个CA中心私钥加密后的服务器证书,证书中包含服务器的RSA公钥
  3. 客户端对照自己的可信CA表,判断服务器证书是否在可信CA表中。若在,则使用CA表中的公钥进行解密,得到服务器公钥,若不在,则终止通信;
  4. 接着客户端会随机产生一个对称密钥,用于后续的通信加密,并使用服务器公钥加密发送给服务器;
  5. 此后,双发互相确认使用客户端发送的对称密钥进行会话加密;确认完成后,再次互相确认双方完成了握手过程;
  6. 之后,双方的会话便由指定的对称密码算法以及指定密钥进行加密通信了。

THC-SSL-DOS工具介绍

THC-SSL-DOS是一个验证SSL性能的工具。建立安全的SSL连接需要服务器上的处理能力比客户机上多15倍。THC-SSL-DOS利用这种不对称特性,重载服务器并将其从Internet上断开。这个问题影响到当前所有SSL实现。这种攻击进一步利用SSL安全重新协商特性,通过单个TCP连接触发数千次重新协商。
简单来讲,就是利用SSL协议的不足(服务器消耗过大),来重复发起无效连接,这样便会大量消耗服务器的资源,最终达到DOS(拒绝服务攻击)的目的。
kali-linux提供了这一工具,具体的介绍见https://tools.kali.org/stress-testing/thc-ssl-dos.
其用法为:
thc-ssl-dos -l 100 192.168.1.208 443 --accept
表示建立100条连接,来洪泛攻击指定IP(192.168.1.208) 与端口 (443)

THC-SSL-DOS工具实例

现在我们有一台操作机192.168.1.2与一台目标机192.168.1.3.

  1. 首先,在操作机上打开THC-SSL-DOS工具:
    打开工具
  2. 切换到目标机,打开wireshark进行抓包检测:
    在这里插入图片描述
  3. 在操作机对目标机发起攻击:
    发起攻击
  4. 此时切换回目标机查看捕获的数据包:
    数据包
    可以看到,当客户端连接到服务端正常握手后,客户端重复发起握手,不断进行循环攻击
    而此时目标机的CPU资源也被抢占一空:
    CPU
    通过命令行执行指令netstat -an可以看到连接状态中存在大量攻击机和目标机的连接重复连接

总结:SSL的优劣势

SSL协议的优点,通过上面的基本原理可以知道,它引入了认证机制以及通信加密机制,总结来讲可以是下面几点:

  1. 机密性
    即连接是私有的。在初始握手阶段,双方建立对称密钥后,信息即用该密钥加密。
  2. 完整性
    在信息中嵌入信息鉴别码(MAC)来保证信息的完整性。其中使用了安全哈希函数(例如SHA和MD5)来进行MAC计算。
  3. 鉴别
    在握手阶段,客户对服务器用公开密钥来进行身份认证。

SSL协议的不足,主要体现在其对资源的消耗上。
通过其压力测试工具所导致的结果,我们可以知道它会给服务器带来较多的资源消耗,因为SSL要求对每个数据进行加密和解密操作,因而在带来高性能的同时,对系统也要求高资源开销。
至于如何防范针对SSL的洪泛攻击,就类似于SYN FLOOD一样,只能从外部入手,通过一些辨别机制或IP路由限制等来防范,因为这种攻击本质上是协议本身带来的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值