2010 年 6 月某个星期一,明斯克的一家小型反病毒公司 VirusBlokAda 的工程师 Sergey Ulasen 收到一份样本。他白俄罗斯的一位客户在伊朗有合作伙伴,那位伊朗工程师反映自己的工业电脑反复死机,重装系统也没用。Ulasen 在调试器里跑了几个小时,发现这不是普通的恶意代码——它用真实的 Realtek 数字签名签了名,包含至少四个 Windows 0-day 漏洞,并且只在特定型号的西门子 S7-300 PLC 上才“醒来”工作1

到 2010 年 9 月,赛门铁克、卡巴斯基、Langner Communications 等几家公司接力做完了完整逆向。他们把这份代码命名为 Stuxnet——名字取自代码内部两个字符串:“.stub” 与 “MrxNet.sys”。逆向结论震惊了整个安全圈:这不是一份普通的恶意软件,它是一件武器——专门设计来破坏伊朗 Natanz 浓缩设施的离心机2

写这段代码的人,不是某个有钱的犯罪集团,不是某个研究生的炫技项目。它的开发投入超过 1000 万美元,使用了 4 个未公开的 0-day 漏洞(在此之前,任何已知恶意软件最多用过 2 个),需要详细的西门子设备指纹、IR-1 离心机的物理参数、Natanz 设施的内部网络拓扑。这些资源与情报只有少数几个国家级行为者能凑齐1

两年后,2012 年 6 月 1 日,《纽约时报》记者 David Sanger 在他的新书《Confront and Conceal》节选中给出了答案:Stuxnet 是美国国家安全局与以色列 8200 部队联合开发的,项目代号 Olympic Games——由小布什批准启动,由奥巴马批准加速3

世界第一次直接看到,一段代码可以炸毁一座设施。从那一刻起,“网络战”不再是学术词语。


Stuxnet 的破坏方式值得停下来看一下,因为它解释了为什么它如此具有里程碑意义。

Natanz 是伊朗最大的铀浓缩设施,建在地下 8 米。它使用 IR-1 离心机——基于巴基斯坦科学家 A.Q. Khan 在 1980 年代偷自荷兰的 P-1 设计。这种离心机本身脆弱,正常工作转速 1,064 Hz,超出这个区间就会因为机械应力损坏2

设计 Olympic Games 的人意识到:要破坏伊朗的核计划,不需要轰炸 Natanz——只需要让离心机“自己坏掉”。

他们做了三件事。

第一是渗透。Natanz 是物理隔离的(air-gap),互联网无法触及。攻击者通过感染至少 5 家伊朗合作公司、用受感染 USB 投递的方式,让代码搭乘工程师的随身设备进入设施。“Patient zero”是谁至今未公开2

第二是隐蔽。Stuxnet 进入 PLC 控制系统后做两件事:把离心机的实际转速记录“回放”成正常数据反馈给监控屏幕;同时把转速短暂提升到 1,410 Hz 持续 15 分钟,然后回归正常。27 天后,再把转速降到几百赫兹持续 50 分钟。反复的应力变化导致离心机内部铝合金管变形、撞击、损坏,而控制室的操作员看到的所有指标都正常。

第三是破坏。2009-2010 年期间,估计 1,000 台离心机被毁——约伊朗当时总量的 1/6。Natanz 的工程师反复更换离心机但找不到原因;伊朗一度怀疑是设备质量问题,更换了供应商后问题仍在。

整个破坏过程的精妙在于:伊朗政府长时间不知道自己被攻击。他们感到设施有问题,但归因到工程问题、采购问题、培训问题。Stuxnet 的设计目标本来就是让破坏看起来像“正常故障”——这是国家级网络武器与普通恶意软件最根本的区别3

Stuxnet 最终被发现的原因是一个编程错误。它本来应该只在 Natanz 内部传播,但因为一段代码 bug,它扩散到了 Natanz 之外的工程师笔记本上,再随着这些笔记本进入互联网。如果没有这个 bug,Stuxnet 可能至今未被公开归因。


