GZIP 压缩与 BREACH/CRIME 攻击有关的 HTTPS 流量安全问题?

Posted

技术标签:

【中文标题】GZIP 压缩与 BREACH/CRIME 攻击有关的 HTTPS 流量安全问题?【英文标题】:GZIP compression on HTTPS traffic security issue with BREACH/CRIME attacK? 【发布时间】:2015-07-27 19:35:56 【问题描述】:

例如,当我查看 https://www.facebook.com 的 HTTP 标头时,我发现它们使用了 GZIP 压缩 Content-Encoding: gzip 和 SSL/TLS 流量。

由于 BREACH/CRIME 攻击,这不是一个坏主意吗?

curl -I -H 'Accept-Encoding: gzip,deflate' https://www.facebook.com
HTTP/1.1 200 OK
Pragma: no-cache
Cache-Control: private, no-cache, no-store, must-revalidate
Expires: Sat, 01 Jan 2000 00:00:00 GMT
Strict-Transport-Security: max-age=15552000; preload
Vary: Accept-Encoding
Content-Encoding: gzip
Content-Type: text/html
Date: Fri, 15 May 2015 18:56:11 GMT
Connection: keep-alive
Content-Length: 15101

根据http://en.wikipedia.org/wiki/BREACH_%28security_exploit%29

【问题讨论】:

我建议阅读community.qualys.com/blogs/securitylabs/2013/08/07/… 【参考方案1】:

当您使用 TLS 加 HTTP 压缩(即 gzip)时,存在 BREACH。但它也需要:

    响应正文中有用的秘密信息 攻击者必须能够使用请求参数将值注入响应正文 无随机响应填充

评论:

    黑客追求信用卡号、密码、CSRF 令牌,并且可能不与你的 GF 聊天,但你永远不知道。

    看起来很多输入响应(例如顶部的搜索栏)是带外响应,即响应通过 AJAX,因此不会影响其他响应。

    Facebook 可能会补充他们的回应,但我还没有深入研究。

【讨论】:

以上是关于GZIP 压缩与 BREACH/CRIME 攻击有关的 HTTPS 流量安全问题?的主要内容,如果未能解决你的问题,请参考以下文章

字符串表编码与 gzip 压缩

gzip压缩命令

GZIP 与zip区别

java GZIP压缩与解压缩

nginx优化--gzip压缩与expire浏览器缓存

再次总结一下压缩与解压缩