网络安全中的人工智能和机器学习
人工智能先驱 Arthur Samuel 将人工智能描述为“使计算机无需经过明确编程即可进行学习”的一组方法和技术。对于反恶意软件的监督式学习这一特定情况,可以将该任务表述为:给定一组对象特征 \( X \) 和相应的对象标签 \( Y \) 作为输入,创建一个模型,该模型将为先前未见过的测试对象 \( X' \) 生成正确的标签 \( Y' \)。\( X \) 可能是代表文件内容或行为的某些特征(文件统计信息、使用的 API 函数列表等),而标签 \( Y \) 可能只是“恶意软件”或“良性”(在更复杂的情况下,我们可能会对精细分类感兴趣,例如病毒、特洛伊木马下载器、广告软件等)。对于非监督式学习,我们对于揭示数据内的隐藏结构更感兴趣 — 例如,找到相似对象或高度相关特征的组。
卡巴斯基的多层下一代保护解决方案在检测管道的所有阶段都广泛使用了机器学习等人工智能方法 — 从用于预处理传入文件流的可扩展聚类方法,到稳健紧凑型深度神经网络模型(直接在用户计算机上执行行为检测)。这些技术旨在满足现实世界网络安全应用的几个重要需求,包括
我们来考虑一下卡巴斯基端点产品中使用的一些最重要的、基于机器学习的技术:
决策树组合
在这种方法中,预测性模型采用一组决策树的形式(例如,随机林或梯度提升树)。树的每个非叶节点都包含一个有关文件特征的问题,而叶节点则包含树关于对象的最终决策。在测试阶段,模型通过回答节点(包含正在考虑的对象的相应特征)中的问题来遍历树。在最后阶段,以特定于算法的方式对多个树的决策求平均值,以提供关于对象的最终决策。
该模型使端点站点上的执行前主动保护阶段受益。这项技术的应用之一是用于移动威胁检测的 Cloud ML for Android。
相似性哈希(位置敏感型哈希)
过去,用于创建恶意软件“足迹”的哈希对文件中的每个小变化都很敏感。恶意软件编写者通过服务器端多态性之类的混淆技术来利用此缺陷:恶意软件的微小变化使它可以规避检测。相似性哈希(或位置敏感型哈希)是一种检测相似恶意文件的人工智能方法。为此,系统会提取文件特征并使用正交投影学习来选择最重要的特征。然后应用基于机器学习的压缩,以便将相似特征的值向量转换为相似或相同的模式。这种方法提供了良好的通用性,并显著减小了检测记录库,因为现在一条记录可以检测整个多态恶意软件系列。
该模型使端点站点上的执行前主动保护阶段受益。它已在我们的相似性哈希检测系统中得到应用。
行为模型
监控组件提供行为日志 — 进程执行期间发生的系统事件序列以及相应的参数。为了在观察到的日志数据中检测恶意活动,我们的模型将获得的事件序列压缩为一组二进制向量,并训练深度神经网络来区分干净日志和恶意日志。
在端点端,卡巴斯基产品的静态和动态检测模块均使用了行为模型执行的对象分类。
人工智能在构建适当的实验室内部恶意软件处理基础设施方面也发挥着同样重要的作用。卡巴斯基将其用于以下基础设施目的:
传入流群集
基于 ML 的群集算法使我们能够将进入基础架构的大量未知文件有效地分离到合理数量的群集中,其中一些群集可以根据其中存在的注释对象自动进行处理。
大规模分类模型
一些最强大的分类模型(例如大型随机决策林)需要大量资源(处理器时间、内存)以及昂贵的特征提取器(例如,对于详细行为日志,可能需要通过沙盒进行处理)。因此,更有效的方法是在实验室中保存和运行模型,然后针对较大模型的输出决策训练一些轻量级分类模型,从而提取通过这些模型获得的知识。
使用人工智能的机器学习方面的安全性
一旦从实验室内发布并进入现实世界,机器学习算法可能容易遭受多种形式的攻击,迫使机器学习系统故意犯下错误。攻击者可以污染训练数据集,或对模型的代码进行逆向工程。此外,黑客还可以借助专门开发的“对抗性人工智能”系统来“暴力破解”机器学习模型 – 该系统可以自动生成大量攻击样本,并针对保护解决方案或提取的机器学习模型发起攻击,直到发现模型的弱点。此类攻击对于使用人工智能的反恶意软件系统的影响可能是灾难性的:错误识别的特洛伊木马程序意味着数百万台设备受到感染,损失数百万美元。
因此,在安全系统中使用人工智能时,需要考虑一些关键因素:
- 安全供应商应了解并仔细解决人工智能元素在现实世界、潜在敌对世界中的基本性能需求,包括针对潜在对手的稳健应对。机器学习/人工智能特定的安全审核和“红队判研”应该是使用人工智能的某些方面开发安全系统的关键组成部分。
- 在在评估使用人工智能元素的解决方案的安全性时,应询问解决方案在多大程度上依赖于第三方数据和架构,因为许多攻击都基于第三方输入(我们讨论的是威胁情报源、公共数据集、预训练和外包的人工智能模型)。
- 机器学习/人工智能方法不应被视为灵丹妙药,它们需要成为多层安全方法的一部分,在该方法中,互补的保护技术和人类的专业知识协同工作,互相支持。
重要的是要认识到,虽然卡巴斯基在网络安全解决方案中有效使用人工智能(如机器学习及其深度学习子集)方面拥有丰富的经验,但这些技术并不是真正的人工智能或人工通用智能 (AGI)。在机器能够独立运行并完全自主地执行大多数任务之前,还有很长的路要走。在那之前,网络安全中人工智能的几乎每个方面都需要人类专业人士的指导和专业知识来开发和完善系统,并随着时间的推移增强其功能。
要更详细地概览针对机器学习/人工智能算法的热门攻击以及防范这些威胁的方法,请阅读我们的白皮书《遭遇攻击的 AI:如何保护安全系统中的人工智能》。