Stuxnet 公开后的几年,世界看到了一连串它的“亲戚”——同一家族的代码,用来收集情报而不只是破坏:

  • Duqu(2011 年公开):与 Stuxnet 共享多段代码,专注信息窃取
  • Flame(2012 年公开):复杂的间谍工具,针对伊朗、苏丹的政府机构
  • Gauss(2012 年公开):针对中东银行的金融监控
  • Wiper(2012 年):擦除伊朗石油部的数据

每一份的复杂程度都不亚于 Stuxnet。它们共同指向一个事实:美国与以色列联合维持着一条网络武器生产线,Stuxnet 只是这条流水线被偶然撞见的那一件4

更重要的是 Stuxnet 改变了全球网络战的预期。在 Stuxnet 之前,俄罗斯、中国、伊朗、朝鲜对网络武器的投资都在“概念阶段”。2010 年之后,几乎每一个有能力的国家都加速建立了自己的网络战部队:

  • 中国在 2015 年成立战略支援部队网络空间部队
  • 俄罗斯 GRU 的 26165 部队(“Fancy Bear”)与 74455 部队(“Sandworm”)成熟于 2010 年代
  • 伊朗 IRGC 网络部门 2011 年成立,2012-2013 年发起 Operation Ababil 攻击美国银行
  • 朝鲜 Lazarus Group 在 2014 年攻击 Sony Pictures,2016 年抢劫孟加拉国央行

这些组织的工具与 Stuxnet 不在同一档次,但他们走的路是 Stuxnet 开辟的。Bruce Schneier 在 2014 年的一篇文章中写:“Stuxnet 不仅是第一款国家级网络武器,它还是第一份对所有其他国家的公开指南——告诉他们这种武器是可以造的,也是有效的。”5

潘多拉盒子打开之后,盖子再也合不上。


Stuxnet 是攻击工具。它让 NSA 拥有“打击”的能力。但 NSA 同时还有另一类工具——用来看见的工具。其中最具代表性的,是 XKeyscore

XKeyscore 在 2013 年 7 月 31 日被《卫报》首次详细报道。Snowden 提供的内部培训材料显示:这是一个分布式系统,覆盖全球 150 多个站点、700 多台服务器,主要部署在美国本土、海外军事基地和 Five Eyes 合作国6

NSA 内部把它称作 “DNI Exploitation System”——数字网络情报开发系统。The Intercept 在 2015 年的报道中给了它一个更形象的描述:“NSA 私有的 Google”7

XKeyscore 的工作流程是这样的:

  1. 在全球互联网骨干光纤上(包括 Upstream 项目下接入的 AT&T、Verizon 主干以及英国 Tempora 项目接入的跨大西洋光缆)以分光器方式截取所有过境流量
  2. 流量进入 XKeyscore 缓冲区,按 IP、邮件、用户名、关键词建立索引
  3. 完整内容保留 3-5 天,元数据保留 30-45 天
  4. NSA 分析员(包括 Five Eyes 盟友的分析员)可以输入任何“selector”(选择器)做实时搜索

可以输入的选择器包括邮箱地址、电话号、Facebook 用户名、Twitter handle、Google 账号、关键词、文档哈希、浏览器指纹。XKeyscore 还有一个让安全社区震惊的功能:它会自动标记“异常行为”——比如使用 Tor、PGP 加密邮件、搜索 “Linux installation tutorial”。这些行为本身被视为可疑信号,分析员被鼓励对这类用户做更深查询7

XKeyscore 的一个重要属性是无需任何法庭审批。Snowden 公开的内部材料明确说明:分析员可以在终端上自由发起查询,“事后审计”是唯一的合规要求。这意味着任何一个有 XKeyscore 访问权的 NSA 分析员——大约几千人——理论上可以在不被审查的情况下读取全球任意普通人的最近 3-5 天通信内容8

斯诺登在 2013 年 6 月接受《卫报》视频采访时说过一句被反复引用的话:

“I, sitting at my desk, could wire-tap anyone, from you, or your accountant, to a federal judge, to even the president if I had a personal email.”

