测试你的浏览器安全性:如果能打开这个网站,就踩中了印度证书机构的离谱大雷

原始链接在: 测试你的浏览器安全性:如果能打开这个网站,就踩中了印度证书机构的离谱大雷 - 小众软件

现在,测试一下你的浏览器

如果能打开这个网址,就证明你的浏览器中了印度证书机构的离谱大雷。

如果打不开,你的浏览器安全,已更新!

印度证书机构出了什么离谱大雷?

这是青小蛙使用 OpenSSL 随机生成的一份 P-384 私钥,与印度 eMudhra 此次出问题的私钥采用相同的椭圆曲线算法:

其中 priv: 后面的 48 字节十六进制数字,就是私钥真正的秘密数字。

正常情况下(如上图),这个数字非常庞大,几乎无法通过暴力猜测找到。

然而,印度 eMudhra 的其中一份私钥,是这样的:

priv:
    00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:
    00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:
    00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:04

这个 …00:04 是猜出来的。

研究人员从 1 开始暴力枚举,每猜一个数字,就用它计算出对应的公钥,再与证书中公开的公钥进行比较。结果只猜到了 4,两者完全一致,成功破解了私钥。

至此,私钥泄漏。

中间证书的私钥泄露会怎么样?

HTTPS 证书有一套信任体系:根证书 → 中间证书 → 网站证书

根证书由浏览器或操作系统信任,中间证书由根证书授权,可以继续为网站签发 HTTPS 证书。

比如,你访问 appinn.com,浏览器会检查网站证书是不是由可信的证书机构签发的。如果整条证书链都有效,浏览器就会信任它。

而这次印度 eMudhra 泄露的,恰恰是中间证书机构的私钥。

这意味着,攻击者拿到私钥后,就可以冒充证书颁发机构,为任意域名签发 HTTPS 证书。

如果浏览器仍然信任这条证书链,攻击者再配合网络劫持,就可能冒充真实网站,窃取用户密码、监听或篡改 HTTPS 通信。

这相当于小偷拿到了可以制作正规通行证的官方印章,想给谁发证就给谁发证。

结局

各大浏览器已经处理完成,Google Chrome 和 Mozilla Firefox 在 10 月 17 日就完成了紧急封锁,苹果于 19 日、微软于 20 日也采取了相应措施。

浏览器 / 平台 处理时间 具体措施
Google Chrome 10 月 17 日 通过 CRLSet 远程封锁受影响的 TLS 密钥,无需更新或重启浏览器
Mozilla Firefox 10 月 17 日 通过 OneCRL 远程封锁,收到报告后不到 3 小时完成分发
Apple / Safari 10 月 19 日 苹果证书信任体系已封锁相关证书
Microsoft / Edge 10 月 20 日 微软证书信任体系已采取封锁措施

但是,这次泄漏还可能影响 curl、Python、Node.js,以及大量使用系统证书库的应用程序。

比如现在使用 curl 还是可以访问到该测试 URL:

测试结果

最后,别忘记来分享你的浏览器,拦截了这张离谱证书吗?


原文:https://www.appinn.com/test-browser-security-emudhra-certificate/

1 个赞

Kiwi Browser 137.0.7337.0,很不幸

好像手机都不行,桌面都更新了

现在发消息用的这个Chrome 153测试通过,其它的全军覆没

电脑上的Chrome155,edge154都没问题
手机上的firefox和系统自带的浏览器也没问题,微信内置的浏览器也没问题

  • curl 无问题
> curl -I https://dv-g3b-emudhra.we-have-a-problem.com/                                    
> curl: (35) schannel: next InitializeSecurityContext failed: CRYPT_E_REVOKED (0x80092010) - 证书已被吊销。

  • python3.12.10 中招
> python -c "import requests; print(requests.get('https://dv-g3b-emudhra.we-have-a-problem.com/').status_code)"
> 200
  • node.js 22 中招
> node -e "https = require('https'); https.get('https://dv-g3b-emudhra.we-have-a-problem.com/', res => consol
e.log('Status:', res.statusCode)).on('error', err => console.error('Blocked/Error:', err.message));"
> Status: 200

Firefox 158.0.1 没有问题

1 个赞

vivaldi 7.8.3925.56(万年没更新,内核chromium144.0.7559.114)和edge155.0.4283.62 显示net::ERR_CERT_REVOKED
Catsxp 6.8.1 (Chromium: 151.0.7922.70)中招
手机:brave中招
公司电脑:Firefox 156.0中招;更新到158.0.1还是一样;chrome 155.0.8059.80中招,更新到156.0.8078.48还是一样。感觉跟公司网络受限有关?

老版本的 chromium、librewolf 可以打开

《Tunak Tunak Tun》开头是怎么唱的?

我手机的webview竟然拦住了

安卓手机基本上都有可信凭据的开关的吧。自带的一些CA应该是可以关掉一些的,比如这次出事的这个CA

安卓从我刚用的4.0开始就有了这个CA开关功能。现在只是不让用户在无root下自己添加CA了而已,自带

安卓用这种方法对via这种webview浏览器很有用,带内核的浏览器还不清楚

卡巴斯基拦截了

IE11:

好家伙,Google Chrome 87拦了,ungoogled-chromium 150没拦

vivaldi没问题,版本号是8.2.4133.89

edge 150,能打开

弄了半天也没搞懂怎么拉黑这个CA,不是太想升级到最新版。