新闻快讯
< >

美国CIA黑客工具开发人员培训内容及特点

美国CIA黑客工具开发人员培训内容及特点-E安全

2017年3月8日,维基揭秘网站曝光了美国中央情报局网络情报中心的8761份文件,其中涉密文件达156份,涵盖中央情报局黑客部队攻击手法、目标、工具及代码等内容,引发全球关注。本文将为您解读文件中涉及的美国中央情报局黑客工具开发人员培训内容及特点。

 ◆ ◆基本情况
       

此次维基揭秘网站披露文件中,涉及美国中央情报局黑客工具开发人员培训的主要有两部分内容:一部分为网络情报中心所属行动支持处(Operational Support Branch,OSB)“新进开发人员培训”系列文档,该文档共包括13个文件,除1个文件无密级外,其余文件密级均为“机密//禁止外籍人员知悉”;另一部分文件为应用工程部(Applied Engineering Division,AED)的“通过黑客工具开展情报窃取的行为准则”,目前披露的仅为1个机密级文件。

根据曝光文件分析,行动支持处现有14人,与嵌入开发处、远程植入处、移动开发处、网络设备处等应为兄弟单位,主要职责应为通过开发、应用相关网络黑客工具,窃取目标对象情报信息。应用工程部则无太多内容披露,根据其层级和业务范围,该部门很有可能是以上各处的上级单位。

从文件风格来看,相关文件形式上更像网络论坛上的用户发言,有的文件末尾还附有其他用户评论,这样使得所披露内容较为立体鲜活;但同时也多为片段式,部分文件内容甚至为空。例如,行动支持处有关文件中关于情报窃取要求的内容缺失,但应用工程部“通过黑客工具开展情报窃取的行为准则”文件,可为其提供一定补充。

美国CIA黑客工具开发人员培训内容及特点-E安全

 ◆ ◆主要内容           
       

1. 行动支持处新进开发人员培训内容

此系列文件主要介绍了该部门新进软件开发人员所应接受的12项培训,旨在帮助新人尽快熟悉部门软件开发基本要求。主要包括以下内容。

培训科目一:建立个人开发环境。该科目主要是使学员了解工作用计算机所应安装软件、接入网络以及有关在线资源。必备软件主要有VMWare虚拟机、Visual Studio开发工具、CIA个性化开发工具、测试工具等;主要接入网络有绝密级网站DEVLAN、CIA非密网络FIN、美国政府非密网络4STAR;有关网络资源主要集中在绝密级网站DEVLAN上,开发人员可在其上创建自己的工作区并进行管理。

培训科目二:源代码控制。该科目主要是讲述如何使用Git工具进行源代码版本控制。该工具为部门所有软件开发过程设定了统一工作流程,其典型阶段有:成熟工具(Master),工具已由官方发布,可以使用;已开发工具(Develop),工具已完成开发且无缺陷,可随时发布;构建中工具(Feature),工具正在由某一开发人员进行开发;修复补丁(Hotfix),在成熟工具(Master)之外,针对某一小问题开发的修复程序。

培训科目三:Visual Studio开发工具。Visual Studio是微软推出的Windows平台应用程序的集成开发工具,中央情报局又在其上加载了个性化的插件,如工程开发小组(Engineer Develop Group,EDG)项目向导及代码库等。该科目主要讲授了其具体使用,包括如何新建项目、设置热键与颜色方案等。

培训科目四:Windows(32位)编程介绍。该科目讲授了编写可在32位Windows操作系统程序的有关基础知识,包括如何进行基本系统调用、列出文件/文件夹结构、启动进程、调用API等。

培训科目五:Windows(32位)开发笔记。该科目给出了32位Windows开发中需要注意的几个小的方面,如使用GetVersionInfo命令查看操作系统版本时,若不事先进行有关更改,Windows 8.1会被错报成Windows 8。

培训科目六:基本保护措施。该科目给出为应对电子取证,所应采取的有关措施,主要包括:一是混淆字符串或数据。开发工具时难免用到一些敏感字符串或数据,为使个人安全产品(如杀毒软件等)或专家难以通过字符串检索发现这些恶意工具,开发人员应通过使用中央情报局的“大理石架构”(Marble Framework)等工具,对相应字符串或数据采取混淆措施。二是保证数据在内存尽量不写盘。由于内存和磁盘不同的存储特性(分别为易失/非易失),以及磁盘中黑客工具信息更易被个人安全产品检测到,工具开发有关过程信息应尽量驻留在内存中。三是采用自删除(self-delete)技术。主要是考虑到对于硬盘中的黑客工具,常规删除只能去除文件系统中的有关索引,并不能真正将磁盘中内容清除,因此应采用自删除技术,使得代码能从磁盘中“自毁”。

培训科目七:单元测试的艺术。该科目给出单元测试工具、目标、步骤等。

培训科目八:Bamboo和Dart软件。该科目重点提到了联合运用这两个软件对工程进行集成测试。

培训科目九:情报窃取技术。该科目意在介绍通过黑客工具进行情报窃取的基础知识,主体内容缺失,但通过应用工程部情报窃取行为准则相关内容可知晓其概貌。

培训科目十:缩略语列表。该科目主要给出软件开发中有关缩略语的全称和定义,如ERB为其工程评审委员会(Engineering Review Board),该委员会每周一召开会议,审查所开发黑客工具功能、特点和不足及有关测试结果等;还有PMB(项目管理委员会)、IV&V(独立测评机构)、MRB(行动需求委员会)等有关机构,根据各自定义,他们在黑客工具开发过程中分工协同开展工作。

