美国“监控门”情报收集系统 X-Keyscore 技术揭秘

标签: 美国 监控 情报 | 发表时间:2013-08-01 22:19 | 作者:
出处:http://news.cnblogs.com/

英文原文: NSA X-Keyscore Program Full Presentation

美国“棱镜”监控计划曝光者爱德华·斯诺登近日再度爆出猛料,曝光了美国国家安全局的情报收集系统X-Keyscore 的相关技术细节。

根据资料显示,美国情报机构分析人员可以通过X-Keyscore 对个人的互联网活动进行实时监控。据悉,2012 年X-Keyscore 在 1 个月内存储的各类监控数据记录高达 410 亿条。

斯诺登曝光了 NSA(美国国家安全局)内部关于X-Keyscore 的培训幻灯片,从中你可以看出这个系统有多么强大。幻灯片内容编译如下:

什么是X-Keyscore

  • DNI(国家情报局)采集系统/分析框架
  • 可针对邮件、内容等执行强大的查询操作
  • 提供实时的目标活动信息
  • 所有未过滤的数据可在X-Keyscore 缓冲区存放 3 天(通过X-Keyscore,可存储所监控网站的完整数据,并为元数据建立索引,并可以为通用数据类型提供一系列视图)

这是一个联合查询系统——执行 1 次查询将会扫描所有网站,并通过挖掘元数据,来找到你之前闻所未闻的目标事件。

系统相关细节

  • 大规模分布式 Linux 集群
  • 超过 700 台服务器分布在世界各地
  • 系统可以线性扩展——只需添加新的服务器即可
  • 服务器群集
  • 联合查询机制

X-Keyscore查询层级

X-Keyscore 部署在哪?

X-Keyscore 部署在 150 多个地点,拥有超过 700 个服务器。(注意地图上中国境内的红点)

X-Keyscore 的独特功能

你可以执行浅显分析,作用是:

  • 你可以看更多数据
  • 如果数据率过高, X-Keyscore 也能被配置为浅显分析

也可以执行深入分析,理由和作用是:

  • Strong Selection 本身只提供了一个非常有限的能力
  • 人们在网上执行的大部分活动基本上都是匿名的
  • 可以使用这个通信量及时发现异常情况,然后指导我们去做情报工作,或针对传统任务执行 strong selectors

X-Keyscore 可以在收集到的会话上做什么?

X-Keyscore 可以通过插件来提取信息,并索引元数据到表中。

X-Keyscore 中包含了如下插件:

  • E-mail 地址插件:通过用户名和域名来索引会话中的所有E-mail 地址
  • 提取文件插件:通过文件名和扩展来索引会话中的任何文件
  • 完整日志插件:索引收集到的每个 DNI 会话。通过标准的N-tupple(IP、端口、Casenotation)来索引数据
  • HTTP 解析器插件:索引客户端 HTTP 流量(然后跟踪)
  • 电话号码插件:索引会话中的每个电话号码(例如电话本或签名处的号码)
  • 用户活动信息插件:索引 Webmail 和聊天内容,包括用户名、在线好友、特定 cookies 等

X-Keyscore 可以存储哪些信息?

可以存储所有你希望提取的内容,你只需选择你的元数据,进行存储设置后,交给 HTTP 解析器即可。

可以使用X-Keyscore 来做什么?

1. 找到目标

如何通过 strong-selectors 来找到一个已知目标?如何找到一个 strong-selectors 中没有相关信息的恐怖分子?

你可以通过查找异常事件和人,比如:

  • 那些所使用的语言不是所在地区的人
  • 使用加密技术的人
  • 搜索网络中可疑东西的人

2. 查找加密信息

比如:

  • 显示来自伊朗的所有加密的 word 文档
  • 显示伊朗的所有加密软件使用情况

这些查询数据量可能太大,也不可能返回所有信息,无法使用 strong-selector,这种情况可以执行追溯查询,然后从相应的网站上找到你感兴趣的内容。

3. 技术侦查

比如显示X国家中的所有 VPN 启动数据,并显示出能够找到用户的一些信息。

这些事件在X-Keyscore 中很容易浏览到。X-Keyscore 可以提取并存储许多主要文档类型的作者信息,然后执行追溯调查,来跟踪文档起源,这种元数据通常可保存 30 天。

