美国军方曾提出“三个任意”的国防部网络体系愿景:美军作战人员能够用任意设备、在任意时间、在任意地方获取经授权的所需信息,以满足联合作战的需求。为实现这一愿景,美军多年来耗费巨资持续在各个方面做了大量的工作,本文将介绍在“任意设备”上的尝试——TENS项目。

TENS(Trusted End Node Security,可信终端节点安全)是一个外部引导启动、在内存运行的Linux定制系统,由美国空军研究实验室(AFRL)出品。它可以让经授权的国防部或联邦人员使用几乎任何电脑远程访问军方/政府网络服务,最大程度降低不可信设备的安全风险。TENS(的专用版)是美国国防部唯一批准的使用非政府配备设备(GFE)远程办公的解决方案,目前有数十万受支持的军方用户和多个联邦组织客户使用。

1、TENS的基本情况

TENS的前身叫轻量级便携安全(Lightweight Portable Security,LPS),隶属软件主动保护(Software Protection Initiative,SPI)项目,由美国防部负责采购和保障的副部长于2001年12月发起,国防研究与工程总监(DDR&E)负责运营,空军研究实验室的软件防篡改主动保护(ATSPI)技术办公室负责项目管理。2011年,LPS更名为TENS;2016年,空军研究实验室成立独立的TENS项目办公室。目前TENS项目由空军研究实验室信息局负责开发和管理。

SPI成立的初衷,是为了保护美国国防部的关键知识产权(可执行程序、源代码、数据等)免遭盗版、篡改和民族国家威胁的侵害。SPI认为,各类攻击者不断将美国防部技术(知识产权)作为攻击目标,网络/操作系统安全难以解决,内部威胁和盗窃持续存在,商业解决方案无法满足国防部需求。基于此,SPI将提供一种满足用户IT系统高安全需求的替代方法,可低成本实现对国家威胁的防护,依靠现有商业组件快速构建。

LPS/TENS便是SPI项目的产出成果之一。它可以在几乎所有搭载英特尔处理器的设备上使用,通过信任存储介质引导启动,便能将设备转换成安全终端。同属SPI项目的产出成果还有加密向导(Encryption Wizard),一个符合联邦安全标准的加密工具,预装在LPS/TENS内,为用户提供强大且便捷易用的敏感数据保护能力。

2、TENS如何将不可信设备转化为可信设备?

TENS的推荐使用方式,是刻录或安装在CD/DVD、U盘,作为任意设备的外部启动盘。它启动后仅运行在内存里(最少1GB内存),阉割了内部硬盘驱动,因此不会受到本机原有操作系统和硬盘的漏洞、恶意代码影响。

由于仅运行在内存里,每次关机后,TENS的使用记录都将随内存断电而消失,下一次启动又是全新的系统(和国内的装机U盘类似)。这既可以在进行危险操作后马上关机重启来防止感染病毒,也能在使用后避免留下任何可被追踪的痕迹。

TENS不需要经常打补丁,TENS项目办公室会定期更新,确保更新到最新版本,就能获得全面保护。

不过,这些都是防范系统层面的攻击,如果面对如BIOS/UEFI病毒、BadUSB等更底层的攻击,TENS是否能防范呢?目前暂时没看到相关资料,相信AFRL应该有着手解决。这里得吐槽一点,TENS至今未能支持UEFI安全启动功能(未获得微软认证),需手动关闭才能使用,对用户来说很麻烦。微软在2012年Windows 8发布时推出安全启动功能,现在还没能支持,只能说效率实在低了点。

3、TENS如何保障使用过程安全和数据安全?

作为美国空军研究实验室潜心20年打造的可信终端解决方案,TENS拥有诸多定制的安全特性、丰富且可自定义的软件环境。

TENS对外提供三个产品:TENS公共版、TENS专业版、引导启动介质。公共版提供通用的政府网站浏览服务,还有一个内置LibreOffice的豪华版(Deluxe),任何人都可以下载使用;专业版提供给非国防部的联邦机构,里边可以定制VPN、VDI、防火墙、Web代理、时区、桌面背景、浏览器书签等预设配置,需付费使用;引导启动介质是提供给国防部的专用版本,由国防信息系统局(DISA)提供经费、内部人员免费使用,里边有国防部特定的认证控制。

