近日,一名自称Moxie Marlinspike的研究员发现了一种新型的破解SSL协议的方法。SSL主要用于电子商务和银行等一系列网站的安全登陆保护。
这位研究员表示,攻击使用了一个可以利用http和https会话之间的接口的SSLstrip工具,并演示了通过劫持安全套接字协议层(SSL)会话来截获注册数据的方法。据悉,SSLstrip可以通过中间人(man-in-the-middles )的方式攻击网络里所有的潜在SSL连接,特别是http和https之间的接口。
为了证明这种攻击的威力,他还声称自己在24小时内已经截获了117个电子邮件帐户,7个Paypal注册资料,16张信用卡号码,以及涉及百度、Hotmail、Gmail和Ticketmaster等网站的其他300多个安全登陆详细信息。
该攻击主要依赖于用户在浏览器中输入URL却没有直接激活SSL会话,而大部分用户激活(SSL)会话都是通过点击提示的按钮。这些按钮一般出现在未加密的Http页面上,一旦点击它们将把用户带入加密的Https页面进行登录。
Marlinspike称,SSLstrip之所以能够成功运行,是因为使用SSL的大多数网站通常首先为访问者提供一个未加密的页面,只有开始传输敏感信息部分时才开始提供加密保护。举例来说,当一个用户点击一个登录页面时,该工具会修改网站未加密的响应,使“https”变成“http”。然而,网站却一直以为连接是受加密保护的。
为了让用户相信他正在使用一个加密的连接同预期的站点通信,SSLstrip利用了一些现成的漏洞:首先,此工具在局域网上使用了一个包含有效SSL证书的代理,使得浏览器会在地址栏显示一个“https”。其次,它使用homographic技术创建一个长的URL,在地址中包含了一系列伪造的斜杠。(为防止浏览器将这些字符转换成Punycode,他必须获得一个用于*.ijjk.cn的通配 SSL 数字证书)。
“可怕的是它看来像https://gmail.com ,”Marlinspike说,“问题在于http和https之间的桥接,而这是SSL在web中部署方式的基础部分”。 要想改变这些绝非易事。”
Marlinspike已经成功将该攻击应用于使用Firefox和Safari浏览器的用户身上,虽然他还没有在IE上做实验,但是估计也不会有什么问题。 即使没有,他说,也有足够的理由相信,即使小心谨慎的用户也不会将时间花在确保他们的会话是否被加密这些事情上。
曾在2002演示了一个单独的https爆破工具SSLSniff的Marlinspike表示,目前,该漏洞还没有行之有效的解决方法,并且将来可能还会看到更多新型的利用方法。