服务器如何修复旧加密算法漏洞

2021-03-17 12:30:26 浏览数 (1)

大周末的,收到客户发来的《网络安全隐患告知书》,里面有个主机扫描报告,有个中危漏洞需要修复,客户修复不了,找过来,漏洞如下:

其实这个漏洞很常见,最近接触的客户发来的要求修复的漏洞中,都存在这个问题,所以今天记录下

这个RC4的漏洞是个老的漏洞了,是加密算法的问题,只要是在使用RC4加密算法的旧的系统中,都存在这个问题,比如常见的web,Nginx、Apache、IIS、Tomcat等,以及linux下的openssl,windows服务器的远程桌面服务,有使用RC4算法的,都有这个问题

所以这里顺便整理下这个问题要怎么修复

客户给到的是一台windows 2008 R2 sp1的服务器,而公安局通过安恒的漏洞扫描扫出的是远程桌面服务的RC4 加密问题,所以这里先解决windows上面的这个问题

解决这个问题的方法其实很简单,因为官方也没有给出RC4的补丁,所以最简单的方法就是禁用RC4加密算法

在windows中,禁用RC4加密算法,需要修改注册表,所以废话不多说,先做个系统快照,以防万一

做完快照,就开始操作了,在修改注册表之前,需要先安装一个补丁(KB2868725),从微软官方下一个对应系统版本的这个补丁包,安装

安装完成后,在命令行通过regedit,打开注册表,找到如下两个位置,没有的话创建

如图,在注册表中,禁用RC4之后,因为没有安恒的漏扫工具,用nessus扫描前后对比如下:

禁用后,漏洞扫描结果中已经没有RC4算法相关漏洞

RC4算法除了在远程服务中使用,在web服务中也是很常使用,所以下面整理了常见web的处理方式

  • nginx处理方式:

在ssl的配置中,配置加密套件的位置,即ssl_ciphers的加密套件最后加!RC4,来禁用RC4加密算法

之后,重新加载nginx配置即可

  • Apache处理方式:

在ssl配置中,SSLCipherSuite的位置,添加!RC4的配置来禁用RC4加密算法

完成后,重启Apache服务

  • Tomcat处理方式:

在server.xml中,配置SSL_connector中ciphers的部分添加!RC4来禁用RC4算法

  • IIS处理方式:

IIS的处理方式和上面windows 远程桌面服务处理一样,修改注册表,这里我写好了注册信息,复制保存为fix_rc4.reg,双击运行即可,其中还禁用了一些其他已经不安全的加密套件

[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSecurityProvidersSCHANNELCiphersDES56/56]"Enabled"=dword:00000000

[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSecurityProvidersSCHANNELCiphersNULL]"Enabled"=dword:00000000

[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSecurityProvidersSCHANNELCiphersRC240/128]"Enabled"=dword:00000000

[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSecurityProvidersSCHANNELCiphersRC256/128]"Enabled"=dword:00000000

[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSecurityProvidersSCHANNELCiphersRC440/128]"Enabled"=dword:00000000

[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSecurityProvidersSCHANNELCiphersRC456/128]"Enabled"=dword:00000000

[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSecurityProvidersSCHANNELCiphersRC464/128]"Enabled"=dword:00000000

[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSecurityProvidersSCHANNELProtocolsPCT1.0Server]"Enabled"=dword:00000000

[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSecurityProvidersSCHANNELProtocolsSSL2.0Server]"Enabled"=dword:00000000

[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSecurityProvidersSCHANNELProtocolsSSL3.0Server]"Enabled"=dword:00000000

[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSecurityProvidersSCHANNELProtocolsSSL3.0Client]"DisabledByDefault"=dword:00000001

通过以上方法,即可修复改RC4漏洞,如果没有Nessus,可以通过其他方式进行验证,这里提供两种验证方式

  • openssl s_client -connect 网站地址 -cipher RC4
  • nmap -p 443 --script=ssl-enum-ciphers 目标服务器

参考链接:https://support.microsoft.com/en-us/topic/microsoft-security-advisory-update-for-disabling-rc4-479fd6f0-c7b5-0671-975b-c45c3f2c0540

0 人点赞