WAF-HTTPS [Encrypted Alert]断开连接

本文涉及的产品
Web应用防火墙 3.0,每月20元额度 3个月
简介: WAF-HTTPS [Encrypted Alert]断开连接

问题背景

使用阿里云的WAF时, HTTPS访问,
偶尔会出现 SSL 建立连接失败
抓包发现 WAF返回了Encrypted Alert ,然后发了FIN包结束
内容里头序号 182~197的包都有异常
image.png

问题分析

问题方向确定

问题描述为:抓包发现 WAF返回了Encrypted Alert ,然后发了FIN包结束
分析FIN包是TCP链接中断开时使用的;如图:
image.png
确定该问题不是用户描述的SSL建立链接失败;而是断开链接有问题。

分析报文

定位用户描述的报文,如下确实有看到描述的报文,但是该分析方式无法有效的判断问题:
image.png
使用wireshark功能 Follow TCP Stream(追踪TCP流)观察条有问题的流报文
可以看到:
A、其中Encrypted Alert与FIN是同时从服务端发送的
B、Encrypted Alert的报文与上一条报文的间隔时间为119.89S
C、No.193的报文客户端马上发送了ACK
D、No.194过了14.948客户端发送了一个RST,ACK报文,重置链接
E、No.181与No.191直接没有任何报文通信

问题定位

总所周知WAF是一个Web应用层面的防护产品,目前WAF的实现访问是使用Tengine做方向代理。即也会有会话保持时长限制;
而WAF的会话保持时长为120S,与No.181与No.191直接的间隔时间非常相近;建议用户根据链接

附录

关于SSL-Encrypted Alert提示

SSL通信在断开连接时均为发送Encrypted Alert信息给客户端告知要关闭ssl会话了,同步会发生FIN,ACK报文从TCP层面断开链接:

Since we are already in an encrypted connection, the only way to really know what is being sent within packets is to make Wireshark or similar tools aware of the keys used in the transmission. Even though this is possible, I think for the purpose of this analysis it is enough to know that the client sends an alert message when the connection is asked to be closed actively by the client or server. The type of this Alert message should be CloseNotify (type 0), but we won’t be able to see it from the raw data. In this case, the client is the sender of the following Alert message:

Secure Sockets Layer
    TLSv1.2 Record Layer: Encrypted Alert
        Content Type: Alert (21)
        Version: TLS 1.2 (0x0303)
        Length: 26
        Alert Message: Encrypted Alert

关于会话时时间

proxy_read_timeout 60s;
 默认:60s
 配在:http中、server中、location中
  在将请求发送给upstream的server后,后端server就会回传数据,这个时间是两次收取数据的时间差,不是整个的接收时间。比如说负载大、网络卡,在第1次收到请求的数据时断了,然后过了60s后才收到后面的数据,这两个时间差(其实就是两次read的时间差)超过了设置的60s,tengine(nginx)就会超时报错,我当前走的是默认设置60s。
  Defines a timeout for reading a response from the proxied server. The timeout is set only between two successive read operations, not for the transmission of the whole response. If the proxied server does not transmit anything within this time, the connection is closed.
目录
相关文章
|
4月前
|
安全 网络协议 Linux
Linux网络应用层协议展示:HTTP与HTTPS
此外,必须注意,从HTTP迁移到HTTPS是一项重要且必要的任务,因为这不仅关乎用户信息的安全,也有利于你的网站评级和粉丝的信心。在网络世界中,信息的安全就是一切,选择HTTPS,让您的网站更加安全,使您的用户满意,也使您感到满意。
116 18
|
4月前
|
网络安全 开发者
如何解决HTTPS协议在WordPress升级后对网站不兼容的问题
以上就是解决WordPress升级后HTTPS协议对网站的不兼容问题的方法。希望能把这个棘手的问题看成是学校的管理问题一样来应对,将复杂的技术问题变得更加有趣和形象,并寻觅出解决问题的方式。希望你的网站能在新的学期得到更好的发展!
104 19
|
4月前
|
JSON 安全 网络协议
HTTP/HTTPS协议(请求响应模型、状态码)
本文简要介绍了HTTP与HTTPS协议的基础知识。HTTP是一种无状态的超文本传输协议,基于TCP/IP,常用80端口,通过请求-响应模型实现客户端与服务器间的通信;HTTPS为HTTP的安全版本,基于SSL/TLS加密技术,使用443端口,确保数据传输的安全性。文中还详细描述了HTTP请求方法(如GET、POST)、请求与响应头字段、状态码分类及意义,并对比了两者在请求-响应模型中的安全性差异。
335 20
|
4月前
|
安全 网络协议 算法
HTTP/HTTPS与SOCKS5协议在隧道代理中的兼容性设计解析
本文系统探讨了构建企业级双协议隧道代理系统的挑战与实现。首先对比HTTP/HTTPS和SOCKS5协议特性,分析其在工作模型、连接管理和加密方式上的差异。接着提出兼容性架构设计,包括双协议接入层与统一隧道内核,通过协议识别模块和分层设计实现高效转换。关键技术部分深入解析协议转换引擎、连接管理策略及加密传输方案,并从性能优化、安全增强到典型应用场景全面展开。最后指出未来发展趋势将更高效、安全与智能。
153 1
|
5月前
|
安全 网络安全 数据安全/隐私保护
HTTP 与 HTTPS 协议及 SSL 证书解析-http和https到底有什么区别?-优雅草卓伊凡
HTTP 与 HTTPS 协议及 SSL 证书解析-http和https到底有什么区别?-优雅草卓伊凡
258 3
|
7月前
|
网络协议 安全 网络安全
HTTP与HTTPS协议入门
HTTP协议是互联网的基石,HTTPS则是其安全版本。HTTP基于TCP/IP协议,属于应用层协议,不涉及数据包传输细节,主要规定客户端与服务器的通信格式,默认端口为80。
210 25
HTTP与HTTPS协议入门
|
12月前
|
监控 安全 搜索推荐
设置 HTTPS 协议以确保数据传输的安全性
设置 HTTPS 协议以确保数据传输的安全性
|
9月前
|
网络协议 安全 网络安全
探索网络模型与协议:从OSI到HTTPs的原理解析
OSI七层网络模型和TCP/IP四层模型是理解和设计计算机网络的框架。OSI模型包括物理层、数据链路层、网络层、传输层、会话层、表示层和应用层,而TCP/IP模型则简化为链路层、网络层、传输层和 HTTPS协议基于HTTP并通过TLS/SSL加密数据,确保安全传输。其连接过程涉及TCP三次握手、SSL证书验证、对称密钥交换等步骤,以保障通信的安全性和完整性。数字信封技术使用非对称加密和数字证书确保数据的机密性和身份认证。 浏览器通过Https访问网站的过程包括输入网址、DNS解析、建立TCP连接、发送HTTPS请求、接收响应、验证证书和解析网页内容等步骤,确保用户与服务器之间的安全通信。
465 3
|
10月前
|
安全 搜索推荐 网络安全
HTTPS协议是**一种通过计算机网络进行安全通信的传输协议
HTTPS协议是**一种通过计算机网络进行安全通信的传输协议
215 11
|
10月前
|
缓存 安全 网络协议
HTTPS协议的历史发展
HTTPS协议的历史发展
368 8