nginx TLS 重放和禁用压缩
重放
TLS 通道本身使用 MAC(消息验证代码)来防止重放攻击
https://zh.wikipedia.org/wiki/傳輸層安全性協定
TLS 1.3 0-RTT
nginx 1.15.3+ 中 提供了 ssl_early_data 来禁用TLS1.3 early_data . 默认关闭. 默认情况下 Nginx 因为安全原因,没有开启 TLS 1.3 0-RTT,可以通过添加 ssl_early_data on; 指令开启 0-RTT.
如需打开需要配置
1 | ssl_early_data on; |
http://nginx.org/en/docs/http/ngx_http_ssl_module.html
https://blog.cloudflare.com/introducing-0-rtt/
https://medium.com/@hnasr/the-danger-of-0-rtt-a815d2b99ac6
压缩
CRIME 攻击 : 可以针对 SSL/TLS 协议和 SPDY 协议执行 CRIME 攻击.利用SSL/TLS协议和SPDY协议的压缩机制中的弱点来解密网站设置的HTTPS cookie。然后,这会迫使用户的浏览器将 HTTPS 请求转发到恶意网站并在执行攻击时访问该网站。之后,攻击者控制新请求的路径。
影响
TLS 1.0 应用程序使用 TLS 压缩、谷歌的 SPDY 协议、支持 SPDY 的旧版 Mozilla Firefox 以及支持 TLS 和 SPDY 的旧版 Google Chrome。
nginx
nginx 发版记录中 1.3.2 起禁用所有 openssl 压缩
openssl 1.0.0
nginx 1.1.6
起禁用 ssl 压缩
https://mailman.nginx.org/pipermail/nginx/2012-September/035600.html
nginx TLS 重放和禁用压缩
https://beixiu.net/nginx-tls-replay-and-compression-disable/