4.2 人工智能助力防御
根据全球技术研究与咨询公司Techanvio的报告[2],从2018年到2022年,基于人工智能的全球网络安全市场预计将会有超过29%的复合年增长率。企业正在将基于云的AI服务用于身份验证、视频管理、生物特征信息存储和大数据计算等多种网络安全应用中,从而使人工智能在助力防御方面发挥出至关重要的作用。
4.2.1 物理智能安防监控
物理智能安防监控是保障物理安全的一种重要技术手段,涉及实体防护、防盗报警、视频监控、防爆安检、出入口控制等。安防领域作为人工智能技术成功落地的一个应用领域,其技术及成果已经受到国内很多安防企业的重视,很多企业开始从技术、产品等不同角度涉足人工智能。大华公司、海康威视、东方网力等传统企业在不断加大安防产品的智能化;商汤科技、旷视科技、云从科技、依图科技等以算法见长的企业,正将技术重点聚焦于人脸识别、行为分析等图形图像智能领域。艾瑞咨询研究院发布的《2019中国AI+安防行业发展研究报告》[3]指出,“AI+安防”是人工智能技术商业落地发展最快、市场容量最大的主赛道之一。推动安防监控发展的关键人工智能技术包括智能视频监控、体态识别与行为预测、知识图谱(knowledge graph)[4]和智能安防机器人等技术。
(1) 智能视频监控:对人的识别和追踪可达到实用的程度,能够将人的各种属性进行关联分析与数据挖掘,从监控调阅、人员锁定到人的轨迹追踪时间由数天缩短到分秒,实现安防监管的实时响应与预警。
(2) 体态识别与行为预测:通过人的姿态进行识别。由于每个人骨骼长度、肌肉强度、重心高度以及运动神经灵敏度都不同,使得每个人的生理结构存在差异性,因此决定了每人步态的唯一性。体态识别与人脸识别不同,它在超高清摄像头下识别距离可达50米,识别速度在200毫秒以内。在公共场所安全监控的过程中,当人的面部无法捕捉到,或者捕捉到的面部图像不清晰时,通过对人的体态识别,能够预测这个人接下来即将进行的动作,可以有效预防犯罪。
(3) 知识图谱:这是谷歌公司(Google)于2012年提出的概念,其本质是使用多关系图(多种类型的节点和多种类型的边)来描述真实世界中存在的各种实体或概念,以及它们之间的关系。安防大数据利用知识图谱将海量时空多维的信息进行实体属性关联分析,提高对数据与情报的检索和分析能力。
(4) 智能安防机器人:智能安防机器人有很多种。智能安防巡检机器人利用移动安防系统携带的图像、红外、声音、气体等多种传感检测设备在工作区域内进行智能巡检,将监测数据传输至远端监控系统,并可通过计算机视觉、多传感器融合等技术进行自主判断决策,在发现问题后及时发出报警信息。智能消防机器人能代替消防救援人员进入易燃、易爆、有毒、缺氧、浓烟等危险灾害事故现场进行灭火,完成数据采集、处理、反馈以及火情控制等作业。车底检查机器人可对各种车辆底盘、车辆座位下进行精确检查,发现并协助排除车底可疑危险品,具有取样、抓取、转移、排除能力。
4.2.2 军用机器人
以防御为目的的军用机器人可以助力于安全防御。据报道,哈工大机器人集团(HIT Robot Group,HRG)研发了侦察机器人和小型排爆机器人[5]。侦察机器人通过三自由度云台和车体摄像机可完成对周边环境的监控,实时传送语音、图文信息,具备全天候环境下正常工作的能力。小型排爆机器人采用军用标准设计,可抓取6~30千克的可疑物体,具有运动性能好、速度快的特点,可适应水下、野外、阶梯等不同环境,可完成抓取爆炸物、转移爆炸物的任务。这些机器人还可广泛应用于城市安全、公共安全、抗震救灾、目标探测、可疑物检查、路边炸弹排除、危险物质处理等领域。哈工大机器人集团还开发了一款武装打击机器人[1],可在危险环境中对可疑目标自动探测、侦察与跟踪,并具备枪用光学瞄具系统,可根据需要安装各种枪械,可在边境巡逻、城市反恐、人质解救、森林保护、自然保护区等领域和场景下,对恐怖分子、歹徒、偷猎者等不法分子,进行视频监视、武力威慑、远程打击,协助公安、武警执行反恐任务,辅助边防官兵执行边境巡逻任务。
4.2.3 智能入侵检测
传统的以特征规则为基础的网络威胁检测方法,在面对复杂网络行为和海量高维度大数据的环境下,容易出现大量误报、漏报和较长延时等问题。由于入侵检测是根据网络流量数据或主机数据来判断行为的正常或异常,属于分类问题,而机器学习等人工智能算法则在解决分类问题上有着强大的能力[6]。结合当下快速发展的人工智能技术,智能入侵检测在检测能力和速度上较之传统的入侵检测方法均有大幅优化。
在网络入侵检测领域,2016年,麻省理工学院计算机科学与人工智能实验室(CSAIL)和创业公司PatternEx共同开发的AI2(Artificial Intelligence+Analyst Intuition)是基于人工智能的网络安全入侵检测平台。AI2结合机器学习技术,可准确预测85%以上的网络攻击。[7]AI2采用无监督机器学习自主扫描日志数据内容,并把聚类结果反馈给人类分析师。人类分析师会识别哪些是真正的网络攻击活动,并不断给网络攻击行为的数据打标签,再通过有监督机器学习将结果反馈给AI2,升级现有模型。基于反馈循环原理,随着时间和数据量增多,能够不断提升检测率。
在物联网入侵检测领域,结合物联网设备种类多、网络结构复杂等特点,艾丁·菲尔多西(Aidin Ferdowsi)等人提出了一种基于生成对抗网络(GAN)的分布式入侵检测系统[8],在不依赖任何集中式控制器的条件下对物联网进行异常行为检测。该方法假设一个物联网系统由若干组物联网设备组成,用生成对抗网络的方法,基于物联网设备正常运行的历史数据训练若干组物联网正常运行数据的鉴别器。这若干组鉴别器便构建成了分布式入侵检测系统的模型集。艾丁·菲尔多西等人通过实验表明这种基于生成对抗网络的分布式入侵检测系统的准确性最高可提高20%,精度可提高25%,误报率可降低60%。
4.2.4 恶意代码检测与分类
恶意代码是指具有恶意功能的程序,包括蠕虫、木马、僵尸程序、勒索软件、间谍软件等。目前已有大量研究利用机器学习从源代码、二进制代码和运行时的特征等入手,对程序进行针对恶意代码的检测与分类。
在恶意代码检测方面,主要通过提取恶意代码的静态特征,包括文件哈希值、签名特征、API函数调用序列、字符串特征等,结合恶意代码运行时的动态特征,包括CPU占用率、内存消耗、网络行为特征、主机驻留行为特征等构建恶意代码特征工程,利用深度学习或机器学习自动对可疑恶意代码进行检测判定。相比静态检测、动态检测、启发式检测和虚拟机检测等技术,研究者希望通过人工智能的方法来提升检测效率。腾讯安全团队基于真实运行行为、系统层监控、AI芯片检测、AI模型云端训练、神经网络算法等关键技术,研发了腾讯TAP-AI反病毒引擎[9]。该引擎相较于传统引擎具有抗“免杀”、高性能、实时防护、可检测未知特征恶意代码等优势,引擎可自动化训练,缩短了恶意代码査杀周期,减少了系统的运营成本。
有些研究者结合深度神经网络、自然语言处理等人工智能技术,希望可以在恶意代码特定领域的检测中做出创新。例如,亨德勒·丹尼(Hendler Danny)等人[10]提出了一种基于深度神经网络(DNN)的恶意Powershell检测方法,提取恶意Powershell字符集,构建卷积神经网络(CNN)的特征向量,训练一个卷积神经网络,同时又将Powershell当成文本处理,用n-gram和词袋模型构建一个逻辑回归分类器,实现了一种混合型的恶意Powershell检测器。
在恶意代码分类方面,基于对抗的需求,当前,许多恶意代码经常被设计为特征可变异的“免杀”模式,即恶意代码多态化,导致恶意软件样本变种数量剧增。传统基于恶意代码行为和字符特征的方法会出现较高的误判,这给恶意代码分类带来了新挑战。在2015年微软举办的Kaggle恶意代码分类挑战赛中,获得冠军的“say NOOOOO to overfittttting”战队[11]将恶意样本反汇编代码文件转换成图像作为样本的特征,通过精心设计,巧妙地将恶意代码分类问题转换为图像分类问题,从而成功地达到“免杀”的目的。这不仅因为图像分类在人工智能领域已是非常成熟的技术,容易进行甄别,更重要的是将代码转成了图像,就失去了代码本身所具有的微观特征,而突出了整体编程风格的特征。由于攻击者通常不知道图像分类器是如何以图像识别形式来对代码进行分类的,因此就无法仅通过在局部修改代码的方法去躲避分类器的判定。除非将攻击代码改造得面目全非,那样就会完全成为一个新的恶意代码,就已经不再属于“免杀”的范畴了。而冠军队伍再通过提取Opcode汇编操作码的n-gram、指令频度等特征,通过机器学习的方法,最终所提出的方法在挑战赛提供的数据集上达到了99.8%的准确率。
4.2.5 基于知识图谱的威胁猎杀
威胁猎杀(threat hunting)是以“人”为主导的深入的调查过程,是一种在积极防御层面可以迭代的主动威胁检测方法,旨在发现关键信息资产中潜伏的威胁[12]。威胁猎杀团队、威胁猎杀工具、数据与知识是支撑威胁猎杀的关键要素,三个要素之间相互协同配合。威胁猎杀团队需要使用自动化的威胁猎杀工具处理采集到的数据,通过与情报的关联分析挖掘出新的知识,并为猎杀团队提供威胁线索。威胁猎杀最关键的就是通过数据推导知识,利用知识图谱构建网络攻击行为知识库,能够指导用户有效地开展检测、防御和响应等工作。目前业界广泛使用的网络空间攻击链KillChain[13]模型和MITRE公司的ATT&CK(Adversarial Tactics,Techniques and Common Knowledge,对抗性策略、技术和通用知识)[14]网络攻击行为知识库模型,为识别入侵、深挖入侵和理解攻击行为提供了指导和支撑。
KillChain模型是美国洛克希德·马丁公司于2011年提出的从攻击者视角描述的一种针对性的分阶段攻击的网络安全知识模型,主要包括信息收集、武器定向投递、漏洞利用、代码执行、权限提升、横向移动/内网渗透等阶段。
ATT&CK模型是由MITRE公司基于真实攻击案例总结提炼而成的。该模型通过矩阵图的方式来描述网络攻击的生命周期,形成了一套粒度精细、知识模型和框架更易共享和扩展的攻击者行为知识库,能指导防御者开展更有针对性的检测与响应工作。
KillChain模型和ATT&CK模型的“攻击逻辑关系”与知识图谱的“实体关系分析”从本质上看都可用于威胁猎杀行动。例如,KillChain中的基本元素,即“阶段任务”,可以通过三元组(攻击者、攻击方法、受害系统)模式进行分解,从而体现网络系统中实体间的关联,形成网络图形结构的知识图谱模型。
4.2.6 用户实体行为分析
UEBA (User Entity Behavior Analytics,用户实体行为分析)是在UBA(User Behavior Analytics,用户行为分析)的基础上演变而来的。这里所增加的“E”是指实体(Entity),代指资产或设备,如服务器、终端、网络设备等。UEBA是由 Gartner公司于2014年提出的,用于描绘用户与实体的正常行为画像,从而达到异常检测和发现潜在威胁的目的。2018年6月,Gartner公司在安全与风险管理峰会上发布了2018年度的十大安全项目[15],其中和UEBA技术相关的有4个之多。据 Gartner公司预测,到2022年,以UEBA为核心技术的威胁检测和安全事件响应解决方案将达到80%以上。
机器学习是UEBA的重要组成部分,核心思路是利用机器学习算法学习历史数据,构建正常行为模型,并识别正常行为偏差。例如,通过分析小概率事件发现异常,突破传统规则分析方法的局限。同样也可以通过深度学习平台去训练更有效的UEBA模型。目前基于UEBA的思路已经在数据泄露、网络流量异常检测和APT(Advanced Persistent Threat,高级持续性威胁)检测等方面开始应用。
4.2.7 垃圾邮件检测
传统垃圾邮件检测方法主要是在邮件服务器端设置规则进行过滤检测。其规则通过配置发送端的IP地址/IP网段、邮件域名地址、邮箱地址、邮件主题或内容关键字等特征进行黑白名单设置。该方法只能检测已知垃圾邮件,规则更新具有滞后性,检测效率低。利用人工智能技术,实现规则的自动更新,能够有效地解决传统垃圾邮件检测方法存在的不足。利用机器学习算法对邮件文本分类是当前主流的解决方案。2017年6月,谷歌表示其基于机器学习技术的垃圾邮件和钓鱼邮件的识别率已经达到了99.9%[16]。同时,根据谷歌官方数据表明,Gmail收到的邮件中有50%~70%是垃圾邮件,这为机器学习模型的训练提供了源源不断的高质量数据源,再结合谷歌的算法能力和数据处理能力,实现了垃圾邮件检测模型的实时更新。