“我,坐在我的办公桌前,可以监听任何人,从你、你的会计师、一名联邦法官,甚至总统——只要我有他的私人邮件地址。”

NSA 局长 Keith Alexander 当时公开否认这种说法,称这是“夸张”。两年后 The Intercept 发布的 XKeyscore 培训手册一一证实了 Snowden 的描述7

XKeyscore 还与德国情报机构有深度合作。德国联邦情报局(BND)与宪法保卫局(BfV)在 NSA 授权下使用 XKeyscore——这一点 Der Spiegel 在 2014 年 6 月公开后,引发德国国内长期的政治震荡。Snowden 在与 Der Spiegel 的访谈中用了一句相当不外交的话描述这种关系:“in bed together with the Germans.”6


XKeyscore 让 NSA 能在公网上看见任何过境流量。但更敏感的是 MUSCULAR——NSA 看见 Google 与 Yahoo 内部网络的项目。

MUSCULAR 的工作机制极其讽刺。Google 与 Yahoo 都是 PRISM 的“配合公司”,按照 Section 702 的法定流程交付指定用户的数据。但 NSA 显然觉得“前门”还不够——所以又另开了一扇“后门”。

Google 与 Yahoo 在全球有许多数据中心:智利、爱尔兰、芬兰、比利时、台湾、香港、新加坡。数据中心之间用私有光纤同步数据(用户邮件、附件、视频、搜索历史)。在 2013 年之前,Google 与 Yahoo 都没有对这种内部传输加密——它们认为内部网络本身是安全的9

NSA 与 GCHQ 联手在这些海底光缆和路由节点上接入“水龙头”。因为操作发生在美国本土之外,FISA 法院没有管辖权——只需要总统行政命令 12333 的授权。截获的数据完全是 raw 状态:未加密的邮件正文、视频内容、用户的搜索查询、所有元数据9

2013 年 1 月 9 日的一份 NSA 内部记录显示:MUSCULAR 在 30 天内收集了 1.81 亿条记录9

2013 年 10 月 30 日《华盛顿邮报》公开 MUSCULAR 时,Barton Gellman 同时刊出了一张 Snowden 文件中的手绘 PPT——一张 NSA 工程师画的示意图,箭头标着 “SSL added and removed here”,旁边画了一个笑脸表情。这是 NSA 内部对自己的项目开的玩笑:他们知道 Google 在用户与服务器之间加 SSL,但当数据离开服务器进入内部光纤时,SSL 被剥掉了——这正是 MUSCULAR 下手的窗口10

这张 PPT 与那个笑脸的出现,让两位 Google 安全工程师崩溃了。Brandon Downey 和 Mike Hearn 在 Google+ 上公开发帖,标题就是 “Fuck these guys”,配图正是 NSA 那张 PPT。这是 Snowden 时代最经典的“科技公司员工愤怒”瞬间——一份不属于公司公关声明的、纯粹个人愤怒的发言11

Google 的反应是迅速的。2013 年 11 月,公司宣布加密所有 inter-datacenter 流量(RSA 2048 + AES)。Yahoo、Microsoft、Facebook 随后跟进。从这一刻起,MUSCULAR 的“原始数据宝库”开始干涸——但 NSA 当然不会承认这种损失。

MUSCULAR 的政治影响远超技术层面。它告诉所有科技公司:即使你们配合 PRISM 的法定程序,NSA 仍然会另开后门偷你们的内部数据。这种背叛感比 PRISM 本身更直接,催化了 2014-2016 年业界普及 HTTPS 与端到端加密的浪潮。


如果 XKeyscore 与 MUSCULAR 是 NSA 的“前台收集器”,那么 Bullrun 就是它的“幕后地基”——一个目的更深、影响更远的项目。

Bullrun(以南北战争的同名战役命名)是 NSA 自 2000 年代起的秘密计划,目标是系统性削弱全球商业加密标准,让 NSA 能解读大部分互联网通信。预算约每年 2.5 亿美元——与“传统破解”投入相当12

Bullrun 的手段是分层的。