培训科目十一:事件与文档记录。该科目首先介绍了项目开发过程跟踪工具;之后介绍项目文档记录,主要内容包括代码、工具功能等信息、工具共享与重复使用情况3部分。

培训科目十二:大礼包——“夺旗”。该部分更像一个结课考试,内容包括以下10项。第一项是目标设备基本信息获取。这将便于之后在目标机器上部署有关信息窃取手段,所需基本信息包括计算机名称、所安装应用软件名称、网卡MAC地址、用户信息等。第二项是文件收集。这可以说是有关开发工作的终极目标,但在实际操作中,常常会受限于传输时间和带宽等,该测验项目要求在一定时限内,收集目标机器上带有特定后缀的文件。第三项是对工具的压缩和加密。第四、第五项主要测验内容是调用或强制中止其他工具的运行,以及进行目标系统监控与操纵。第六项是在机器重启后仍然保证黑客工具运行,主要借助Windows系统本身的有关机制以及启动过程的漏洞。第七项测试内容是将所窃取信息回传至控制中心。第八项是通过修改黑客工具本身,绕过杀毒软件等安全产品。第九项测试内容是使黑客工具能在目标机器上顺利执行。第十项是提升黑客工具的权限,使其能够开展黑客行动或获取所需信息。

2. 应用工程部情报窃取行为准则内容

该文档主要从总体、网络连接、磁盘输入输出、日期/时间使用、个人安全产品/防病毒软件等方面介绍了开发黑客工具的行为准则,共近40条。

(1)总体要求。给出了使用黑客工具进行情报窃取的一般原则,其中较为重要的有:在程序刚开始执行时不要全部解密或恢复原文件,以增加发现敏感数据的难度;所收集数据、有关模块等敏感数据在不需使用时应立即清除,以增加事件响应和电子取证难度;不要导出敏感函数的名称,如果必须要导出,用一个普通函数名称代替,以增加分析和逆向工程难度;不要使黑客程序引起目标计算机失去响应,如屏闪、CPU全部占用等,以避免用户或系统管理员注意到黑客工具的存在;黑客程序文件尽可能小,理想大小应小于150KB,以减少工具传输、执行和清除时间;不要将日期/时间(如编译时间戳、连接时间戳、访问时间等)设定为美国时间,以避免人们直接认为黑客工具源于美国;在开发和使用过程中,不要在文件中显示CIA、USG等标志性信息,以避免敌对势力将文件大规模散布后,对美国政府产生负面影响。

(2)网络连接。给出了使用黑客工具时连网方面的注意事项,其中较为重要的有:不要仅仅依靠SSL/TLS来保证数据传输安全,原因是该协议有很多公开披露的漏洞等;正确清除网络连接痕迹,以增加网络分析和事件响应难度。

(3)磁盘输入输出。给出了使用黑客工具时向磁盘读写数据的注意事项,其中较为重要的有:在非必需情况下不要轻易向磁盘读写数据,以降低通过电子取证被发现的风险;不要向磁盘中以明文形式写入收集到的数据,且删除磁盘数据时要彻底全面,以增加事件响应和电子取证难度;在将文件写入磁盘时,不要将文件名称或路径设置为固定值,以允许工具使用者(攻击者)选择适合目标机器的文件名。

(4)日期/时间使用。给出了开发黑客工具时有关日期时间的注意事项,其中较为重要的有:不要使用美国式的时间戳格式mm-dd-yyyy,而是使用yyyymmdd,目的是保持工具间的一致性,同时避免人们怀疑工具源自美国。

(5)个人安全产品/防病毒软件。给出了测试防病毒软件对于黑客工具反应时的注意事项,其中较为重要的有:要尽量在联网的情况下进行,因为防病毒软件在联网和不联网时,行为和测试结果大相径庭。

美国CIA黑客工具开发人员培训内容及特点-E安全

 ◆ ◆特点总结
       

通过分析美国中央情报局黑客工具开发人员培训内容,可归纳总结出以下特点。

培训内容系统实用。从培训本身看,其内容覆盖全面,包括整个开发流程、辅助工具、多方面注意事项等,可以使新人迅速掌握工作要求,开展相关工作;同时可操作性强,其中每一条都从使用者角度出发,给出尽量详尽的介绍,如对于使用Visual Studio工具新建开发项目这一基本环节,文件分4步给出了清晰细致的介绍;又如,对于通过黑客工具开展情报窃取的行为准则,文件的每个要求都明确可操作。此外,培训还配套一个带有考试性质的“夺旗”比赛来检验培训效果。

攻击方式隐秘有效。从培训内容所披露的中央情报局黑客攻击行为看,其十分注意行动隐秘性,例如,在行动支持部新进开发人员培训科目六“基本保护措施”中,给出为应对电子取证,所应采取的有关措施,特别是确保数据在内存中(断电即失)而尽量不写盘、对磁盘中黑客工具内容采用自删除技术等;又如,应用工程部情报窃取行为准则中,更是全方位介绍如何秘密开展情报窃取行动,特别是不要使黑客程序引起目标计算机出现屏闪等异常情况、不要暴露可能对美国政府产生负面影响的标志性信息等。此外,中央情报局用完善的体制(如前述工程评审委员会等多个主体分工协同作用)、较为细致的技术考量(如充分考虑杀毒软件对工具的检出等),保证了攻击的有效性。