背景

  由于服务器端的重新密钥协商的开销至少是客户端的10倍,因此攻击者可利用这个过程向服务器发起拒绝服务攻击。OpenSSL 1.0.2及以前版本受影响。

方法

  使用OpenSSL(linux系统基本都自带)连接服务器进行测试:

    - openssl s_client -connect ip:port
    - HEAD / HTTP/1.0
    - R

示例

  服务器443端口开启重协商,使用openssl s_client -connect 172.31.0.22:443 连接测试(删除了部分证书信息):

[root@localhost ~]# openssl s_client -connect 172.31.0.22:443
CONNECTED(00000003)
depth=0 CN = HTTPS-Self-Signed-Certificate
verify error:num=18:self signed certificate
verify return:1
depth=0 CN = HTTPS-Self-Signed-Certificate
verify return:1
---
Certificate chain0 s:/CN=HTTPS-Self-Signed-Certificatei:/CN=HTTPS-Self-Signed-Certificate
---
Server certificate
-----BEGIN CERTIFICATE-----
......
-----END CERTIFICATE-----
subject=/CN=HTTPS-Self-Signed-Certificate
issuer=/CN=HTTPS-Self-Signed-Certificate
---
No client certificate CA names sent
Server Temp Key: DH, 1024 bits
---
SSL handshake has read 1254 bytes and written 463 bytes
---
New, TLSv1/SSLv3, Cipher is DHE-RSA-AES256-SHA
Server public key is 1024 bit
Secure Renegotiation IS supported
Compression: NONE
Expansion: NONE
SSL-Session:Protocol  : TLSv1.2Cipher    : DHE-RSA-AES256-SHASession-ID: AAF98A92D700189C29EEFE766769E6E5641BAC6A9AB96BC7D1302AE79D21CA06Session-ID-ctx: Master-Key: 36FC13A9ADBC82EB9E0CC60F9981E2A3D6A2BEC093A0415AFB2A843880174709BB1A87946AA698D95DA3788C72D621CBKey-Arg   : NoneKrb5 Principal: NonePSK identity: NonePSK identity hint: NoneTLS session ticket lifetime hint: 3600 (seconds)TLS session ticket:Start Time: 1567604880Timeout   : 300 (sec)Verify return code: 18 (self signed certificate)
---
HEAD / HTTP/1.0
R
RENEGOTIATING
140432695093152:error:14094153:SSL routines:SSL3_READ_BYTES:no renegotiation:s3_pkt.c:1242:

 SSL握手完成后,输入HEAD / HTTP/1.0,然后回车,输入‘R’触发重协商,此时服务器报错并断开连接:

1
140432695093152:error:14094153:SSL routines:SSL3_READ_BYTES:no renegotiation:s3_pkt.c:1242:

说明服务器重协商功能被关闭。

服务器4443端口开启重协商,使用openssl s_client -connect 172.31.0.22:4443 连接测试(删除了部分证书信息):

[root@localhost ~]# openssl s_client -connect 172.31.0.22:4443
CONNECTED(00000003)
depth=0 CN = HTTPS-Self-Signed-Certificate
verify error:num=18:self signed certificate
verify return:1
depth=0 CN = HTTPS-Self-Signed-Certificate
verify return:1
---
Certificate chain0 s:/CN=HTTPS-Self-Signed-Certificatei:/CN=HTTPS-Self-Signed-Certificate
---
Server certificate
-----BEGIN CERTIFICATE-----
......
-----END CERTIFICATE-----
subject=/CN=HTTPS-Self-Signed-Certificate
issuer=/CN=HTTPS-Self-Signed-Certificate
---
No client certificate CA names sent
---
SSL handshake has read 845 bytes and written 463 bytes
---
New, TLSv1/SSLv3, Cipher is AES256-SHA
Server public key is 1024 bit
Secure Renegotiation IS supported
Compression: NONE
Expansion: NONE
SSL-Session:Protocol  : TLSv1.2Cipher    : AES256-SHASession-ID: 6D0DF6EFC8491C9DEEB0161B85A47C101CF5DA9A9CD4EAA4EFCEEF46571A2A2FSession-ID-ctx: Master-Key: B3BBD776EA24230B37E7EF4B2EAF02D6D66185F12D3C87640308FB1996E0BDA4A94CDB35455D0E98A5C34AAAF6EA1C7FKey-Arg   : NoneKrb5 Principal: NonePSK identity: NonePSK identity hint: NoneTLS session ticket lifetime hint: 3600 (seconds)TLS session ticket:......Start Time: 1567605522Timeout   : 300 (sec)Verify return code: 18 (self signed certificate)
---
HEAD / HTTP/1.0
R
RENEGOTIATING
depth=0 CN = HTTPS-Self-Signed-Certificate
verify error:num=18:self signed certificate
verify return:1
depth=0 CN = HTTPS-Self-Signed-Certificate
verify return:1
HEAD / HTTP/1.0HTTP/1.1 400 Bad request
Date: Wed, 04 Sep 2019 05:43:05
Content-Length: 0

 使用和上方所述相同的操作,发送‘R’触发重协商,可以看到重协商成功,连接正常,此时再次发送HEAD / HTTP/1.0 ,敲两次回车,得到服务器响应400。说明服务器重协商功能开启。

总结

  通过OpenSSL连接服务器测试重协商功能,如果服务器重协商功能关闭则终端发送‘R’后会报错并断开连接。