4. 收集个人会话

方法如下:

  • 传统上可通过 strong-selector 事件触发,但这不是唯一途径
  • 反向 PSC——将异常事件返回到 strong selector。当数据首次被强力查询时,你不能执行这种分析
  • 配合 Marina——允许在事件发生后执行 PSC 收集

5. 语言跟踪

比如:如何找到在巴基斯坦讲德语的人?

你可以通过X-Keyscore 的 HTTP 活动插件提取和存储所有能够被搜索的 HTML 语言标签,然后进行分析。

6. Web 搜索事件跟踪

比如:我追踪的人使用了 Google Maps 服务来查找位置,我能通过这个信息找到他的邮件地址吗?或者能否从他的 Web 搜索信息中找到可疑信息?

X-Keyscore 可以提取和存储所有基于 Web 的搜索事件,你可以使用回顾性查询来找到感兴趣的内容

7. 文档跟踪

比如:我发现了一个关于“圣战”的文档,但已经经过无数人之手,如何找出这是谁写的,他们在哪里?具体的方法在幻灯片中已经删除,因为这涉及国家安全局的特定操作。

8. 发现感兴趣的文档

比如:能否显示所有包含来自伊拉克的 MAC 地址的微软 Excel 电子表格,以便我可以执行网络映射?

X-Keyscore 中新的提取器允许在文档/电子邮件的正文中执行不同的字典,这些复杂的字典可以生成并存储这些信息,针对特定的数据类型有多个字典

9. 分析指纹信息

可以从 TAO 中加载指纹信息到 X-Keyscore 的应用/指纹引擎中进行分析。这种操作需要复杂的布尔运算和正则表达式。

10. 发现新的 Web 服务目标

每天都会有新的 Web 服务,X-Keyscore 可以根据用户 ID 来扫描服务而不是执行 strong selection,这意味着你可以检测之前所不知道的应用程序相关活动信息。

11. 实体提取

X-Keyscore 拥有针对英语、阿拉伯语和中文的技术,允许你查询:

  • 显示所有涉及 IAEO(伊朗原子能组织)的 word 文档
  • 显示所有涉及奥萨马·本·拉登的文档
  • 还可以查询显示“类似于 xxx 的 xxx”

X-Keyscore 的成功案例

通过X-Keyscore 生成的情报,成功捕获了 300 多名恐怖分子。

X-Keyscore 的创新点:

  • 高速查询
  • 工具栏
  • 集成 Marina
  • 集成 GPRS、WLAN
  • SSO CRDB
  • 工作流
  • 多级别字典

X-Keyscore 的未来计划

  • 再次提速(算法和单元处理器)
  • 更好地呈现
  • 实体提取
  • VoIP(网络语音电话业务)
  • 更多的网络协议
  • 更多类型的元数据(Google-Earth、EXIF 标记、CES-AppProcs 等)
  • 更易于安装、维护和升级

这个幻灯片是 2008 年 NSA 内部的培训资料,从上面显示的内容可知,该系统无孔不入,基本上只要你在网上有相关的活动,相关信息即有可能被监控。

斯诺登称,他受雇于 NSA 时,曾有机会使用X-Keyscore,他形容,只要有相应的电子邮件地址,他可以对任何人进行监控,下至平民百姓,上至法官总统。

外界对如此大规模的监控计划普遍感到担忧。

本文链接

相关 [美国 监控 情报] 推荐:

美国“监控门”情报收集系统 X-Keyscore 技术揭秘

- - 博客园_新闻
英文原文: NSA X-Keyscore Program Full Presentation. 美国“棱镜”监控计划曝光者爱德华·斯诺登近日再度爆出猛料,曝光了美国国家安全局的情报收集系统X-Keyscore 的相关技术细节. 根据资料显示,美国情报机构分析人员可以通过X-Keyscore 对个人的互联网活动进行实时监控.

ZooKeeper监控

- - 淘宝网通用产品团队博客
        在公司内部,有不少应用已经强依赖zookeeper,比如meta和精卫系统,zookeeper的工作状态直接影响它们的正常工作. 目前开源世界中暂没有一个比较成熟的zk-monitor,公司内部的各个zookeeper运行也都是无监控,无报表状态. 目前zookeeper-monitor能做哪些事情,讲到这个,首先来看看哪些因素对zookeeper正常工作比较大的影响:.

