NSA 如何窃听 Google 的加密流量——当 HTTPS 遇到 CDN

2016-01-06 11:47:57来源: 热度:

华盛顿邮报曾根据斯诺登泄露出来的 PPT 报道过美国国家安全局(NSA)在云端监听 Google(包括 Gmail)和 Yahoo 用户的加密通信。然而我们知道 Gmail 是使用 TLS 保护的,NSA 是如何破解 Google 的 TLS 加密通信的呢?

图1. 在美国 NSA 和英国 GCHQ 联合计划 MUSCULAR 中,NSA 和 GCHQ 绕过 TLS 加密,在云端监听后端的明文通信

图1. 在美国 NSA 和英国 GCHQ 联合计划 MUSCULAR 中,NSA 和 GCHQ 绕过 TLS 加密,在云端监听后端的明文通信

 

1. 问题分析与测试

目前主流网站都依赖 HTTPS(HTTP over TLS/SSL)实现服务器认证、数据加密和完整性保护,比如 Google 几乎所有应用都在 HTTPS 的保护之下。同时,主流网站也普遍使用了 CDN(Content Delivery Network)技术(虽然有些互联网公司使用自己开发的类似平台,他们并不叫 CDN 这个名字),用以提高网站的性能、可靠性和安全性。目前,HTTPS 和 CDN 技术几乎都已成为商业网站必须的基础服务。

然而长期以来,HTTPS 和 CDN 两种技术的设计和发展是独立的,HTTPS 设计之初是一种端到端(End-to-End)的协议,而 CDN 却是以中间人(Man in the Middle)的方式工作。原始网站是如何授权给中间的 CDN 厂商、如何完成浏览器 - CDN - 原始网站之间的身份认证、秘钥交换和数据保护,以及如何撤销这种授权,无论学术界还是工业在以前都没有没有系统性的考虑。

我们在 Oakland’14(IEEE Symposim on Security & Privacy)发表了论文 “When HTTPS Meets CDN:  A Case of  Authentication in Delegated Service”,首次提出了 HTTPS 在 CDN 环境中授权服务的认证问题,把两种技术结合在一起进行了系统性的研究。我们调研了 Akamai、CloudFlare 等世界上主流的20个 CDN 服务商,以及一万多个支持 HTTPS 的热门网站(同时也是上述20个 CDN 厂商的客户),揭示出了当前 HTTPS 在 CDN 部署中的许多问题。

首先是 CDN 节点和后台源服务器之间的通信很容易受到中间人攻击。

我们测试了5个 CDN 厂商的后台通信,发现尽管浏览器到 CDN 节点的通信使用 HTTPS 加密,有的厂商使用明文的 HTTP 与后台服务器进行通信(CDN77、CDN.NET);有的厂商虽然使用了 HTTPS,却不验证证书的有效性(即可以使用自签名的证书伪造任何网站,存在问题的厂商包括 CloudFlare 和 InCapsula);有的厂商(如 Amazon 公司的 CloudFront)虽然要求合法证书,但是却不验证证书的 Common Name。

图2.有些 CDN 的后端通信使用不加密的 HTTP 进行传输

图2.有些 CDN 的后端通信使用不加密的 HTTP 进行传输

其次是浏览器和 CDN 节点之间的授权认证问题。

我们发现很多 CDN 厂商要求源网站提交自己的公钥证书和私钥,这严重破坏了 PKI 安全信任的基本原则,即私钥必须是严格保密、不能与第三方共享的。尽管也有替代的方案不要求用户共享私钥,比如使用客户证书(Custom Certificate)或者共享证书(Shared Certificate)方案,但是秘钥管理复杂,客户网站无法自主的撤销自己对 CDN 厂商的授权,作为可信第三方的 CA 也没有撤销体现授权关系的共享证书。

具体细节可以参考我们的论文原文和 Oakland 会上所作报告的演讲。

 

2. 实际攻击的案例

在现实互联网中,中国教育和科研网应急响应组 CCERT 在2014年初曾经收到过类似的攻击报告,苹果公司(Apple)使用的 CDN 厂商 Akamai 的某些节点已经受到了类似的攻击,导致苹果公司源网站上的 JavaScript 页面被替换成了翻墙软件自由门的使用手册。我们与 Akamai 的技术人员确认过,的确是他们的 CDN 节点和后台的服务器之间使用 HTTP 协议传输,导致通信被劫持,某些 CDN 节点的缓存数据被污染了。

