对HTTPS的潜在攻击以及如何防御

一半的站点使用HTTPS ,并且其数量正在稳定增长。 该协议降低了流量拦截的风险,但并不排除攻击尝试本身。 关于其中的一些-POODLE,BEAST,DROWN等-以及保护方法,我们将在材料中说明。


/ Flickr / Sven Graeme / CC BY-SA

泡菜


2014年,第一次出现了POODLE攻击。 安全专家BodoMöller与Google的同事发现了SSL 3.0协议中的漏洞。

其实质如下:黑客强迫客户端建立SSL 3.0连接,模拟断开的通信。 然后,它以CBC模式加密的流量中搜索特殊消息标签。 使用一系列假查询,攻击者可以重建他感兴趣的数据的内容,例如cookie。

SSL 3.0是过时的协议。 但是其安全性问题仍然很重要。 客户端使用它来避免服务器兼容性问题。 根据一些报道,在10万个最受欢迎的网站中,几乎有7% 仍支持SSL 3.0 。 还对POODLE进行了修改,其目的是使用更现代的TLS 1.0和TLS 1.1。 今年,出现了新的绕过TLS 1.2保护的Zombie POODLE和GOLDENDOODLE攻击(它们仍与CBC加密相关联)。

如何保护自己。 对于原始POODLE,您需要禁用SSL 3.0支持。 但是,在这种情况下,存在兼容性问题的风险。 替代解决方案可能是TLS_FALLBACK_SCSV机制-它确保仅在较旧的系统上进行SSL 3.0上的数据交换。 攻击者将不再能够发起协议降级。 防止Zombie POODLE和GOLDENDOODLE的一种方法是在基于TLS 1.2的应用程序中禁用CBC支持。 最主要的决定将是过渡到TLS 1.3-该协议的新版本不使用CBC加密。


最早的SSL和TLS 1.0攻击之一,于2011年发现。 与POODLE一样,BEAST也使用 CBC加密功能。 攻击者在客户端计算机上部署了JavaScript代理或Java applet,它们在通过TLS或SSL传输数据时会欺骗消息。 由于攻击者知道“伪”数据包的内容,因此他们可以使用它们解密初始化向量,并向服务器读取其他消息,例如用于身份验证的cookie。

迄今为止, 许多网络工具仍然容易受到BEAST漏洞的攻击:代理和保护本地Internet网关的应用程序。

如何保护自己。 攻击者需要定期发送请求以解密数据。 VMware 建议将SSLSessionCacheTimeout的持续时间从五分钟(默认建议)减少到30秒。 这种方法将使针对攻击者的计划的实施复杂化,尽管这会对生产力产生负面影响。 此外,您需要了解,BEAST漏洞可能很快就会成为现实-自2020年以来,最大的浏览器已停止支持TLS 1.0和1.1。 在任何情况下,所有浏览器用户中只有不到1.5%使用这些协议。

淹死


这是一种跨协议攻击,使用带有40位RSA密钥的SSLv2实施中的错误。 攻击者侦听目标的数百个TLS连接,并使用同一私钥将特殊数据包发送到具有SSLv2的服务器。 使用Bleichenbacher攻击 ,黑客可以解密大约一千个TLS客户端会话之一。

DROWN于2016年首次广为人知-随后,全球三分之一服务器都使用了它。 迄今为止,它尚未失去相关性。 在15万个最受欢迎的网站中,仍有2%仍支持 SSLv2和易受攻击的加密机制。

如何保护自己。 必须安装由加密库开发人员建议的补丁,这些补丁会禁用SSLv2支持。 例如,针对OpenSSL引入了两个此类补丁(2016年分别为更新 1.0.1s和1.0.2g)。 另外,在Red HatApacheDebian中发布了禁用易受攻击协议的更新和说明。