公共版可提供给大众下载使用

以TENS公共版为例,它预装的软件环境包括支持智能卡、Java、Flash的Firefox浏览器,加密向导,PDF Viewer,安全邮件,系统配置(桌面、显示屏、键盘、鼠标、电源、打印机等),网络应用(网络代理、Ping、PuTTY、FreeRDP、OpenSSH等),安全应用(OpenDNS、DNSCrypt)等。公共豪华版还预装了LibreOffice、PIDgin、Media Player、Citrix Receiver、VMware View Client等本地或远程工作软件。

TENS提供有线、无线、移动调制解调器三种联网方式。针对常见无线网络威胁,美国国防高级研究计划局(DARPA)曾推出无线网络防御项目,确保安全工作不会被某个配置错误或遭劫持的无线网络破坏。安全公司Perspecta Labs在该项目下开发出内置在TENS的WiDef功能,支持识别4种类型的无线(局域网)攻击并弹窗提醒用户处理,包括取消身份验证攻击、ARP缓存投毒攻击、ICMP重定向攻击、虫洞和中继攻击。连上网后,用户还可以检查DNS是否已经使用OpenDNS,配合开启DNSCrpyt为DNS流量加密,确保DNS安全。

TENS预装Firefox浏览器上网,并内置了HTTPS Everywhere、NoScript(默认关闭)两个安全扩展。美国政府网站通常需要用通用访问卡(CAC)或个人身份验证卡(PIV)验证访问设备,TENS支持外部USB智能卡读卡器。

由于不支持本地硬盘,TENS存储文件稍微复杂。官方推荐3种方案:上传到SharePoint或其它类似的政府内部云存储平台;通过邮件发送给同事或自己;保存到另外的U盘/移动硬盘,不要保存到启动盘(默认情况下启动盘是只读的,但不排除有例外)。向外传输前,需将敏感数据使用加密向导软件进行加密。

加密向导使用界面

其它诸如邮箱、聊天、协作等功能不再一一赘述。

4、总结

整体来看,TENS的效果较为突出。它以极低成本(一个U盘或一张光盘)创建出一台受信任的虚拟政府配备设备为用户提供远程办公服务,几乎能在任何x86架构的设备上使用,不需要安装任何软件,开机即用,并可以为组织和特定任务进行定制。

TENS对远程访问的各个环节风险做了较好的管控。

设备侧,禁用本地硬盘规避了原系统的风险;网络接入侧,利用WiDef功能防范了无线局域网的威胁;传输过程中,将与美国DNS商业基础设施的通信数据加密(OpenDNS、DNSCrpyt),避免暴露访问细节;网站访问上,需要使用绑定身份的智能卡才能访问政府网站服务;并开发预装了专门加密敏感数据的加密向导软件。

从TENS预装的软件可以看出,美国防部内部有较好的远程访问基础设施,比如默认需要智能卡验证的网站服务、Citrix&VMware等远程桌面访问标准工具、SharePoint&DCS等内部协作服务等。可能是有了智能卡这种硬件认证工具,TENS没有追求绝对安全,在浏览器里支持了像Java、Falsh这样漏洞较多的组件。

新冠疫情期间,美国国防部的远程办公人员暴增,TENS获得了大量使用。但也出现了一个插曲,我们知道TENS的最佳使用方式是光盘/U盘外部引导启动,隔离本机的风险。但作为TENS的安全评估机构,NSA却在6月初发布了一份TENS虚拟机指南,教军方人员如何使用不够安全的虚拟机启动方法,原因就是前文提到的TENS不支持UEFI安全启动导致在主流设备上使用操作步骤较麻烦。这个功能已经发布8年了,NSA心里该是在骂人吧!

声明:本文来自安全内参,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如有侵权,请联系 anquanneican@163.com。