当前,随着互联网技术更加广泛、深入地应用到人们生活的方方面面,多元、多源的数据使大数据的发展来到了前所未有的高度,大量的数据交换给了黑客可乘之机,特别是有专业工具的APT攻击团队。(APT的是Advanced Persistent Threat 的简写,意思是高级持续性威胁)。一直以来,APT攻击对于国家和企业来说都是一个巨大的网络安全威胁,而且,近年来愈演愈烈,已经随着互联网渗透到社会的各个角落,成为网络安全防御的热点。

在国家工程实验室联合安在新媒体共同举办的首届“网安星播客”直播大赛上,来自北京金睛云华科技有限公司的CTO富吉祥,给大家做了《人工智能技术在高级威胁检测中的应用实践》的专题分享,富总主要围绕了高级持续威胁的特点、人工智能如何应对高级威胁以及威胁建模的实践等方面开展了互动分享。深入浅出的介绍了人工智能在应对APT攻击时的作用和意义。

01 高级持续性威胁的特点和防御难点

什么是高级持续性威胁?它通常是有特定目标、有组织,通过多种高级手段进行的长期攻击渗透活动,并且在成功入侵之后长期保持潜伏直到完成最终的攻击目标。高级威胁在攻击的过程中往往会利用一些全新的手段,如0day、变种木马、自制工具等,这些手段可以称之为未知威胁。在防御高级持续性威胁上,防御这些未知威胁成为难点。

比如传统安全设备在检测已知威胁上可以通过特征码的方式,在防御未知威胁时就需要先提取特征再把特征下发到设备中才能生效。这个期间就产生了检测防御的真空期,像0day、恶意木马的变种都能有效地达到入侵活动的目的。

除此之外,高级威胁检测的过程中,有一些关键线索的缺失也会影响效果。比如说加密流量里潜藏着的恶意流量,通过dns、http等协议进行数据外泄可以绕过传统的检测设备,或者通过加密的代理绕过安全设备。

02 如何利用人工智能技术应对高级威胁

人工智能技术往往会应用在以下几个领域,如图像识别、模式识别、自然语言处理等。这样的应用同样也可以落地在网络安全领域,来应对高级威胁。

技术层面可以通过以下思路来逐步实现:把一个文件映射成一张图像,把网络流量按照模式识别的方式去做一个建模;对于一些web类的攻击行为或者一些恶意的域名,可以通过自然语言的方法去对它进行处理。经过研究和实践,人工智能技术应用在以下几个检测能力上,效果明显。

1)对恶意软件建模。人工智能技术擅长语音识别,比如苹果的Siri程序,它的建模过程从样本的采集,采集语音流量,把语音通过数字化变成数字信号,再进行特征提取来提取语音线性参数,最后生成特征向量,作为模型的输入来源,最后再到建模、设置参数、训练学习和最后的识别过程。同理,对木马数据的外泄流量,可以用相似的过程:采集网络流量,对流量进行协议的解析和数据的统计,再把协议解析和统计后的数据提取特征,生成特征向量,再进行一个学习和识别。可以类比于一个语音识别过程,把木马数据外泄流量的过程进行建模。进一步可以把木马文件映射成图像,这样就可以用人工智能中的神经网络有效对图像进行识别,间接识别样本本身。

2)检测暗网的Tor流量。所谓Tor流量,就是通过在环境中模拟Tor浏览器产生的流量并进行捕获。这之中,关键要提取Tor流量的指纹向量,包括会话中的数据包大小、时间间隔和统计特征,都是有效的数据来源。之后再通过步态指纹方式进行建模。

3)检测DGA域名。DGA域名是通过算法生成的随机域名,它可以规避我们把一个域名或IP写死在受控木马样本并被发现之后,整个僵尸网络会被阻断的风险。首先需要升级大量的DGA域名,在收集了百万量级的域名之后,再去建立深度学习的模型,把样本放到模型里做训练,那么这个模型就具备了识别这类DGA算法生成新域名的能力。

4)检测web类攻击。像SQL注入、XSS和Webshell都是文本类的数据,要检测的内容实际上是通过语法来判断它是否属于攻击。结合之前的流程,首先要收集大量的数据,可以通过SQL map产生真实的SQL注入流量,也可以用相同的方法产生其他流量,还有内部积累和网站。下一步对数据进行预处理,首先是解码,解码后就可以形成可读懂和提取数据的格式,然后进行特征的编码,可以通过预训练的语言模型来提取特征向量,然后就成了我们后续训练模型的输入来源。最后再用机器学习模型检测新产生的web攻击。

03 通过平台支撑建模

人工智能对高级威胁的检测,虽然检测流程相似,但还是比较复杂,并且存在很多依赖。为了更高效地自动化完成智能化的检测过程,需要一个建模平台来支撑。为此金睛云华搭建了AI-Matrix建模平台,该平台可以支撑不同阶段的工作。

1)辅助样本获取。平台可以通过哈希的方式在外网获取想要的样本文件,把文件放到沙箱集群中让它产生恶意流量,这就是恶意流量的PCAP来源。同时可以通过自己的攻击和渗透平台产生真实的工具流量,成为数据来源,还可以在互联网上爬取相关的样本数据。

2)解析样本数据。平台可以构建了一个自动化的流量引擎去解析协议,同时对协议里我们感兴趣的统计特征通过规则或者自动化的方式提取出来,基于此就可以构成特征向量的来源。之后通过便捷的AI训练平台利用不同框架的算法设计参数,将数据和算法连接起来,通过训练和学习生成我们要的模型。

3)检测引擎。在模型经过测试和验证后,可以把它内置到平台的流量检测引擎里,就可以在探针上用PCAP流量进行真正效果的检验。从PCAP的特征,向量的提取过程,到经过模型的检测过程和样本检测之后的展示过程,都可以在探针上实现。

4)实现线索关联。在获取到上述所有的高级线索之后,还有一个比较关注的问题,就是线索之间关联。这时就可以利用平台构建一个智能的图挖掘算法进行可视化的挖掘。比如当现一个勒索软件被投递到组织关注的资产,投递之后资产做了一个DNS解析请求,解析到IP之后做了一个HTTP隐蔽隧道的通信,这些过程都被平台的AI流量引擎抓到,并且经过图数据库的处理和智能算法的挖掘,平台可以把它可视化的展示出来。这样一个高级的入侵过程就可以有效地在系统的、可视化的挖掘辅助下,进行溯源和关联追溯。

目前,通过不断的实践和优化,以上模型交叉验证的准确率已能达到97%左右,它是检测模型对新样本的预测能力,也就是检测未知威胁的能力。有了这个能力,就可以很好地将这些模型内置到检测系统中对高级威胁进行有效的识别和预判。

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