IaaS提供商1cloud.ru的开发部门负责人Sergey Belkin表示:“如果资源的密钥被具有SSLv2的第三方服务器(例如邮件服务器)使用,则DROWN可能会受到攻击。” -如果多个服务器使用通用SSL证书,则会发生这种情况。 在这种情况下,请在所有计算机上禁用SSLv2支持。

您可以使用特殊工具检查是否需要更新系统-该工具是由发现DROWN的信息安全专家开发的。 您可以在OpenSSL网站上的帖子中阅读有关与防范此类攻击有关的建议的更多信息。

伤心欲绝


软件最大的漏洞之一是Heartbleed 。 它于2014年在OpenSSL库中发现。 在错误宣布之时,易受攻击的网站数量估计为100万 ,大约占网络受保护资源的17%。

该攻击是通过小型Heartbeat TLS扩展模块实施的。 TLS协议要求连续传输数据。 如果停机时间较长,则会发生中断,并且必须重新建立连接。 为了解决该问题,服务器和客户端通过传输随机长度的数据包来人为地“干扰”信道( RFC 6520,第5页 )。 如果发现它是最大的软件包,则易受攻击的OpenSSL版本会在分配的缓冲区之外读取内存。 任何数据都可以在此区域中,包括私有加密密钥和有关其他连接的信息。

该库的所有版本均在1.0.1至1.0.1f(含)之间存在漏洞,并且在许多操作系统中均存在此漏洞-Ubuntu直至12.04.4,CentOS早于6.5,OpenBSD 5.3等。 完整列表在Heartbleed网站上 。 尽管针对此漏洞的补丁几乎是在发现后立即发布的,但是直到现在,该问题仍然存在。 早在2017年, 近20万个站点受到Heartbleed的影响。

如何保护自己。 您需要将OpenSSL升级到1.0.1g或更高版本。 您还可以使用DOPENSSL_NO_HEARTBEATS选项手动禁用心跳请求。 升级后,信息安全专家建议重新颁发SSL证书。 万一加密密钥上的数据仍被黑客窃取,则需要进行替换。

证书欺骗


使用有效拦截流量的合法SSL证书在用户和服务器之间安装了一个受管节点。 该节点假装为提供有效证书的合法服务器,从而有可能实施MITM攻击。

来自Mozilla,Google和几所大学团队进行的一项研究表明,网络上大约11%的安全连接被“窃听”。 这是在用户计算机上安装可疑根证书的结果。

如何保护自己。 使用可靠的SSL提供程序的服务 。 您可以使用证书透明性 (CT)服务检查证书的“质量”。 云提供商还可以帮助检测窃听-如今,一些大公司已经提供了用于监视TLS连接的专用工具。

另一种保护方法是新的ACME 标准 ,该标准可自动执行SSL证书的接收。 同时,他将添加其他机制来检查站点所有者。 我们在以前的材料之一中写了更多有关他的文章。


/ Flickr / Yuri Samoilov / CC BY

HTTPS的前景


尽管存在许多漏洞,IT巨头和信息安全专家对协议的未来充满信心。 WWW的创建者Tim Berners-Lee 代表 HTTPS的积极实施。 据他介绍,随着时间的流逝,TLS将变得更加安全,这将大大提高连接的安全性。 Berners-Lee甚至建议, 将来会有用于身份验证的客户端证书。 它们将帮助改善服务器对入侵者的保护。

它还计划借助机器学习来开发SSL / TLS技术-智能算法将负责过滤恶意流量。 在HTTPS连接中,管理员无法找出加密消息的内容,包括检测来自恶意软件的请求。 神经网络已经能够以90%的精度过滤潜在危险的数据包。 ( 幻灯片23个演示文稿 )。

结论


对HTTPS的攻击大部分与协议本身的问题无关,而是支持过时的加密机制。 IT行业开始逐步淘汰上一代协议,并提供了用于查找漏洞的新工具。 将来,这些工具将变得更加智能。

其他相关链接:

Source: https://habr.com/ru/post/zh-CN449866/


All Articles