我已经阅读了所有这些,但不完全确定我明白发生了什么。
另外,这是一个,两个还是三个问题?
它看起来像三个,但这一切都非常混乱:
Beast CRIME Beach
似乎解决scheme可能是简单地不使用HTTPSstream量压缩(或者只是其中之一?)
我使用GZIP压缩。 没关系,还是问题的一部分?
我也使用Ubuntu 12.04 LTS
另外,是非HTTPSstream量好吗?
所以读完所有的理论后,我只想要解决scheme。 我认为这可能是解决办法,但有人可以确认我已经了解了一切,所以我不太可能遭受这种攻击:
SOLUTION: Use GZIP compression on HTTP traffic, but don't use any compression on HTTPS traffic
CRIME和BREACH(注意里面有一个“R”)使用TLS级别压缩来“泄露”有关encryption数据的信息。 很快:如果你可以控制部分数据stream并发送不同的数据,当你发送的数据与你不控制的那部分数据stream相同时,输出将会变小(因为压缩会使它们去重复)和你会知道你不能控制的部分的内容。
BEAST利用TLS 1.0中的CBCencryption漏洞。 这大多是不切实际的,但是一个示范性的利用已经被创造出来,并且确实有效。 有两个潜在的修复,禁用CBCencryption(其中包括TLS基本上所有“好”的encryption,让你RC4有它自己的漏洞,包括泄漏的明文)或禁用TLS 1.0,只使用TLS 1.1(或更新,即1.2)。
这些攻击大多是不切实际的,但如果您处于高度安全的环境(如PCIDSS或EHR),则需要禁用TLS压缩和TLS 1.0 CBC Encyrption。 TLS压缩与内容压缩完全分离(即Deflate和GZip)。 截至最新统计数据显示,约2/3的HTTPS服务器对BEAST“脆弱”,约为CRIME的1/6。 保持事情的透视,1/3是脆弱的,因为它们运行的是一个愚蠢的configuration,不能在几乎任何级别上妥善保护数据。
编辑:
回应您的意见:通常销售为“SSL证书”的实际上是x509证书,与协议使用SSL无关。 当你得到一个证书,确保它是2048或4096位(前者是很常见的)RSA或384 +位ECDSA。 证书使用非对称encryption,这是非常慢的 – 因为这个原因,他们不用于encryption通过SSL / TLS传输的数据。 它们只用于同意stream密码使用的密钥。
常见的stream密码是RSA,RC4,Camellia和DES / 3DES。 这是你进入64位,128位,256位encryption的地方 – 这是stream密码的关键尺寸。 从SysAdmin的观点来看,RSA是被广泛支持的密码的“最好的”,但是在上面的BEAST攻击中,它受到了CBC问题的困扰。 RC4“泄漏”明文。 山茶花是相当好的,但没有得到普遍支持,所以你不能依靠它在公共环境。 DES / 3DES被破坏,不应再被使用。
从本质上说,你同样是在同样的问题上苦苦挣扎:普遍支持和function安全之间的select。 你现在不能有两个。 在我看来,禁用TLS压缩是一件不容易的事情,因为内容压缩弥补了大部分差异 – 因此“解决”问题的代价很小。 但stream密码的select是非常多的:用RC4或AES实现有缺陷的安全性,或者需要TLS 1.1+,并把你的网站打破了一半的互联网。
脚注:不要担心,当量子处理器达到128位以上时,这似乎就像溢出的牛奶,并使“SSL证书”破解琐碎。 我们可能距离它不到10年,目前在4位。