中文站

机器学习、深度学习、和AI算法可以在网络安全中做什么?

本文作者:Alexander Polyakov,ERPScan的首席技术官和联合创始人、EAS-SEC总裁,SAP网络安全传播者。

现在已经出现了相当多的文章涉及机器学习及其保护我们免遭网络攻击的能力。尽管如此,我们也要清楚的去将理想与现实分开,看看机器学习(ML),深度学习(DL)和人工智能(AI)算法到底可以在网络安全中做什么。


首先,我必须让你失望,因为我们必须承认的是,尽管机器学习在图像识别或自然语言处理这两个领域取得了不错的成绩,但机器学习绝不会成为网络安全的silver bullet(银弹:喻指新技术,指人们寄予厚望的某种新科技)。总会有人试图在我们的系统中发现问题并试图绕过它们。更糟糕的是,这些先进的技术也正在被黑客们使用,例如黑客也可以使用机器学习来实现他们的意图。

机器学习不仅可以帮助我们完成典型的ML任务,包括回归(预测)、分类、聚类,推荐。ML也可以针对各种需求以不同的效率解决问题,这要根据你选择的算法而定。现在,我们将利用机器学习解决典型的网络安全任务。

根据Gartner的PPDR模型,所有的安全任务可以分为五类:预测(prediction),预防检测(prevention detection),响应(response)和监测(monitoring)。更精确地说,它们可以用于网络(网络流量分析和入侵检测),端点(反恶意软件),应用程序(WAF或数据库防火墙)或用户(UBAs,反欺诈)等技术层。

现在,让我们看看当前机器学习方法如何应用于网络安全任务的例子。

一、回归

回归是一项简单的任务,换句话说预测是一项简单的任务。我们希望利用我们对现有数据的了解对新数据发表预测意见,最简单的例子就是房价预测。在网络安全中,它可以用于诸如用户行为分析以及欺诈检测等任务。网络流量分析是使用机器学习的另一个好选择。至于回归的技术方面,各种类型的递归神经网络效果最好。

二、分类

分类问题也很简单。如果你有两堆照片,比如说狗和猫,你会很容易地把新照片放到相应的照片上,这通常称为监督式学习。我们确切知道我们正在寻找什么,并把他们放在正确的地方。那么如何将机器学习的分类算法应用于网络安全中呢?假设我们想要检测不同层上的恶意活动。对于网络层,我们可以将其应用于入侵检测系统(IDS),并识别不同类别的网络攻击,如扫描,欺骗等。在应用层,我们可以将它应用于WAF并检测OWASP top 10攻击。在终点层,我们可以将软件分为恶意软件,间谍软件和勒索软件等类别。最后,在用户级别上,它可以应用于反钓鱼解决方案,告诉我们特定的电子邮件是否合法。从技术上讲,SVM或随机森林等算法以及更好的简单的人工神经网络或卷积神经网络都可以解决这些任务。

三、聚类

聚类与分类解决网络安全问题的思路大体是一致的,只有一个主要地区别:我们不知道关于数据类的任何信息。此外,我们不知道这些数据是否可以分类。这被称为无监督学习。我们不参与到数据标注过程中,将所有的任务都交给机器完成,听起来这是一个非常有趣的尝试。

我觉得聚类最好的任务之一就是取证分析——当我们不知道发生了什么事情并将所有活动分类以找出异常值时,恶意软件分析解决方案(即恶意软件防护)可以实施它来将合法文件与异常值分开。聚类可应用的另一个有趣的领域是用户行为分析。在这种情况下,应用程序用户聚集在一起,并且可以查看它们是否属于特定的组。根据他们所在的组,提供相应的有效的网络安全解决方案。

四、推荐

推荐系统是互联网时代非常出名的系统。例如,我们都使用Netflix和SoundCloud时,他们会根据你的电影或音乐偏好给你推荐他们认为你喜欢的电影或歌曲。这种思想同样也可以应用于网络安全,其中它主要可以用于事件响应。如果一家公司面临一系列事件并提出各种类型的响应,系统可以了解应针对特定事件推荐哪种类型的响应。风险管理解决方案还可以从中受益,因为它们可以自动为新漏洞分配风险值或基于其描述构建错误配置。现在关于推荐任务已经出现了很多算法,最新的是基于受限制的玻尔兹曼机器和它们的更新版本,例如深度信念网络。

五、结论

除了我提到的这些安全领域之外,还有很多安全领域可以应用机器学习。如果你想保护你的系统,机器学习绝对不是一个完美的解决方案,但同时,它在不久的将来也将成为网络安全中的标配方案,因为黑客已经开始利用机器学习作为攻击手段了。

那易盾都是怎么运用人工智能的呢?再分享两篇干货文章: 

人工智能图片鉴黄原理和应用

实用技术干货!教你用机器学习提高日常安全运维工作中的效率