如何保护您的服务器免受 POODLE SSLv3 漏洞的影响

打印 上一主题 下一主题

主题 946|帖子 946|积分 2838

前些天发现了一个巨牛的人工智能学习网站,平凡易懂,风趣幽默,忍不住分享一下给各人。点击跳转到网站。
简介

2014年10月14日,SSL加密协议第3版中的一个漏洞被披露。这个漏洞被称为POODLE(Padding Oracle On Downgraded Legacy Encryption),允许攻击者使用中心人攻击来读取使用该协议加密的信息的明文。
只管SSLv3是一个较老的协议版本,主要已经过时,许多软件仍会在更好的加密选项不可用时退回到SSLv3。更重要的是,假如SSLv3是连接的可用备选项,攻击者可以欺压使用SSLv3连接。
POODLE漏洞影响任何可以使用SSLv3举行通信的服务或客户端。由于这是协议设计上的缺陷,而不是实现问题,每一个使用SSLv3的软件都是脆弱的。
要相识更多关于该漏洞的信息,请参考CVE-2014-3566中的CVE信息。
什么是POODLE漏洞?

POODLE漏洞是SSL协议第3版中的一个缺点,允许中心人在一个特定的上下文中解密SSLv3加密消息的明文内容。
谁受到这个漏洞的影响?

这个漏洞影响任何可以被迫使用SSLv3举行通信的软件。这意味着任何实现包括SSLv3支持的回退机制的软件都是脆弱的,可以被利用。
一些可能受到影响的常见软件包括Web欣赏器、Web服务器、VPN服务器、邮件服务器等。
它是如何工作的?

简而言之,POODLE漏洞存在是由于SSLv3协议没有充分检查发送的加密消息中的填充字节。
由于接收方无法验证这些填充字节,攻击者可以更换这些填充字节并将其通报给预期的目标。当以特定方式完成时,修改后的有效载荷有可能会被接收方接受而不会有任何投诉。
均匀每256个哀求中会有一个哀求被目标接受,允许攻击者解密一个单个字节。这可以轻松重复,以逐步解密额外的字节。任何能够重复欺压参与者使用该协议重新发送数据的攻击者都可以在很短的时间内破解加密。
如何保护自己?

应该采取行动来确保在作为客户端和服务器的角色中都不会受到影响。由于加密通常是在客户端和服务器之间协商的,这是一个涉及双方的问题。
服务器和客户端应该采取步伐完全禁用SSLv3支持。许多应用程序默认使用更好的加密,但实现SSLv3支持作为备选项。这应该被禁用,由于恶意用户可以欺压SSLv3通信,假如双方都允许它作为一种可接受的方法。
如何保护常见应用程序

下面,我们将介绍如安在一些常见的服务器应用程序上禁用SSLv3。请留意评估您的服务器,以保护可能依靠于SSL/TCP加密的任何其他服务。
由于POODLE漏洞不代表一个实现问题,而是整个协议的固有问题,因此没有办理方法,唯一可靠的办理方案是不使用它。
Nginx Web服务器

要在Nginx Web服务器上禁用SSLv3,您可以使用ssl_protocols指令。这将位于您的配置中的server或http块中。
比方,在Ubuntu上,您可以将此全局添加到/etc/nginx/nginx.conf中的http块内,大概添加到/etc/nginx/sites-enabled目次中的每个server块内。
  1. sudo nano /etc/nginx/nginx.conf
复制代码
要禁用SSLv3,您的ssl_protocols指令应设置如下:
  1. ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
复制代码
在举行上述修改后,您应该重新启动服务器:
  1. sudo service nginx restart
复制代码
Apache Web服务器

要在Apache Web服务器上禁用SSLv3,您需要调解mod_ssl模块提供的SSLProtocol指令。
该指令可以在服务器级别或虚拟主机配置中设置。根据您的发行版的Apache配置,SSL配置可能位于一个单独的文件中。
在Ubuntu上,服务器级别的规范可以通过编辑/etc/apache2/mods-available/ssl.conf文件来调解。假如mod_ssl已启用,符号链接将连接此文件到mods-enabled子目次:
  1. sudo nano /etc/apache2/mods-available/ssl.conf