参考资料

  https://mailarchive.ietf.org/arch/msg/tls/wdg46VE_jkYBbgJ5yE4P9nQ-8IU

  https://blog.ivanristic.com/2009/12/testing-for-ssl-renegotiation.html

检测服务器是否开启重协商功能(用于CVE-2011-1473漏洞检测)相关推荐

  1. RocketMQ TLS Client-initiated 重协商攻击(CVE-2011-1473)

    环境信息 rocketmq:4.8.0 docker镜像 foxiswho/rocketmq:4.8.0 安全漏洞 服务器支持 TLS Client-initiated 重协商攻击(CVE-2011- ...

  2. 服务器支持 TLS Client-initiated 重协商攻击(CVE-2011-1473) 修复记录

    服务器支持 TLS Client-initiated 重协商攻击(CVE-2011-1473) 修复记录 根据漏洞扫描反馈的结果,发现存在"服务器支持 TLS Client-initiate ...

  3. tls 禁用重协商_SSL/TLS高危不安全重新协商漏洞

    关于网站或者应用当中的SSL/TLS协议所存在的不安全漏洞,相应的发布了一篇不安全重新协商漏洞的内容.小凯seo博客将这篇内容转载过来和朋友们分享一下,题目是<SSL/TLS高危不安全重新协商漏 ...

  4. shell脚本:检测服务器存活状态/80端口/502状态码

    文章目录 检测服务器是否宕机 检测web服务(80端口)是否正常 检测http502状态码 检测服务器是否宕机 需求:ping一台需要被检测的服务器,如果丢包率为100%,则表示机器出问题了,随后发送 ...

  5. [漏洞检测]Proxpy Web Scan设计与实现(未完待续)

    Proxpy Web Scan设计与实现 1.简介: Proxpy Web Scan是基于开源的python漏洞扫描框架wapiti改造的web漏洞扫描器,其主要解决以下几个问题而生: (1).当前互 ...

  6. 漏洞检测方法如何选?详解源代码与二进制SCA检测原理

    摘要:本文探讨的是SCA具体的检测原理,源代码SCA检测和二进制SCA检测有哪些相同点和不同点,在进行安全审计.漏洞检测上各自又有什么样的优势和适用场景. 本文分享自华为云社区<源代码与二进制文 ...

  7. 论文阅读笔记——基于CNN-GAP可解释性模型的软件源码漏洞检测方法

    本论文相关内容 论文下载地址--Engineering Village 论文阅读笔记--基于CNN-GAP可解释性模型的软件源码漏洞检测方法 文章目录 本论文相关内容 前言 基于CNN-GAP可解释性 ...

  8. ffmpeg推流时与服务器断开后的自动重连功能的实现

    当我们使用ffmpeg进行视频推流的时候,流媒体服务器与推流终端一直连接的时候,推流是成功的,但是如果服务器重启,就会出现推流一直失败的问题,av_interleaved_write_frame返回值 ...

  9. 远程登录另一个mysql 数据库_Ubuntu中开启MySQL远程访问功能,并将另一个数据库服务器中的数据迁移到新的服务器中...

    技术交流群:233513714 一.开启MyS远程访问功能 1.进入服务器输入netstat -an | grep 3306确认3306是否对外开放,MySQL默认状态下是不对外开放访问功能的.输入以 ...

最新文章

  1. 非监督异常点检测算法总结——没有想到矩阵分解和编码解码器也是一种思路...
  2. mysql端口测试报错_MySQL报错:2003 - Can't connect to MySQL server on 'localhost' (10038)
  3. 任务管理平台_软件品质评测系统任务分发管理平台
  4. 2018 A Sparse Topic Model for Extracting Aspect-Specific Summaries from Online Reviews 稀疏主题模型学习笔记
  5. python打开伪终端_0xB:伪终端
  6. 求生之路2正版服务器ip,求生之路2怎么看ip地址
  7. 鸿蒙2秒开机官方,两款荣耀智慧屏发布:鸿蒙OS首秀2秒开机,安卓应用迁移不难...
  8. java枚举详解_Java枚举的使用详解
  9. xmapp下mysql的密码更改
  10. python foo函数_Python函数基础
  11. 守望先锋外挂(OWG)透视原理分析
  12. 中国MES市场主流厂商及产品分析
  13. flask项目中出现Error: While importing ‘manager‘, an ImportError was raised.
  14. 计算机视觉外语论文翻译,图像处理-毕设论文外文翻译(翻译+原文)
  15. 使用Javascript无限添加QQ好友原理解析
  16. 定时器(Timer)
  17. 秋招面经第二弹:百度一面-大数据开发工程师
  18. 开源一个中国象棋 alpha zero 程序
  19. ESC, ESP, VSC 电子稳定系统 与 ABS
  20. 字节、字、位、比特的关系

热门文章

  1. 什么叫事务隔离级别呢?
  2. 荣耀play 3鸿蒙,无指纹+720P卖999元,荣耀Play3被喷性价比太低,其实你们都错了...
  3. 绿标认证域名怎么操作的,需要提供什么
  4. 关于日常开发Java8流处理max()随笔
  5. 7-3 计算银行存款的本息 (5分)
  6. 1. 饶明新 校公开课六年级下册《数学广角-鸽巢问题》照片
  7. 三国佚事——巴蜀之危
  8. 百度地图行车轨迹调整速度后小车鬼畜跑动的问题解决
  9. Dbeaver未找到mysql驱动文件_dbeaver驱动问题解决方案
  10. 读《华为HMS生态与应用开发实战》