最近我开始在我的 Firefox 会话中不使用 RC4。关于它的讨论可以在这里找到。虽然在 Firefox 中很容易(输入about:config
然后rc4),但我发现在 Chromium 中不可能这样做。那么是否可以在 Chromium 或 Google Chrome 中禁用或删除 RC4?
从 Chromium 中的 SSL/TLS 密码中删除 RC4
经过几个小时试图弄清楚如何在谷歌浏览器中做到这一点后,我找到了!您必须在快捷方式中添加以下命令行参数:
--cipher-suite-blacklist=0x0005,0x0004
棘手的部分是 Google 没有翻译密码字符串,因此您必须根据 RFC 2246 以十六进制输入每个密码:
0x0004 = TLS_RSA_WITH_RC4_128_MD5
0x0005 = TLS_RSA_WITH_RC4_128_SHA
TL;博士
您需要使用以下参数来阻止所有 RC4 密码(从带有 NSS 3.15 的 Ubuntu 12.04 中的 Chrome 31 开始)
--cipher-suite-blacklist=0x0004,0x0005,0xc011,0xc007
在 Ubuntu 上的 Google Chrome 中,您必须编辑文件/usr/share/applications/google-chrome.desktop
并将参数添加到以Exec=/usr/bin/google-chrome-stable
. 总体应该是三个。
Exec=/usr/bin/google-chrome-stable --cipher-suite-blacklist=0x0004,0x0005,0xc011,0xc007
一般答案自己弄清楚
IANA定期更新的所有密码列表已经非常有助于确定要阻止哪些密码,但您最终可能会阻止比浏览器实际支持的密码更多的密码。有一种更简单的方法可以首先检查浏览器支持的密码并获取它们的十六进制值。
通过访问汉诺威莱布尼茨大学的以下网站,您可以直接在浏览器中提供这两种信息:
例如:在下图中,密码标识符在表格的左侧。所以,如果我想阻止这两个密码RSA-AES-128-GCM-SHA256
,RSA-AES256-SHA
我会寻找(00,9c)
and (00,35)
。
对于谷歌浏览器,这意味着我必须添加参数:
--cipher-suite-blacklist=0x009c,0x0035
谷歌浏览器版本 28.0.1500.95
chrome.exe --cipher-suite-blacklist=0xc007,0xc011,0x0066,0xc00c,0xc002,0x0005,0x0004
0xc007 = ECDHE-ECDSA-RC4128-SHA
0xc011 = ECDHE-RSA-RC4128-SHA
0x0066 = DHE_DSS_WITH_RC4_128_SHA
0xc00c = ECDH_RSA_WITH_RC4_128_SHA
0xc002 = RSA-RC4128-SHA
0x0005 = RSA-RC4128-SHA
0x0004 = RSA-RC4128-MD5
Source list of cipher names matching to spec:
[https://code.google.com/p/chromium/issues/detail?id=58833][1]
Website to check settings:
[https://cc.dcsec.uni-hannover.de/][2]
如果我理解这个问题跟踪线程,至少部分实现了对禁用 SSL/TLS 中某些密码套件的支持,但没有相应的用户界面。通过命令行参数似乎是可行的(我没有尝试过)。此外,确切的方法可能会因操作系统而异,因为 Chrome 倾向于重用操作系统提供的有关 SSL 的功能(与 Firefox 不同,Firefox 总是自己做所有事情)。