复制代码
在CentOS上,您可以在此处调解SSL配置文件(假如SSL已启用):
  1. sudo nano /etc/httpd/conf.d/ssl.conf
复制代码
在文件中,您可以找到SSLProtocol指令。假如没有找到,可以创建它。修改它以明确删除对SSLv3的支持:
  1. SSLProtocol all -SSLv3 -SSLv2
复制代码
保存并关闭文件。重新启动服务以启用您的更改。
在Ubuntu上,您可以输入:
  1. sudo service apache2 restart
复制代码
在CentOS上,这将是:
  1. sudo service httpd restart
复制代码
HAProxy 负载平衡器

要在 HAProxy 负载平衡器中禁用 SSLv3,您需要打开 haproxy.cfg 文件。
它位于 /etc/haproxy/haproxy.cfg:
  1. sudo nano /etc/haproxy/haproxy.cfg
复制代码
在您的前端配置中,假如启用了 SSL,您的 bind 指令将指定公共 IP 地点和端口。假如使用了 SSL,您将需要在该行末了添加 no-sslv3:
  1. frontend name
  2.     bind public_ip:443 ssl crt /path/to/certs no-sslv3
复制代码
保存并关闭文件。
您需要重新启动服务以实施更改:
  1. sudo service haproxy restart
复制代码
OpenVPN VPN 服务器

近来版本的 OpenVPN 实际上不允许 SSLv3。该服务不会受到此特定问题的影响,因此您无需调解配置。
请参阅 OpenVPN 论坛上的此帖子以获取更多信息。
Postfix SMTP 服务器

假如您的 Postfix 配置设置为需要加密,它将使用一个名为 smtpd_tls_mandatory_protocols 的指令。
您可以在主 Postfix 配置文件中找到它:
  1. sudo nano /etc/postfix/main.cf
复制代码
对于始终使用加密的 Postfix 服务器,您可以通过设置此参数来确保不接受 SSLv3 和 SSLv2。假如您不欺压加密,则无需举行任何操作:
  1. smtpd_tls_mandatory_protocols=!SSLv2, !SSLv3
复制代码
保存您的配置。重新启动服务以实施更改:
  1. sudo service postfix restart
复制代码
Dovecot IMAP 和 POP3 服务器

要在 Dovecot 服务器上禁用 SSLv3,您需要调解一个名为 ssl_protocols 的指令。根据您的发行版的打包方法,SSL 配置可能保存在另一个配置文件中。
对于大多数发行版,您可以通过打开此文件来调解此指令:
  1. sudo nano /etc/dovecot/conf.d/10-ssl.conf
复制代码
在此中,假如您使用的是 Dovecot 2.1 或更高版本,请将 ssl_protocols 指令设置为禁用 SSLv2 和 SSLv3:
  1. ssl_protocols = !SSLv3 !SSLv2
复制代码
假如您使用的是低于 2.1 版本的 Dovecot,您可以通过以下方式设置 ssl_cipher_list 来禁用 SSLv3:
  1. ssl_cipher_list = ALL:!LOW:!SSLv2:!EXP:!aNULL:!SSLv3
复制代码
保存并关闭文件。
重新启动服务以实施更改:
  1. sudo service dovecot restart
复制代码
进一步步调

除了服务器端应用程序,您还应更新任何客户端应用程序。
特别是,由于它们的降级协议协商,Web 欣赏器可能会受到此问题的影响。确保您的欣赏器不允许 SSLv3 作为可接受的加密方法。这可能可以在设置中调解,也可以通过安装额外的插件或扩展来实现。
结论

由于广泛支持 SSLv3,即使启用了更强的加密,此漏洞也具有广泛影响和危险性。您需要采取步伐来保护自己,无论是作为使用 SSL 加密资源的消耗者还是提供者。
确保检查所有可能利用 SSL/TLS 的网络可访问服务。通常,这些应用程序需要明确的指示才能完全禁用像 SSLv3 这样的较弱加密形式。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

徐锦洪

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表