第一层是标准影响。NSA 派代表参与 IETF、IEEE、NIST 等国际标准制定组织,“引导”标准向便于 NSA 破解的方向走。这种参与本身是合法的——美国政府机构当然有权参与国际标准。但参与背后的意图被 Snowden 文件揭穿。

最有名的案例是 Dual_EC_DRBG——一种被纳入 NIST 标准的椭圆曲线随机数生成器。2007 年微软的两位密码学家 Dan Shumow 与 Niels Ferguson 在 CRYPTO 会议上演示:这个标准的两个曲线参数之间存在数学关系,知道这个关系的人可以在看到一段输出后预测后续输出。换句话说,标准内置了数学后门12

2013 年 Snowden 文件证实:NSA 在 Dual_EC_DRBG 的标准制定过程中提供了那两个曲线参数。更具体地,RSA Security 公司收 NSA 1000 万美元,把 Dual_EC_DRBG 默认设置为旗下 BSAFE 加密库的随机数生成器。BSAFE 被大量金融、政府、企业系统使用——意味着这些系统的所有加密通信,理论上 NSA 都能解读12

2014 年 NIST 正式撤回该标准,但已经为时太晚。被 BSAFE 加密的数据已经存在了多年,已经被 NSA 收集了多年。

第二层是商业合作。Snowden 文件显示 NSA 与多家美国大科技公司、网络设备厂商存在“非公开协议”,要求或诱使它们:交出主密钥(master keys)、弱化随机数生成器、在产品中保留特定漏洞、提前披露未公开漏洞。具体的公司名单大部分至今未公开,但泄漏文件中明确提到 RSA Security 是案例之一12

第三层是未来破解。位于犹他州 Bluffdale 的 Utah Data Center(俗称 Bumblehive),建设投资 15-20 亿美元,2014 年正式投入运营,存储能力据估算达到 yottabyte 级(10²⁴ 字节)13。它的核心设计理念是 “store now, decrypt later”——把全球加密通信先大规模存下来,等未来计算能力(特别是量子计算成熟后)批量解密。

这是 Bullrun 的“时间维度战略”:NSA 不需要现在就破解所有加密,只需要保证有一天能破解。一段今天看不懂的密文,五年后、十年后总会有解开的方法。Utah Data Center 提供存储;Bullrun 提供未来的密钥;这两者构成了 NSA 对加密通信的长期围攻。

对密码学界来说,Bullrun 的揭露是一次集体震惊。多年来 NIST 被视为公正的标准机构,全球加密产品都建立在它的标准之上。一夜之间,NIST 失去公信力。学界与业界开始系统转向非 NIST 标准:Daniel J. Bernstein 的 Curve25519、Ed25519、ChaCha20-Poly1305 这些独立设计被快速采纳;Signal Protocol、TLS 1.3、Apple iMessage 都使用了非 NIST 推荐的曲线14

NIST 后来痛定思痛,引入了更严格的标准制定透明度。但损失已经发生——美国政府的“密码学公信力”在 Bullrun 之后再也没有完全恢复。


Stuxnet 让世界看到 NSA 能造什么。XKeyscore 让世界看到 NSA 能搜什么。MUSCULAR 让世界看到 NSA 能偷什么。Bullrun 让世界看到 NSA 能破什么。

但最让公众震撼的不是任何一个项目,而是 Boundless Informant——一张图。

Boundless Informant 是 NSA 自己用来做工作量统计的内部大数据可视化工具。它基于开源大数据栈(Cloudera Hadoop + HBase + MapReduce),把全球 504 个独立采集源(SIGADs - SIGINT Activity Designators)的数据按国家、时间、收集类型聚合成 PPT-ready 的彩色热图。它的用户是 NSA 管理层、国家情报委员会——一个让高层“知道自己机构在做多少”的工具15

2013 年 6 月 8 日,《卫报》发出 Snowden 文件中的一张 Boundless Informant 热图。统计周期是 2013 年 3 月的 30 天。数字是这样的:

数据类别30 天采集量
互联网数据记录(DNI - Digital Network Intelligence)970 亿条
电话数据记录(DNR - Dialed Number Recognition)1240 亿条
合计2210 亿条

折算下来,平均每秒约 8.5 万条。

