最近,Google针对Gmail被攻击事件, 全面默认启用了始终以https访问Gmail的方式了。但是,对于可以动用整个国家力量的黑客来说,从网络通讯数据中(在此不讨论对用户电脑种木马破解 https的情况,只讨论在网络通讯数据中破解https的方法)破解https除了暴力破解(暴力破解https即使按照现在的集群计算能力仍旧需要几 百至几万年不等)之外真的别无他法了吗?事实并非如此。
我们知道,https的安全性主要是由SSL证 书中的公钥和私钥来保证的。浏览器与服务器经过https建立通讯的时候(不考虑SSL代理方式需要用户提交证书的情况,因为我们现在讨论的是浏览器访问 网站,和SSL代理无关)会按照以下步骤保证通讯的安全性:
1、浏览器连接服务器,服务器把SSL证书的公 钥发送给浏览器
2、浏览器验证此证书中的域是否和访问的域一致 (比如用户访问https://mail.google.com/时,浏览器验证服务器发送过来的SSL证书的公钥中的域是否为 mail.google.com或*.google.com)并没有过期
3、如果浏览器验证失败,浏览器通知用户证书有 问题,让用户选择是否继续
4、如果浏览器验证成功,那么浏览器随机生成一 个对称密钥并使用接收到的SSL证书的公钥进行加密并发送给服务器
5、服务器通过SSL证书的私钥对收到的信息进 行解密并得到浏览器随机生成的对称密钥
6、最后服务器和浏览器都通过这个对称密钥进行 通讯了(为什么不直接使用公钥和私钥进行通讯?因为非对称加密比对称加密效率低)
这个方案看似完美,却无法抵御中间人攻击,攻击 者可以按以下步骤实施攻击截取https通讯中的所有数据:
1、攻击者伪造一个Gmail的SSL证书,使 其中的域为mail.google.com或*.google.com,并设置合适的证书过期时间
2、攻击者等待访问者的浏览器访问Gmail 时,通过DNS劫持或IP伪造(对于有路由器控制权限的黑客来说简直轻而易举)的方法使其访问到攻击者的服务器上
3、攻击者把伪造的SSL证书公钥发送给浏览器
4、浏览器验证SSL证书的域和过期时间都没 错,认为访问到的就是Gmail本身,从而把对称密钥发送给黑客服务器
5、黑客服务器把伪造的Gmail网页通过收到 的对称密钥加密后发送给浏览器
6、访问者通过浏览器输入Gmail帐户,发送 给黑客服务器,黑客服务器通过收到的对称密钥解密后成功获得访问者的Gmail密码
为了抵御这种中间人攻击,SSL证书需要由可信 的SSL证书颁发机构颁发,形成一个证书链(比如Gmail的证书链为:最底层为网域mail.google.com,上一层为Thawte SGC CA证书颁发机构,最顶层为很有名的VeriSign证书颁发机构)。那么,浏览器除了需要验证域和有效期外,还要检查证书链中的上级证书公钥是否有效, 上级的上级证书公钥是否有效,直至根证书公钥为止。这样就可以有效避免中间人攻击了,因为根证书公钥都是预装在操作系统中的,黑客如果不是暴力破解,无法 得到根证书的私钥,如果黑客自己生成一个私钥,浏览器验证根证书公钥的时候发现无法通过操作系统中预装的公钥加密数据后使用这个私钥进行解密,从而判定这 个公钥是无效的。这个方案也是现在https通讯通常的方案。
那么,这个现在所有的浏览器正在使用的 https通讯方案就无懈可击了吗?答案仍是否定的。我们可以看到,在后一个方案中,https的安全性需要在证书颁发机构公信力的强有力保障前提下才能 发挥作用。如果证书颁发机构在没有验证黑客为mail.google.com的持游者的情况下,给黑客颁发了网域为mail.google.com的证 书,那么黑客的中间人攻击又可以顺利实施:
1、攻击者从一家不验证 mail.google.com持有者的SSL证书颁发机构WoSign那里得到了网域为mail.google.com的证书,此证书的证书链为:最底 层为网域mail.google.com,上一层证书颁发机构为WoSign,顶层证书颁发机构为VeriSign
2/3、第二、第三个步骤同上一个方案的中间人 攻击的第二、第三个步骤
4、浏览器验证SSL证书的域和过期时间都没 错,继续验证证书链:
4.1、最底层的网域 mail.google.com证书公钥不在操作系统中,无法验证其访问到的就是Gmail本身,继续验证上一层证书颁发机构
4.2、上一层证书颁发机构WoSign的 公钥也不在操作系统中,仍旧无法验证其有效性,继续验证上一层证书颁发机构
4.3、浏览器看到顶层证书颁发机构 VeriSign的公钥在操作系统中,认为证书链有效,从而把对称密钥发送给黑客服务器
5/6、第五、第六个步骤同上一个方案的中间人 攻击的第五、第六个步骤。黑客成功获得访问者的Gmail密码
然而,不验证域名持有者就颁发证书的情况在国外 几乎不会发生,但是在国内就不一定了。针对破解目标,国内证书颁发机构WoSign(在此只是举例国内比较有名的证书颁发机构WoSign,并不代表 WoSign今后一定会这么做)很有可能为了上级要求颁发了证书给非域名持有者的黑客,从而使得破解目标的Gmail密码被黑客截取。
那么,国内的破解目标是不是使用https的 Gmail也无法保证安全了呢?欢迎与我进行探讨。
来源:读者lehui99投稿,投稿人 Email为:leh...@gmail.com,Google Wave为:leh...@googlewave.com。
哈 哈大侠 于 2010-1-18 5:53:39 回复呵呵,不是搞技术的看不懂很正常。
这里说的其实是https网址的大概通讯流程
不过我认为,既然所有的东西,都要通过网络传输,那直接捕获整个过程,要解开其中的内容又有什么难的呢。
sunwen 于 2010-1-17 23:31:18 回复中国的公务员也看月光博客啊?
lanbo 于 2010-1-18 0:12:04 回复美国公务员中文说的真好
ming 于 2010-1-18 0:35:11 回复好多五毛。
lehui99讨论可能的攻击手段是好事情。
ming 于 2010-1-18 0:37:01 回复连中级CA都无法保证安全的话,那我们上网银岂不是。。。。。。无法想象。
lehui99 于 2010-1-18 0:41:39 回复用专业版带客户端的网银应该好一点,固定证书的,这个就不看CA证书了,证书直接集成在客户端中。
abc 于 2010-1-18 7:31:29 回复别总用中国的想法去思考,美国是三权分立的,政府没这么大自由度。“美国司法部要求Google公司提供百万个网站地址及用户输入的搜索关键词等资料, Google公司对此要求表示拒绝。美国地区法院就Google公司与司法部之间的纠纷作出裁决,要求其向司法部提交部分索引网址,但无需提交用户输入的 搜索关键词等信息。”美国政府为什么不敢把关塔纳摩的人转移到美国去,就是要逃避美国国内法的管辖。
你 是好×员 于 2010-1-18 12:06:59 回复你是个好×员,支持×员多上网!
isomezero 于 2010-1-18 18:07:38 回复你收五毛的银行账号被盗了,你不会去银行挂失?
块 头 于 2010-1-20 14:00:02 回复来,收五毛
sunwen 于 2010-1-17 23:31:37 回复中国的公务员也看月光博客啊?
cb 于 2010-1-19 6:10:29 回复公务员肯定轮不上,人家现在都裸体做官,谁会到技术博客上反美帝?也就是个底层的5毛
lehui99 于 2010-1-17 22:46:35 回复吊销WoSign之前Gmail帐户已经被破解了,而且可以小范围针对部分人士做DNS劫持或IP欺骗,上层根本查不出来。
zvhdd 于 2010-1-18 15:30:01 回复考虑到国内的现实情况,还真的做得出来……
lehui99 于 2010-1-17 23:20:20 回复通过证书链,并且顶层证书存在于操作系统中。
lehui99 于 2010-1-17 23:25:28 回复哦,你是说开证书颁发机构的资质吧?这个我也不是很清楚。
lehui99 于 2010-1-18 0:51:00 回复中级机构的资质是顶级机构给的,顶级机构的资质是操作系统给的(因为顶级机构的证书集成在操作系统中)。
路 人 于 2010-1-19 1:53:02 回复那干脆通过立法或者其他手段、直接要求微软或OEM商在操作系统中内置ZF自己可控的根证书体系。
lehui99 于 2010-1-17 23:22:45 回复何出此言?国际知名安全机构VeriSign(也是顶层证书颁发机构)已经验证了Google提交的证据了,也已经证实了Google和其他20家公司被 攻击了。
else 于 2010-1-17 23:27:31 回复证据?
lehui99 于 2010-1-17 23:30:43 回复可以去搜一下,VeriSign已经找到攻击IP,并且将要找到控制这些肉鸡的控制主机了。
else 于 2010-1-17 23:54:39 回复额,我是想知道五毛喷那话有什么证据……Google的遭遇我一直在关注呢
白 胖 于 2010-1-18 5:38:54 回复是啊,我也很气愤google污蔑胡总!大家到google.com上搜索一下纳米比亚 胡 锦 涛就知道了。我们胡core是那样的人吗?我们胡公子是那样的人吗?
五 毛走好 于 2010-1-28 15:33:05 回复拜托,Google只是忠实反映互联网上存在的东西而已。那东西又不是Google自己杜撰的。倒是国内很多人见不得某些东西,就闭上眼假装不存在,也不 让别人看。报道新闻的时候也能随便颠倒黑白。
lehui99 于 2010-1-17 23:27:49 回复OpenVPN或基于OpenVPN等固定证书类型的VPN的话(当然,要求VPN服务器在国外,否则还是无法防御),可以防御这种攻击。
lehui99 于 2010-1-17 23:44:05 回复以后上Gmail手动验证中级颁发机构是不是Thawte也是一种办法。
是 吧 于 2010-1-17 23:53:30 回复证书的颁发者也是可以篡改的。
从技术层面应该不是问题吧?
lehui99 于 2010-1-17 23:57:47 回复无法伪造证书颁发机构,因为顶级证书颁发机构对下属证书的公钥做了签名,黑客无法赚改证书颁发机构的名称。
啊 哦 于 2010-1-17 23:32:34 回复请问 Root CA 在什么目录?
lehui99 于 2010-1-17 23:33:59 回复关键国内的都是中级颁发机构,不在系统中。但是上层机构是国外的而且在系统中,无法删除(删除的话,每个网站的https都要手工验证了)。
lzuxz 于 2010-1-17 23:46:08 回复ok了,不过打开一个邮件以后又变成红色的感叹号了。
不 是吧 于 2010-1-17 23:48:08 回复不是吧? 红色很危险 ...
是 吧 于 2010-1-17 23:51:16 回复lehui99, 请问APPS邮局的用户是不是安全更难保障?
lehui99 于 2010-1-17 23:52:01 回复你查一下https的证书链,颁发机构分别是什么?
lehui99 于 2010-1-17 23:54:14 回复APPS的mail和普通的Gmail的安全性是一样的。对于可以劫持整个国家网民的域名的黑客来说,劫持你的域名和劫持Gmail的域名来说是一样的。
是 吧 于 2010-1-17 23:54:41 回复如果用户 HOTS mail.google.com 的IP, 这种可防性是不是会提高?
lehui99 于 2010-1-18 0:04:48 回复这样浏览器会报警,说SSL证书错误。或者浏览器地址直接是http而不是https的。
lehui99 于 2010-1-18 0:08:28 回复在hosts中写上mail.google.com的IP也没用,有路由器控制权限的人,可以通过伪造IP的方式让你访问到钓鱼站点。
是 吧 于 2010-1-18 0:09:28 回复恩,我也认为是,肯定会报错误。
如果把IP封了,也没问题,就是打不开。
哈哈, 是不?
是 吧 于 2010-1-18 0:10:50 回复草了,那么多IP,它真要伪造,那也玩的太彻底了吧?
lehui99 于 2010-1-18 0:11:39 回复嗯,或者地址栏不是https而是http的。
lehui99 于 2010-1-18 0:14:02 回复也就4个IP:
Name: googlemail.l.google.com
Addresses: 64.233.189.83, 64.233.189.18, 64.233.189.17, 64.233.189.19
Aliases: mail.google.com
是 吧 于 2010-1-18 0:15:07 回复你小子,全列出来,以后别想上了。。哈哈
是 吧 于 2010-1-18 0:16:41 回复不, 你没找到全部, 我自己设定的IP 就不一样, 看来你还没找全, 不过算了, 别列出来了。。。
lehui99 于 2010-1-18 0:09:32 回复国内有很多中级CA。
lehui99 于 2010-1-18 0:23:06 回复恩,不过大多数人都不会去改hosts上Gmail。所以如果被攻击,大多数人的Gmail帐户还是被黑了。
lehui99 于 2010-1-18 0:26:19 回复这样只是通过邮箱收SSL证书破解https,国内CA如果乱来,完全不用邮箱就可以破解https。
lehui99 于 2010-1-18 0:53:55 回复现在的情形恰恰相反,国内的情形都不用大家说了。。。
lehui99 于 2010-1-18 10:34:50 回复没看懂吗?此处只是假设罢了,不要不打自招,攻击Gmail为什么只是针对那些特定用户?想想看就知道了。国内的现状不得不让人怀疑国内所控制的一切
死 的蚊 于 2010-1-18 17:43:14 回复你说还有谁能动用整个国家力量?月光只是假设这个对象还可能是个黑客而已!
蜗 居宅男 于 2010-1-18 20:14:12 回复可以调动一个国家的黑客 我想说有点 比如朝鲜 伊朗等等 您也不用多想
边 走边看 于 2010-1-18 12:46:36 回复无畏者无知!!!
fzfz 于 2010-1-19 10:46:31 回复五毛的习惯用语就是别有用心,和日人民报一个口吻
灰 常开心 于 2010-1-18 10:56:49 回复不会的吧
人家肯定是有纪律的,怎么会乱来呢?
lehui99 于 2010-1-18 12:15:07 回复http的钓鱼可以发现浏览器不是https的。偷偷导入假个根证书就要控制别人电脑了。
是 吧 于 2010-1-18 14:17:48 回复这样也太大胆了,保存证据会很没面子的,甚至将传送至国际法庭...技术和隐秘性拙劣到及至,后果非常严重。 不过CA 破IE 如果本证实, 那影响要比钓鱼严重10000倍.
了 于 2010-1-18 15:40:21 回复网狗在此,五毛在此
孤 山客 于 2010-1-18 22:49:33 回复那是因为GG取消了.com的某些关键词屏蔽,但.cn还没有
fzfz 于 2010-1-19 10:44:42 回复铁血的s13就留在你们那s13网站自娱自乐好了,干嘛出来啊,看你说的那些幼稚的东西,你到底懂不懂技术?懒得回答你
lehui99 于 2010-1-18 14:27:19 回复根本不用看邮件内容。照你的逻辑,那么攻击这些帐号的人已经事先知道了这些帐号中的邮件内容了?那他们还要去攻击获取邮件内容怎么说?
cb 于 2010-1-19 6:18:36 回复google一下用户名或者email,不就可以了?
当然5毛都是社会底层的脑残人士,这些都想不到的.
helloapp 于 2010-1-19 10:13:52 回复我还是没看懂你们俩的回复啥意思
比如说我注册了个gmail帐号,google知道我是谁吗?google知道我是搞人 -- 权工作的,还是从事科技工作的?不看我的邮件内容google能确定我是干啥的啊?
PS:动不动就说人五毛真是够无聊的。我还是谷歌的fans来着。
fzfz 于 2010-1-19 10:43:03 回复很多你说的这些人是在美国的,他们没有权利对google投诉,你是否知道有客服这两个字?你的银行账号被盗了,你会不会报警?s13
lehui99 于 2010-1-18 23:12:10 回复本文的关键是:“有效”第三方或者其它“可靠”媒介在国内某些团体的权力下是完全有能力被借助的
NA 于 2010-1-19 11:52:35 回复我骂的是楼上骂谷歌的白痴!
lehui99 于 2010-1-21 17:14:01 回复是说4.1 - 4.3吗?一般只有部分中级证书颁发机构才会存在于操作系统中,所以很多时候浏览器只有验证到根证书颁发机构的时候,才能确定其有效性。
qwb 于 2010-1-27 9:29:10 回复你以为163啊~
qwb 于 2010-1-27 9:29:48 回复我回错了 回的是楼主
lehui99 于 2010-1-27 15:44:52 回复要看是什么类型的VPN。如果是OpenVPN类似的本身使用固定SSL证书的VPN,那么可以不受国内的网络控制。
zzz 于 2010-1-27 21:48:45 回复现在想要一个真正安全的聊天工具都没有 听说skype英文版加密安全不错
也不知道是不是
lehui99 于 2010-1-28 13:21:28 回复Windows自带的还无法防止这种攻击,Windows自带的VPN本身就无法防止中间人攻击。
lehui99 于 2010-1-28 20:36:25 回复从此,SSL劫持会变得非常普遍
xxxx 于 2010-1-28 22:14:38 回复这就是天朝 还好我有自己的俩层韩国VPN
用自己韩国服务器架的! - -
troyt 于 2010-1-29 10:27:32 回复这下无敌了,可以明目张胆的进行劫持了。。。