怎么在国外网站买东西,石油 技术支持 东莞网站建设,seo新人怎么发外链,四川旅游攻略自由行攻略漏洞名称#xff1a;弱加密算法、脆弱的加密算法、脆弱的SSL加密算法、openssl的FREAK Attack漏洞 
漏洞描述#xff1a;脆弱的SSL加密算法#xff0c;是一种常见的漏洞#xff0c;且至今仍有大量软件支持低强度的加密协议#xff0c;包括部分版本的openssl。其实#xf…漏洞名称弱加密算法、脆弱的加密算法、脆弱的SSL加密算法、openssl的FREAK Attack漏洞 
漏洞描述脆弱的SSL加密算法是一种常见的漏洞且至今仍有大量软件支持低强度的加密协议包括部分版本的openssl。其实该低强度加密算法在当年是非常安全的但时过境迁飞速发展的技术正在让其变得脆弱。黑客可利用SSL弱加密算法漏洞进行SSL中间人攻击即强迫服 务器和用户之间使用低强度的加密方式然后再通过暴力破解窃取传输内容。强度较弱的加密算法将不能较好的保证通信的安全性有被攻击者破解的风险。对于linux中openssl的FREAK Attack漏洞该漏洞是由于OpenSSL库里的s3_clnt.c文件中ssl3_get_key_exchange函数允许客户端使用一个弱RSA秘钥向SSL服务端发起RSA-to-EXPORT_RSA的降级攻击以此进行暴力破解得到服务端秘钥。此问题存在于OpenSSL版本0.9.8zd之前, 或1.0.0p之前的1.0.0 或1.0.1k之前的1.0.1。 
检测条件 
1、 已知Web网站开放443端口https。 2、 开启了SSL协议。 
检测方法 
1、 对于windows中的检测方法通过加密算法检测工具与网站系统进行加密算法枚举通信 探测系统存在的加密算法及位数情况。利用SSLciphercheck软件通过CMD下运行进行协议探测进行检测命令‚sslciphercheck.exe -h ip地址或者域名 -p 443‛或者是利用web扫描工具如AWVSAPPscan等进行扫描检测相关检测截图 2、 对于openssl的FREAK Attack漏洞检测如下https远程检查方法看一个网站是脆弱的 RSA弱密钥攻击你可以使用OpenSSL命令openssl s_client -connect www.fbi.gov:443 -cipher EXPORT如果你看到‛alert handshake failure‛这句话就说明该网站是安全的: RedHat系列检查命令rpm -qa|grep openssl Debian\Ubuntu系列检查命令: dpkg -l|grep openssl 修复方案:以下为针对脆弱的SSL加密算法漏洞的修复建议其中包括IIS、apache、和windows本身的一些安全建议方法 
对于linux中openssl的FREAK Attack漏洞如果因为生产环境无法直连外网或是变更配置管理等原因而不便更新补丁,可以采取以下临时修复方法 
1、 禁用出口级弱加密算法在命令行使用openssl ciphers MEDIUM。 2、 禁止apache服务器使用出口级加密算法vi /etc/httpd/conf.d/ssl.conf增加如下配置SSLCipherSuite HIGH:!aNULL:!MD5:!EXP需要重启apache服务/etc/init.d/httpd restart。 3、 关于nginx加密算法1.0.5及以后版本默认SSL密码算法是HIGH:!aNULL:!MD50.7.65、0.8.20及以后版本默认SSL密码算法是HIGH:!ADH:!MD50.8.19版本默认SSL密码算法是ALL:!ADH:RC4RSA:HIGH:MEDIUM0.7.64、0.8.18及以前 版 本  默 认 SSL 密 码 算 法 是 ALL:!ADH:RC4RSA:HIGH:MEDIUM:LOW:SSLv2:EXP低版本的nginx或没注释 的 可 以 直 接 修 改 域 名 下 ssl 相 关 配 置 为 ssl_ciphersHIGH:!aNULL:!MD5;需要nginx重新加载服务/etc/init.d/nginx reloa 
对于IIS中SSL修复方案为 
1、 在 IIS 管理器中双击本地计算机然后右键单击所需的某个网站、目录或文件然后单击‚属性‛。 2、 在‚目录安全性‛或‚文件安全性‛选项卡的‚安全通信‛下面单击‚编辑‛。 3、 在‚安全通信‛框中选中‚需要安全通道 (SSL)‛复选框。 4、 如果需要使用 128 位加密请选择‚要求 128 位加密‛复选框。 5、 单击‚确定‛。 
对于Apache的修复方案为 
1、 禁用它只需几分钟的时间。例如在Apache v2中你只需要改变默认设置 
SSLProtocol all To SSLProtocol all -SSLv2 
2、 如何建立一个仅使用SSLv2的服务器 
可以这样建立一个仅使用SSLv2协议及其密码算法的服务器 httpd.conf SSLProtocol -all SSLv2 SSLCipherSuite SSLv2:HIGH:MEDIUM:LOW:EXP 
3、 如何建立一个仅接受强加密请求的SSL服务器: 
如下设置为仅使用最强的七种密码算法 httpd.conf SSLProtocol all SSLCipherSuite HIGH:MEDIUM 
4、 如何建立一个仅接受强加密请求的SSL服务器而又允许对外浏览器使用更强的加密这个功能被称为以服务器为网关的加密(Server Gated Cryptography[SGC]) 在README.GlobalID文档中有详细说明。 简单地说就是服务器拥有一个由来自Verisign的一个特殊的CA证书签发的服务器身份证 从而在对外浏览器上实现强加密。 其过程如下浏览器使用对外密码进行连接服务器返回其全局ID身份证 浏览器校验后在后继HTTP通讯产生之前提升其密码组。 现在的问题是如何允许这样的提升而又强制性地使用强加密。 换句话说就是浏览器必须在开始连接时就使用强加密或者提升到强加密 但是维持对外密码是不允许的。以下巧妙地解决了这个问题 
httpd.conf # 允许在初始握手阶段使用所有的密码 # 以允许对外服务器通过SGC功能提升密码组 SSLCipherSuite ALL:!ADH:RC4RSA:HIGH:MEDIUM:LOW:SSLv2:EXP:eNULL Directory /usr/local/apache2/htdocs # 但是最终会拒绝所有没有提升密码组的浏览器 SSLRequire %{SSL_CIPHER_USEKEYSIZE}  128 /Directory 5、 如何建立接受所有类型密码的SSL服务器但对特定的URL实施强加密:显然不能使用服务器全局设置SSLCipherSuite它会限制密码为强类型。 但是mod_ssl允许重配置针对目录的密码组并自动进行一个带有服从新配置的SSL参数的重协商。 因此其解决方案成了 
httpd.conf # 在一般情况下的处理是宽松的 SSLCipherSuite ALL:!ADH:RC4RSA:HIGH:MEDIUM:LOW:SSLv2:EXP:eNULL Location /strong/area # 但对于https://hostname/strong/area/ 及其以下的内容 # 要求强密码 SSLCipherSuite HIGH:MEDIUM /Location 
对于windos系统中禁用SSL弱加密算法修复方案 
1、 windows server 2003注册表可能与以下的不同。解决方案Windows Server 2008支持下列协议•SSL 2.0 •SSL 3.0•TLS 1.0。Windows Server 2008 R2 和Windows 7 支持下列协议•SSL 2.0 •SSL 3.0•TLS 1.0•TLS 1.1•TLS 1.2对于服务器或客户端体系结构可以禁用这些协议。这意味着可以省略该协议或将其禁用。如果要禁用SSL-V2.0采用如下方案 
SSL 2.0 的 服 务 器 计 算 机 上 的 注 册 表 位 置 如 下 所 示  HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 2.0\Server 1若要启用 SSL 2.0请执行以下步骤 1.在客户端计算机上将DisabledByDefault DWORD 值设置为 00000000。 2.在服务器计算机上将启用的 DWORD 值设置为 0xffffffff。 3.重新启动计算机。 2若要禁用 SSL 2.0请执行以下步骤 1.在客户端计算机上将DisabledByDefault DWORD 值设置为 00000001。2.在服务器计算机上将启用 DWORD 值设置为 00000000。 3.重新启动计算机。 
1、 SCHANNEL 键部分、 方法或任务包含一些介绍如何修改注册表的步骤。但是如果不正确地修改了注册表可能会出现严重的问题。因此请确保仔细按照下列步骤操作。为增加保护对其进行修改之前备份注册表。然后您可以在出现问题时还原注册表。 
SCHANNEL 键位置 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL 以下为常见的SCHANNEL键子项包含弱加密算法的一些禁用方法 156/128 SCHANNEL\Ciphers\RC4 子项RC4 64/128若要允许此密码算法更改到已启用值的 DWORD 值数据 0xffffffff.否则更改到的 DWORD 值数据 0x0.如果您不配置启用值默认情况下启用。 256/128 SCHANNEL\Ciphers\RC2 子项RC4 56/12856 位 RC4 引用此注 册 表 项 。 若 要 允 许 此 密 码 算 法  更 改 到 已 启 用 值 的 DWORD 值 数 据0xffffffff.否则更改到的 DWORD 值数据 0x0.如果您不配置启用值默认情况下启用。 3SCHANNEL\Ciphers\RC2 56/56 子项RC2 56/12856 位 RC2 引用此注册表项。若要允许此密码算法更改到已启用值的 DWORD 值数据 0xffffffff.否则更改到的 DWORD 值数据 0x0.如果您不配置启用值默认情况下启用。 4SCHANNEL\Ciphers\RC4 40/128 子项DES 5656 位 DES 作为指定 FIPS46-2 中 引 用 此 注 册 表 项 。 FIPS 140-1 加 密 模 块 验 证 计 划 下  它 的Rsabase.dll 和 Rsaenh.dll 文件中的实现进行验证。若要允许此密码算法更改到已启用值的 DWORD 值数据 0xffffffff.否则更改到的 DWORD 值数据0x0.如果您不配置启用值默认情况下启用。 5SCHANNEL\Ciphers\RC2 40/128 子项RC4 40/128这指的是 40 位 RC4。若要允许此密码算法更改到已启用值的 DWORD 值数据 0xffffffff.否则更改到的 DWORD 值数据 0x0.如果您不配置启用值默认情况下启用。 6SCHANNEL\Ciphers\NULL 子项RC2 40/12840 位 RC2 引用此注册表项。若要允许此密码算法更改到已启用值的 DWORD 值数据 0xffffffff.否则更改到的 DWORD 值数据 0x0.如果您不配置启用值默认情况下启用。 7SCHANNEL\Hashes\SHA 子项MD5若要允许此哈希算法将启用值的DWORD 值数据更改为默认值 0xffffffff.否则更改到的 DWORD 值数据 0x0.有效地禁用此算法时不允许以下•SSL_RSA_EXPORT_WITH_RC4_40_MD5•SSL_RSA_WITH_RC4_128_MD5  • SSL_RSA_EXPORT_WITH_RC2_CBC_40_MD5  •TLS_RSA_EXPORT_WITH_RC4_40_MD5  • TLS_RSA_WITH_RC4_128_MD5  •TLS_RSA_EXPORT_WITH_RC2_CBC_40_MD5。 8SCHANNEL/KeyExchangeAlgorithms 子项SHA此注册表项是指安全哈希算法 (sha-1)指定 FIPS 180-1 中。FIPS 140-1 加密模块验证计划下它的 Rsabase.dll 和 Rsaenh.dll 文件中的实现进行验证。若要允许此哈希算法将启用值的 DWORD 值数据更改为默认值 0xffffffff.否则更改到的DWORD 值 数 据 0x0. 有 效 地 禁 用 此 算 法 时  不 允 许 以 下  
•SSL_RSA_WITH_RC4_128_SHA  • SSL_RSA_WITH_DES_CBC_SHA  •SSL_RSA_WITH_3DES_EDE_CBC_SHA•SSL_RSA_EXPORT1024_WITH_DES_CBC_SHA • SSL_RSA_EXPORT1024_WITH_RC4_56_SHA  • TLS_RSA_WITH_RC4_128_SHA  • TLS_RSA_WITH_DES_CBC_SHA  • TLS_RSA_WITH_3DES_EDE_CBC_SHA  •TLS_RSA_EXPORT1024_WITH_DES_CBC_SHA  •TLS_RSA_EXPORT1024_WITH_RC4_56_SHA。