热图按国家上色,从绿色(采集量少)到深红(采集量多)。颜色最深的几个国家可以预料:伊朗 140 亿条/月,巴基斯坦 135 亿条/月,约旦 127 亿条/月,埃及 76 亿条/月,印度 63 亿条/月16

但热图里有一个国家让欧洲公众无法忽视——德国,5 亿条/月

这意味着每个德国人——婴儿、老人、所有人——平均每月有 6 条通信被 NSA 记录。德国不是恐怖威胁,不是敌对国家,是北约盟友、是美国最重要的欧洲伙伴。但在 NSA 的工作量统计里,德国与伊朗、巴基斯坦并列在同一张图上。

巴西也在图上。法国、意大利、墨西哥也在图上——所有公开归类为“友好国家”的政府公民被同等记录。这张图打破了一个长期被维持的公开叙事:“NSA 只针对恐怖分子和敌对国家。”

更具杀伤力的是时间。2013 年 3 月 12 日,正好是这张图统计周期的中段。这一天 James Clapper 在参议院情报委员会的公开听证会上回答俄勒冈州参议员 Ron Wyden 的质询:“NSA 是否对成百上千万美国人收集任何类型的数据?” Clapper 的回答是:“不,先生,没有故意。”17

Boundless Informant 让这句话变成了一个有数字背书的谎言。NSA 内部完全清楚自己每秒钟收集多少条数据——这个工具的全部存在目的就是为了让管理层知道。Clapper 作为情报体系的最高公开代表,要么不知道这些数字(不可能),要么明知而撒谎。

Snowden 后来在《Citizenfour》纪录片中说:他选择把 Boundless Informant 放在第一周公开,正是为了让“NSA 受到良好监督”这种说法当场坍塌——“它是 Snowden 文件中最适合给公众看的一张图。不需要技术背景就能理解。数字直接而震撼。”15


把 Stuxnet、XKeyscore、MUSCULAR、Bullrun、Boundless Informant 这五个项目放在一起看,会出现一个 NSA 不愿意被看到的图景。

它们涵盖了一个完整的“监控生命周期”:

  • 生产:Stuxnet 与 ANT Catalog 提供攻击能力——破坏离心机、植入路由器、感染 iPhone
  • 铺设:Upstream 与 Tempora 让全球骨干网成为采集管道
  • 入屋:MUSCULAR 直接进入 Google、Yahoo 的内部光纤
  • 搜索:XKeyscore 让分析员在采集到的数据上做即时查询
  • 破解:Bullrun 让加密通信变得可读
  • 存储:Utah Data Center 让今天看不懂的密文等待未来的密钥
  • 统计:Boundless Informant 让管理层知道自己做了多少

每一个项目单独看都有它的“合理理由”——反恐、反核扩散、保护盟友、防范网络攻击。每一个项目也都有它的法律基础——FISA 702、行政命令 12333、Patriot Act 215。

但合在一起,它们构成了一个民主社会从未公开同意过的能力集合。德国总理在 2013 年 10 月接受默克尔被监听消息后说过一句被广泛引用的话:“Spähen unter Freunden – das geht gar nicht.”(在朋友之间监听——这根本不行。)18

这句话翻译成英语在美国国务院反复被引用,但每次都被回答得很模糊。原因很简单:在 NSA 的工作图谱里,“朋友”与“目标”之间没有清晰边界。Bullrun 削弱的标准不区分谁会用它;MUSCULAR 截获的数据不区分发件人国籍;XKeyscore 的查询不需要解释为什么。


这五个项目还有一个共同特点:它们的代码、规模、技术能力,一旦造出来,就无法被收回

Stuxnet 的代码已经被全世界的安全研究员逆向、分析、写成论文。任何有心人都可以从中学到“如何写一款针对工业控制系统的恶意软件”。它的某些技术后来出现在 BlackEnergy(2015 年攻击乌克兰电网)、Industroyer(2016 年攻击乌克兰电网)、Triton(2017 年攻击沙特石化厂)中。这些攻击不一定是 NSA 做的,但它们都直接受益于 Stuxnet 开辟的道路19