性能监控

- - 互联网 - ITeye博客
一旦你的服务器是在控制台模式下运行,你就可以开始我们接下来的内容. iostat  iostat 命令用来显示存储子系统的详细信息,通常用它来监控磁盘 I/O 的情况. 要特别注意 iostat 统计结果中的 %iowait 值,太大了表明你的系统存储子系统性能低下. meminfo 和 free  Meminfo 可让你获取内存的详细信息,你可以使用 cat 和 grep 命令来显示 meminfo 信息: 1 cat /proc/meminfo  另外你可以使用 free 命令来显示动态的内存使用信息,free 只是给你大概的内存信息,而 meminfo 提供的信息更加详细.

DB2监控

- - CSDN博客数据库推荐文章
     收集的一些DB2监控方法.. -- 是到数据库快照,并存入文件.  -- 查找并重新绑定无效包 .  -- 查出 myuser 模式下的所有无效包.  -- 利用查出的 pkgname ,使用 Rebind 重新绑定. -- 查看所有用户定义(tabschema not like 'SYS%' )表的状态.

nagios 监控redis

- - C1G军火库
下载check_redis.pl. OK: REDIS 2.6.12 on 192.168.0.130:6379 has 1 databases (db0) with 49801 keys, up 3 days 14 hours - connected_clients is 1, blocked_clients is 0 | connected_clients=1 blocked_clients=0.

监控进程

- - 火丁笔记
有时候,进程突然终止服务,可能是没有资源了,也可能是意外,比如说:因为 OOM 被杀;或者由于 BUG 导致崩溃;亦或者误操作等等,此时,我们需要重新启动进程. 实际上,Linux 本身的初始化系统能实现简单的功能,无论是老牌的 SysVinit,还是新潮的  Upstart 或者  Systemd 均可,但它们并不适合处理一些复杂的情况,比如说:CPU 占用超过多少就重启;或者同时管理 100 个 PHP 实现的 Worker 进程等等,如果你有类似的需求,那么可以考虑试试 Monit 和 Supervisor,相信会有不一样的感受.

业务监控

- - 人月神话的BLOG
前面写了一些文章,包括移动BI,企业信息可视化,微信企业号,基于SNS移动应用协同等,这些都是个人认为企业后续信息化可能存在的机会点或发展趋势. 其中核心词汇将仍然集中在移动化,SNS化,可视化,无边界这些核心词汇和能力实现上. 当前我们看到不论是网管系统还是IT应用监控平台,其核心重点仍然围绕在IT基础设施和资源,数据库和应用中间件的监控和实时预警上,其更多面对的是IT运维和管控人员,而非业务人员.

SpringBoot-Metrics监控

- -
Metrics基本上是成熟公司里面必须做的一件事情,简单点来说就是对应用的监控,之前在一些技术不成熟的公司其实是不了解这种概念,因为业务跟技术是相关的. 当业务庞大起来,技术也会相对复杂起来,对这些复杂的系统进行监控就存在必要性了,特别是在soa化的系统中,完整一个软件的功能分布在各个系统中,针对这些功能进行监控就更必要了.

Linux系统监控

- - CSDN博客系统运维推荐文章
查看所有的进程和端口使用情况:. 查看nginx并发(连接数)进程数:. 查看当网络连接状态中,已建立连接的数量:. 查看系统tcp连接中各个状态的连接数. 输出每个ip的连接数,以及总的各个状态的连接数. df -hl 查看磁盘使用情况 . df -hl 查看磁盘剩余空间. df -h 查看每个根路径的分区大小.

Redis监控技巧

- - NoSQLFan
本文来自 Bugsnag的联合创始人 Simon Maynard的系列文章,作者根据几年来对 Redis的使用经历,对Redis 监控方法进行了系统性的总结,干货很多,值得一看. 原文链接: Redis Masterclass – Part 2, Monitoring. Redis 监控最直接的方法当然就是使用系统提供的 info 命令来做了,你只需要执行下面一条命令,就能获得 Redis 系统的状态报告.