本文一开始的问题,也是由于 HTTPS 在 CDN 实现中的问题所致。根据斯诺登泄露出来的PPT,我们知道美国国家安全局 NSA 和英国的情报机构 GCHQ 在他们联合计划 MUSCULAR 中,他们也使用了类似的技术监听 Yahoo 和 Google 的通信:由于类似 CDN 的 GFE(Google Front Engine)与提供内容的后台服务器使用了不加密或安全性较弱的通信协议,NSA 和 GCHQ 可以绕过浏览器端和 CDN 之间的 TLS,在后台直接监听明文的通信。正如图灵奖得主、著名密码专家 A. Shamir 所言:“Cryptography is typically bypassed, not penetrated.”

 3. 解决方案

在论文的撰写过程中,我们向涉及到的 CDN 厂商都通报了这一问题,并和 CloudFlare、Akamai 等公司的技术人员有过多次交流,我们所报告的问题得到了所有联系到的厂商的认可。其中,CloudFlare 公司在得到我们论文后,很快推出了更加安全的服务 Strict SSL,并宣称这一服务可以挫败 NSA 对后台通信的监听。

然而浏览器和 CDN 前端的授权问题却不只是实现上的问题。为解决这一 HTTPS 在 CDN 服务中的授权问题,我们在论文中提出并实现了一个基于 DANE的轻量级的解决方案,DANE (DNS-based Authentication of Named Entities)是 IETF 制定的标准,以完善 Web 网站的 PKI 信任模型。我们的实现表明,在 CDN 环境下实现安全、高效的 HTTPS 通信是可行的,但是由于 DNSSec 和 DANE 的部署并不普及,这一方案离工业界的普遍部署还有一定的距离。我们希望推进 CDN 和安全领域中进一步的研究,希望有更加有效的解决方案。

 

 

责任编辑:贾利青

为您推荐

975元包13月130G流量 TD上网推年套餐

北京移动推出TD无线上网套餐,975元可使用13个月,共130G本地流量。根据北京移动页面提示,130G本地流量相当于“16000封250字Email+8000首4MMP3+90000个100K网页+2600段20M视频+120部300M高清电影”。移动推出G3无线上网卡年套餐据悉,该套餐仅提供北京本地无线上网功能,不提供语音、短信及国内、国际漫游无线上网功能。自激活之日的当月起,为期13个月。使用期过后,无线上网USIM卡将无法使用。13个月内,北京本地数据流量超过130G,系统将自动关闭无线上网功能。北京移动还提醒称,本套装仅可在支持TD-SCDMA制式的无线上网设备中使用。另据悉,该套餐

Facebook超雅虎成第二大视频流量源

美国两大视频平台Tubemogul和Brightcove周四联合发布报告称,2010年第四季度Facebook仍为全球第二大媒体网站视频流量来源,排名首位的是谷歌。Tubemogul和Brightcove此前发布的报告显示,Facebook于去年第三季度超越雅虎,成为全球第二大向媒体网站提供视频内容的流量源。当时Facebook的视频流量占整个网络视频流量的9.6%,而谷歌的份额超过50%。最新数据显示,2010年第四季度Facebook进一步巩固了其地位,市场份额从第三季度的9.6%增至11.8%。谷歌为60%,而Twitter只有2%。在用户实际观看网络视频的时长方面,Facebook和T

流量缺乏 IPv6未来走势不明朗

互联网面临四十年来的一次最重要升级:目前的IPv4互联网协议升级到IPv6,新协议可以支持网络容纳更多的网民和网络设备。不过,对于政策制定者、工程师和大型用户社区来说可并不轻松,他们需要讲述向IPv6升级转变的情况,因为没有谁能准确、全面地讲清楚IPv6和IPv4自己的网络流量对比。IPv6流量测试问题及时给了网络工程师社区对最大一次IPv6试用的准备预期:六月八日世界IPv6日。截至目前,225家网站经营者——包括谷歌、雅虎和Facebook——已经同意将各自网站的网络内容以IPv6的形式连接网络一整天。缺乏准确的IPv6流量数据,但这次WorldIPv6Day的发起者还是参与者都将可以获知

iOS网页流量美国份额首次超越Mac OS

苹果在2011年第四季度时曾宣布3700万iPhone以及1530万iPad的历史性销量,而一个重大转变也自此诞生。根据互联网广告联盟Chitika的追踪调查结果,目前iOS在美国的网页流量已经正式超过了MacOS,这在苹果历史上尚属首次。据了解,Chitika在公布这项结果背后经历了长达半年的调查——从2011年的8月中旬直到2012年的2月,为的就是对iOS设备与Mac电脑之间的上网使用情况进行准确对比,以侧面了解在两大平台当中的用户增长与流失。我们可以在Chitika公布的这张曲线对比图当中看到,在2011年8月中旬的时候,iOS在网页流量的占有率上还与Ma