之前就有研究人员提出NSA已经能够通过攻击1024位素数的Diffie-Hellman密钥交换算法解密大量HTTPS、SSH和VPN连接。为了确保你使用的是最强的加密套件,你需要看看浏览器是否支持该加密算法。How's My SSL是一种用来测试浏览器的加密套件支持。页面的相关区域在底部给出了你的加密套件。需要注意的是:卸载“_DHE_”加密器确实可以消除这种攻击的危险性,但也可能导致删除了一些网站前向安全支持。下面是如何去除那些“_DHE_”加密器的方法:

1.Firefox

打开一个新的标签,在地址栏中输入“about:config”进入。如果你得到一个警告页面,点击“我保证我会小心的!”这样你就进入了Firefox的配置设置。在搜索栏中键入“.dhe_”,按“Enter”键。这样应该会显示两个设置:“security.ssl3.dhe_rsa_aes_128_sha”和“security.ssl3.dhe_rsa_aes_256_sha”。双击他们,然后都把“true”改成“false”。

再刷新一下 How's My SSL页面,“_DHE_”密码套件不见了!

如何防止1024位Diffie-Hellman被破解?

2.Chrome

按照下列操作系统的这些步骤后,刷新How's My SSL页面,“_DHE_”密码套件就会消失。请注意,TLS Cipher Suite Registry中列表中16进制值对应不同的。

(1)OSX系统 (OSX 10.10.5)

打开“Automator”,然后双击“运行Shell脚本”。使用以下内容替换“cat”命令:

/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --cipher-suite-blacklist=0x0033,0x0039,0x009E,0xcc15

将应用程序保存到你的应用程序文件夹中。在finder中,你可以把应用程序拖到你的dock,然后用它来打开Chrome浏览器。

(2)Windows系统(Windows 7)

鼠标右键单击Chrome浏览器的快捷方式,单击“属性”然后将下面内容添加到“target”的末端:

“--cipher-suite-blacklist=0x0033,0x0039,0x009E,0xcc15”

然后,target里应该是类似以下内容:

"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --cipher-suite-blacklist=0x0033,0x0039,0x009E,0xcc15

从现在开始,用这个快捷方式打开浏览器。

(3)Linux系统(Ubuntu 14.04 LTS)

从命令行启动chrome删除不需要的加密套件:

google-chrome --cipher-suite-blacklist=0x0033,0x0039,0x009E,0xcc15

3.VPN

大多数VPN软件支持OpenVPN的“.ovpn”文件扩展名。许多VPN供应商也提供“.ovpn”文件连接。你可以用下面的命令查询你的OpenVPN客户端加密套件:openvpn --show-tls

该列表首先应该由最强的加密套件先加密。 OpenVPN的最新版本有“ECDHE”支持,但你的VPN供应商也必须支持所需的加密系统。只有“DHE”的加密系统可能会很容易被攻克,不过OpenVPN往往有VPN服务器产生自己的素数,这减轻了预计算攻击的风险。编辑“.ovpn”文件并连接好测试一下,防止VPN供应商探查到。