XKeyscore 的某些技术——分布式索引、selector-based 查询、“异常行为”自动标记——已经在以色列 Unit 8200 的对应工具、英国 GCHQ 的同类系统、中国的相应平台上被独立重建。一旦“这种工具是可能的”被证明,所有有能力的国家都会建一份自己的版本。

Bullrun 削弱的加密标准也不会自动愈合。多年来基于 Dual_EC_DRBG 加密的数据已经存在,可能已经被收集到 Utah Data Center 或其他国家的对应设施中。即使标准已经撤回,损失已经发生。

这是 NSA 监控架构最深层的悖论:它的能力越大,它失去这种能力的可能性也越大。Stuxnet 流出去了,扩散到了 Natanz 之外的互联网。NSA 的 0-day 武器在 2016-2017 年被 Shadow Brokers 偷走、公开(这是第 10 章的故事)。NSA 的招募与培训资源也在外流——许多前 NSA 员工进入私营情报公司,把“国家级监控能力”带到商业市场。

每一项 NSA 想要保密的东西,最终都流出去了。每一项流出去的东西,都让其他国家、其他公司、其他黑客组织得到了相同的能力。这是斯诺登泄漏文件之外的、更长时段的扩散过程。


回过头看 2013 年 6 月的 48 小时,公众第一次看到 PRISM 这张 PPT 时的震惊,其实只是冰山一角。

接下来三年里,每个月都有新的文件被披露。2013 年 7 月是 XKeyscore;8 月是黑色预算;9 月是 Bullrun;10 月是 MUSCULAR 与默克尔手机;12 月是 ANT Catalog。2014 年是 Treasure Map、Optic Nerve、CO-TRAVELER;2015 年是 Auroragold、Karma Police、Dishfire。每一份的复杂程度都不亚于 PRISM。

到了 2016 年,公众已经看见 NSA 工作图谱的相当一部分。但仍然有大量文件没有公开——根据 Greenwald 和 Poitras 的说法,他们手里的文件只发表了“几千份”中的极小一部分。剩下的存在多家媒体的加密硬盘里,按需取用20

这是 PRISM 时刻的最长尾效应:它不是一次性事件,是一个持续披露过程。每一次新公开都让公众重新意识到他们最初被告知的“NSA 在做什么”,只是冰山角的角。

也是在这种持续披露过程中,世界各国政府、企业、公民社会才有时间一层层消化这件事的含义。德国从 2013 年开始重新设计本国数据保护法律;欧洲从 2015 年 Schrems I 案开始拆解欧美数据流;中国从 2017 年开始用《网络安全法》要求数据本地化;俄罗斯从 2014 年开始要求互联网公司本地存储用户数据。每一项政策都直接或间接以 NSA 的某一项揭露为依据。

这些反应不是在 2013 年那 48 小时里决定的。它们是在接下来的十几年里、随着一份又一份 Snowden 文件被消化,逐步形成的。

PRISM 是入口。XKeyscore、MUSCULAR、Bullrun、Boundless Informant、Stuxnet 是房间。一旦走进房间,世界就再也没办法回到 2013 年 6 月 5 日之前那种“互联网是一个安全的全球公地”的天真。

那把刀是斯诺登交出来的。但切开来的,是整个监控国家的肉身。


