谭玲玲,易军凯
(北京信息科技大学 自动化学院,北京 100192)
当前,网络空间已经成为继陆、海、空、天之后的第五大主权领域空间,是国际战略在军事领域的演进。网络空间的发展,同时也对网络信息时代的国家安全提出了严峻的挑战[1]。网络空间飞行器既可作为一个“战斗”平台,做出类似于传统太空飞行器或飞机的操作,如阻挡、退化恐怖行动的破坏或欺骗;亦可作为一个智能监视侦察平台,发现、定位、跟踪、监视潜在的安全威胁。
目前,随着机器学习、人工智能等技术的应用,网络攻防体现出反侦查、智能感知与决策、工具变异等特点。网络空间飞行器是一种全新的渗透测试[2]技术,可从某点出发,发动所有可利用的节点模拟黑客攻击,从而能够全方位、无死角地发现网络存在的漏洞[3],帮助安全管理人员及时发现网络威胁和弱点,做出有效、合理的动态安全调整[4]。同时网络空间飞行器还可实现延伸侦察、网络节点信息收集与利用、毁伤等目的[5],广泛应用于网络测绘和网络安全态势感知、网络通信统计、管理网络服务等。
网络空间飞行器渗透示意图如图1所示。为实现对网络空间目标节点的渗透,本文借鉴物理空间的飞行器技术,利用网络空间飞行器开展网络空间中的渗透测试研究;基于物理空间的动态导航理论进行网络空间靶向性动态导航研究,以实现全面、全网、全覆盖的侦察工作智能化、导航路径规划与决策动态化、对目标节点的信息收集与利用精准化,为靶向性突破目标节点提供理论依据。在远控渗透目标选取时,将网络节点的漏洞危害进行量化,进而进行网络空间节点损伤效果评估,为后续侦察目标选择、目标信息收集、决策提供技术支撑和优化方案。同时,依托强化学习与态势感知等人工智能技术设计面向网络渗透、适配动态网络环境、分布式抗溯源的动态渗透机制。网络空间飞行器从网络空间节点损伤效果评估[6]、网络渗透自身安全检测、网络空间精确制导等方面实现攻击渗透。用于攻击渗透的远控工具具备环境感知能力,可以根据环境自适应地选择或预先定义决策路径来完善模式和行为,通过学习成功经验以提高攻击的成功率和有效性,不再以单一、确定的顺序执行攻击步骤,实现对目标节点的渗透与利用。
图1 网络空间飞行器渗透示意图
为了解决传统渗透测试技术耗时长、易被溯源、对目标边界防护突破较为困难、效率低等问题,本文借助模拟黑客攻击,采用“裂变”形式构造自适应和增量式的渗透方式侦察整个可管理网络空间,发现漏洞及相对漏洞,并依据毁伤评估结果给出有效、合理的渗透路径动态规划,从而动态形成攻击路径链,主动并持续地进行入侵并渗透到靶节点,最终达到目标节点信息收集和毁伤的目的。
网络空间飞行器划分为多个功能模块:侦察模块、运载模块、弹药模块、控制模块。分布式多智能体的网络空间飞行器研究内容包括:网络空间智慧弹头—远控渗透工具设计与运载技术,包含侦察模块和运载模块;网络空间智慧大脑—动态路径规划与决策技术,包含控制模块;网络空间智慧弹药—靶向性动态导航技术,包含弹药模块。网络空间飞行器功能模块如图2所示,以下介绍各个模块实现的功能。
侦察模块:感知网络空间环境,使用有限多目标模糊决策的选择算法确定扫描节点,实现跨节点数据收集任务。利用深度学习算法,建立网络设备指纹知识库,利用指纹识别与数据容错等探测技术实现从粗放到精准的信息收集过滤。
运载模块:完成弹药的运载与渗透任务。通过自我保护检测、加密、压缩、分割、记录断点等将远控工具传输到目标中;利用搭载的基于漏洞类别标签分类的原子攻击库构建状态攻击图,攻克目标节点;以漏洞识别、基于贝叶斯分类器[7]的漏洞数据分类、攻击行为模式知识库为数据基础,运用标准化的方式对漏洞之间的利用关系和因果关系进行建模,增强网络渗透测试工具的运载能力;采用程序变形技术自动生成远程控制程序,将远控工具变形成具有相同功能但不同特征码的程序,使用驱动劫持技术实现远控程序的启动和隐藏。
弹药模块:能够在目标系统中隐匿执行,实现如下功能:1)收集特定的用户数据,记录用户操作;2)对目标节点进行数据收集或造成毁伤;3)根据路径规划,在沿途各节点部署网络空间导航器(导航程序),导航器根据路径信息建立各自的路由表,并按照路由表将收到的数据包从对应接口发送至下一跳节点,从而将数据包按规划路径送达目标节点。
控制模块:进行远程通信。回传用户数据,接收远程控制指令,生成、变异远程控制程序,利用路径规划引擎下发导航路径信息而进一步攻击其他节点,同时可以反跟踪溯源,及时销毁产生的痕迹。
图2 网络空间飞行器功能模块
网络空间飞行器采用基于网络空间漏洞毁伤评估的安全侦察策略对扫描节点进行选取,根据有限多目标模糊决策的选择算法[8]算出节点的选择权重并评估节点的毁伤值,综合评估网络空间节点所存在漏洞的可利用性和毁伤效果。在对远程目标节点渗透过程中,利用动态规划方法寻找到达目标节点的最优路径,通过网页挂马、下载传播、电子邮件传播、漏洞入侵[9]等多种途径,将远控程序植入网络目标节点。
针对网络空间内多操作系统、跨平台节点间的数据收集问题,以及现有网络侦察扫描技术扫描速度慢、扫描节点繁多且不确定性的问题,采用基于网络空间漏洞毁伤评估的安全侦察策略。网络空间安全侦察技术路线如图3所示。
图3 网络空间安全侦察技术路线
首先,利用跨节点数据收集技术和深度学习算法建立网络设备指纹知识库,利用指纹识别与数据容错等探测技术实现从粗放到精准的信息收集过滤,最终实现标识网络空间内节点基础信息、软件服务信息、精准的版本型号及软件配置策略、漏洞信息。利用网络设备漏洞匹配技术,通过漏洞数据库对网络中存在的漏洞进行匹配与利用。
然后,在网络空间飞行器对扫描节点进行选取时,根据有限多目标模糊决策的选择算法算出节点的选择权重并评估节点的毁伤值。在硬件方面,考虑节点CPU的可利用率、内存的可利用空间、硬盘的可用空间;在网络方面,考虑网络是否可达、网络延迟时间、网络带宽等参数。网络空间漏洞毁伤评估技术需解决以下问题:网络空间飞行器能否对漏洞施加计划中的影响;网络空间飞行器能否完成既定任务,取得既定结果,达到渗透与毁伤的目的;目标方对漏洞进行修复需要多长时间;对漏洞是否需要进行再次侦察等。
最后,利用模糊综合评价法[10]、基于贝叶斯网络的评估方法[11]挖掘出网络空间毁伤数据信息中潜在的数据,对不确定或不完整的漏洞毁伤信息做出相对可靠的推理,综合评估网络空间节点所存在漏洞的可利用性和毁伤效果,作为目标选取的依据。
为应对实际网络的数据海量、业务多样、演变迅速等特点,网络空间飞行器侦察技术实行如下策略:1)由历史渗透行为预测攻击的时间和方法,初步确定各个状态节点被侦察的时间矩阵,利用各个状态节点对应的漏洞被修补成功的时间,来确定状态节点的防御时间矩阵,通过对比攻击和防御的时间判断攻击行为发生的概率;2)利用基于蚁群分类规则挖掘算法和基于混沌蚁群分类算法的网络侦察方法[12]模拟多个智能蚂蚁对侦察数据集进行搜索,最终蚁群聚集的地点就是类别中心。找到类别中心后,计算新数据样本与各个类别中心的相似度,将新样本划分为相似度最高的类别,从而确定网络侦察目标。
远程渗透的流程如图4所示,远控工具需要完成渗透任务,其技术方案主要包括:软件植入、启动和工作、隐藏和生存、反跟踪及自毁等内容。
图4 远控工具渗透流程
在对侦察目标取得重要信息后,通过受控的分布式客户端和伪装的应用程序,使用与合法数据同样的信道和加密方式进行信息传输,对自身进行隐蔽的同时规避安全审计和异常检测机制。远控渗透工具的运载通过自我保护检测、加密、压缩、分割、记录断点等步骤通过网络空间飞行器主控制器传输到目标控制器中。远控程序对目标节点的信息进行采集并将数据回传给服务器,针对收集到的数据,拟将其切割成小块而后分开回传,降低流量的峰值,尽量将表征量减少到不易发现的范围内,同时采用分时、闲时传输,以防被用户察觉。远控程序的功能主要包括4类16个,分别是:
常规操作类:键盘指令获取、屏幕截取、进程列表获取、上网记录等;
文件获取类:文件目录获取、指定文件获取、近期文件浏览记录获取、特殊文件获取如注册表文件;
命令行获取类:命令行操作远程主机、命令行获取文件、命令行截屏获取、命令行键盘指令获取等。
导航类:标签分配、路由生成、动态环境感知、报文转发等。
使用正则表达式对漏洞利用工具中的描述文本进行分词,将漏洞文本数据向量化,选取出对漏洞分类起重要作用的特征词集合,并在此词集合的基础上建立漏洞利用工具的向量空间,进而利用机器学习算法对其进行有效的分析。在网络空间飞行器中搭载基于中国国家信息安全漏洞库(China National Vulnerability Database of Information Security,CNNVD)提供的由26种漏洞类别标签分类的原子攻击库,包括:配置错误、代码问题、资源管理错误、数字错误、信息泄露、竞争条件、输入验证、缓冲区错误、格式化字符串、跨站脚本、路径遍历、后置链接、SQL注入、注入、代码注入、命令注入、操作系统命令注入、安全特征问题、授权问题、信任管理、加密问题、未充分验证数据可靠性、跨站请求伪造、权限许可和访问控制、访问控制错误、资料不足。以漏洞匹配技术、基于贝叶斯分类器的漏洞数据分类技术、攻击行为模式库为数据基础,以标准化的方式对漏洞之间的利用关系和因果关系进行建模,增强网络渗透测试工具的运载能力。
为了躲避杀毒软件对远控程序的查杀,采用程序变形技术将远控工具变形成具有相同功能但不同特征码的程序。远控工具自动生成系统将使用程序变形技术对远控工具进行加工处理,将其变成不同二进制代码的远控文件。同时自动生成系统将具有模块捆绑功能,将不同功能的程序模块捆绑在一起,根据不同需求制造出不同的远控工具。
网络空间飞行器的智慧大脑由路径规划引擎、武器库、代理库、远程通信协议栈、导航平台构成。网络空间飞行器智慧大脑部署如图5所示。
图5 网络空间飞行器智慧大脑部署
漏洞库由动态态势感知更新,导航平台根据漏洞库,从武器库、代理服务器库中选择最佳的武器和代理服务器。通过远程通信协议栈,将武器自我伪装后,投送至目标。网络空间飞行器中部署路径规划引擎和导航平台,路径规划引擎依据漏洞节点渗透约束要素选择最优渗透路径。导航平台结合漏洞库和路径规划结果,集中对已有网络渗透武器进行管理,详细刻画描述武器的能力,根据态势感知结果对每一个攻击的目标节点进行多维度智能评分,并进行大数据分析,得到综合安全评分,全面分析网络武器的安全性,确保检测结果的准确性。导航平台提供多维度武器匹配能力,可快速检索匹配目标武器,并根据动态态势感知的结果及时更新武器,对武器所有版本进行迭代管理。网络空间飞行器智慧大脑具备网络武器自身安全检测、网络基础设施安全评估、网络武器防溯源的能力。
网络空间飞行器智慧弹药被植入目标节点后,使用自启动和免杀技术在目标系统中隐匿执行。智慧弹药支持“遥控爆炸”,能够根据指令对目标节点进行信息收集、网络毁伤,并为飞行器提供导航服务。网络空间作战动态导航过程如图6所示。
图6 网络空间飞行器渗透动态导航
智慧弹药收集特定的用户数据(如文件目录、指定文件、日志文件、注册表文件等),记录用户操作(如截屏、键盘输入等),对目标节点造成毁伤,或者利用目标节点;智慧弹药扫描设备信息与状态,选择开机时间长、性能稳定的节点,作为分布式超级节点,部署导航控制器和路径规划等功能,并在沿途各节点部署导航器功能;智慧弹药动态感知各节点的状态,动态扫描节点网络连接情况、网络延迟时间、网络带宽,并实时通知导航控制器。
部署在超级节点上的导航控制器具备“网络+感知+大数据+算法处理+人工智能”的环境感知和自我导航管理功能,与路径规划引擎相互协同,针对靶节点规划出最合理的渗透路径,生成相应的路由信息并为各导航器下发/更新路由信息,控制导航器的工作。部署在沿途各节点上的导航器能够提供导航服务,接收导航控制器下发的路由信息,建立各自的路由表[13]。导航器通过特定端口接收上一节点发来的数据包,查找路由表获取对应的出接口,并将收到的数据包从出接口发送至下一跳节点,从而将数据包按规划路径送达目标节点,让网络空间飞行器顺利到达靶节点。
本文提出的网络空间飞行器模仿物理空间的飞行器在网络空间中针对渗透测试目标寻找周边的薄弱网络节点,对目标实施全方位渗透和利用:1)借鉴物理空间的动态导航理论,研究面向网络空间的动态导航和精确制导技术,丰富了“网络空间飞行器”概念,建立了网络空间飞行器分布式多智能体的架构;2)针对网络空间智慧弹头—远控工具设计与自动渗透技术、网络空间智慧大脑—动态路径规划与决策技术、网络空间智慧弹药—靶向性动态导航技术进行了研究,为远程渗透目标提供理论依据;3)完善网络空间动态导航和精确制导理论,积累各种攻防的实际操作并建立知识库,在实际渗透过程中能够快速做出渗透决策,使得对目标节点的渗透行为具有理论基础,网络空间攻防行为更具有针对性和普适性。结合机器学习、人工智能等技术的应用,赋予了网络空间飞行器智能化、自适应性及抗溯源性的特点,最终达到远程渗透的目的,为网络攻防实战提供理论依据。