References

  1. “Stuxnet.” Wikipedia. https://en.wikipedia.org/wiki/Stuxnet

  2. “Stuxnet explained: The first known cyberweapon.” CSO Online. https://www.csoonline.com/article/562691/stuxnet-explained-the-first-known-cyberweapon.html

  3. Sanger, David E. Confront and Conceal: Obama’s Secret Wars and Surprising Use of American Power. Crown Publishers, 2012.

  4. “Operation Olympic Games.” Wikipedia. https://en.wikipedia.org/wiki/Operation_Olympic_Games

  5. Schneier, Bruce. “The Story Behind the Stuxnet Virus.” Schneier on Security blog archive. https://www.schneier.com/blog/archives/2010/10/stuxnet.html

  6. “XKeyscore.” Wikipedia. https://en.wikipedia.org/wiki/XKeyscore

  7. “XKEYSCORE: NSA’s Google for the World’s Private Communications.” The Intercept, July 1, 2015. https://theintercept.com/2015/07/01/nsas-google-worlds-private-communications/

  8. “Snowden wasn’t lying: the NSA’s XKeyscore program can spy on everything you do online.” Vice News. https://www.vice.com/en/article/snowden-wasnt-lying-the-nsas-xkeyscore-program-can-spy-on-everything-you-do-online-1/

  9. Gellman, Barton & Soltani, Ashkan. “NSA infiltrates links to Yahoo, Google data centers worldwide, Snowden documents say.” The Washington Post, October 30, 2013. https://www.washingtonpost.com/world/national-security/nsa-infiltrates-links-to-yahoo-google-data-centers-worldwide-snowden-documents-say/2013/10/30/e51d661e-4166-11e3-8b74-d89d714ca4dd_story.html

  10. “How the NSA May Be Tapping Yahoo’s and Google’s Fiber-Optic Cables.” AllThingsD, October 30, 2013. https://allthingsd.com/20131030/how-the-nsa-may-be-tapping-yahoos-and-googles-fiber-optic-cables/

  11. “Furious Google techie on NSA snooping: ‘F*** you, you fing a***s!’” The Register, November 7, 2013. https://www.theregister.com/2013/11/07/google_engineers_slam_nsa/

  12. “Bullrun (decryption program).” Wikipedia. https://en.wikipedia.org/wiki/Bullrun_(decryption_program)

  13. “Utah Data Center.” Wikipedia. https://en.wikipedia.org/wiki/Utah_Data_Center

  14. Bernstein, Daniel J.; Lange, Tanja. “Security dangers of the NIST curves.” Presentation at International State of the Art Cryptography Workshop, 2013. https://cr.yp.to/talks/2013.05.31/slides-dan+tanja-20130531-4x3.pdf

  15. “Boundless Informant.” Wikipedia. https://en.wikipedia.org/wiki/Boundless_Informant

  16. Greenwald, Glenn; MacAskill, Ewen. “Boundless Informant: the NSA’s secret tool to track global surveillance data.” The Guardian, June 8, 2013. https://www.theguardian.com/world/2013/jun/08/nsa-boundless-informant-global-datamining

  17. “James Clapper’s testimony one year later.” PolitiFact, March 11, 2014. https://www.politifact.com/article/2014/mar/11/james-clappers-testimony-one-year-later/

  18. “Merkel: ‘Ausspähen unter Freunden, das geht gar nicht’.” Süddeutsche Zeitung, October 24, 2013. https://www.sueddeutsche.de/politik/nsa-spaehaffaere-merkel-spaehen-unter-freunden-das-geht-gar-nicht-1.1804689

  19. “BlackEnergy and the Ukrainian power grid attack.” SANS Industrial Control Systems Library, 2016. https://www.sans.org/white-papers/36297/

  20. Greenwald, Glenn. No Place to Hide: Edward Snowden, the NSA, and the U.S. Surveillance State. Metropolitan Books, 2014.

  21. “Inside the NSA’s Tailored Access Operations (TAO).” Schneier on Security. https://www.schneier.com/blog/archives/2013/12/more_about_the.html

  22. “NSA Intercepts Links to Google, Yahoo.” IEEE Spectrum. https://spectrum.ieee.org/nsa-intercepts-links-to-google-yahoo-data-centers

  23. “Global surveillance disclosures (2013–present).” Wikipedia. https://en.wikipedia.org/wiki/Global_surveillance_disclosures_(2013%E2%80%93present)

  24. “Operation Olympic Games – Cyber sabotage as a tool of American intelligence.” Security and Defence Quarterly. https://securityanddefence.pl/Operation-Olympic-Games-nCyber-sabotage-as-a-tool-of-American-nintelligence-aimed,121974,0,2.html

  25. “BOUNDLESSINFORMANT interface.” Electrospaces, December 2013. https://www.electrospaces.net/2013/12/the-boundlessinformant-interface.html