机器学习在网络安全中的应用

2019-11-17 04:05丁程程崔艳荣
电脑知识与技术 2019年26期
关键词:入侵检测隐私保护机器学习

丁程程 崔艳荣

摘要:网络安全事关国家安全,它已被多个国家纳入国家安全战略。在我国,网络安全已得到政府的高度重视,国家层面明确意识到网络安全对国家安全牵一发而动全身。与此同时,危害网络的新手段正不断涌现,导致网络安全威胁与日俱增,全球的网络安全形势都不容乐观。在这种严峻的网络安全形势大背景下,大量研究人员正不断致力于寻找解决网络安全问题的新技术。而机器学习正是能够有效解决网络安全问题的技术之一,为此,该文圍绕机器学习技术应用于网络安全领域的最新研究成果,首先介绍了网络安全的关键技术并阐述了机器学习技术在网络安全领域中的应用流程,然后介绍了常见的网络安全研究方法,着重介绍了机器学习在网络安全中的解决方案,最后展望了机器学习在网络安全研究中的发展趋势。

关键词:机器学习;网络安全;入侵检测;隐私保护

中图分类号:TP393                文章标识码:A

文章编号:1009-3044(2019)26-0044-02

开放科学(资源服务)标识码(OSID):

Abstract: Cyber security is a matter of national security, which has been incorporated into national security strategy by many countries.In our country, network security has been highly valued by the government, the national level clearly aware of the network security on national security.At the same time, new means to harm the network are emerging, leading to the increasing threat of network security, the global network security situation is not optimistic.In the context of this severe network security situation, a large number of researchers are constantly looking for new technologies to solve network security problems.And machine learning is one of the effective technology to solve the problem of network security, and to this end, the paper around the machine learning technique is applied to the latest research achievements in the field of network security, firstly this paper introduces the key technology of network security and expounds the machine learning technology application in the field of network security process, then introduces the common network security research methods, introduces the machine learning in the network security solution, finally prospects the development trend in the study of machine learning in network security.

Key words: machine learning; network security; intrusion detection; privacy protection

1   引言

网络安全是一个比较宽泛的概念。百度百科上面对“网络安全”的定义,是指网络系统的硬件、软件及其系统中的数据受到保护,不因偶然的或者恶意的原因而遭受到破坏、更改、泄露,系统连续可靠正常地运行,网络服务不中断。通常把计算机网络面临的安全性威胁分为被动攻击和主动攻击。被动攻击指攻击者从网络上窃听他人的通信内容,这类攻击又称为截获。被动攻击又被称为流量分析,是指在被动攻击中,攻击者只是观察和分析某一个协议数据单元PDU,以便了解所交换的数据的某种性质,但比干扰信息流。主动攻击主要有故意篡改网络上床送的报文,恶意程序(计算机病毒、计算机蠕虫、特洛伊木马、逻辑炸弹、流氓软件等等),拒绝服务。拒绝服务指攻击者向互联网上的某个服务器不停地发送大量分组,使该服务器无法提供正常服务,甚至完全瘫痪。

通常机器学习被认为是一组能够利用经验数据来改善系统自身性能的算法集合。本文从机器学习技术应用于网络安全的角度出发,总结了机器学习的一般应用流程,如图1所示,机器学习在网络安全研究中的一般应用流程主要包括问题抽象、数据采集、数据预处理及安全特征提取、模型构建、模型验证及效果评估六个阶段。在整个应用流程中,各阶段不能独立存在,相互之间存在一定的关联关系。

2  常用的网络安全研究

2.1 恶意软件检测技术

恶意软件已经成为网络安全的主要威胁之一,它在未经授权的情况下,自动在系统中进行安装、执行,以达到不正当的目的。在早期恶意软件主要表现为计算机病毒,因此,恶意软件检测技术就是单纯的计算机病毒扫描技术。随着信息技术和软件技术的不断发展,恶意软件已不再局限于计算机病毒,而是涌现出大量的新型恶意软件。

目前常用的恶意软件检测技术有:特征码技术、覆盖法技术、驻留式软件技术、特征码过滤技术、虚拟机技术、启发扫描技术、病毒疫苗等,最初并且现在还在用的是特征码技术。特征码技术就是在获取病毒样本后,提取出其特征值,然后通过该特征值对各个文件或内存等进行扫描,如果发现其特征值,就说明感染了其病毒。随着病毒技术的发展,虚拟机技术出现,所谓虚拟机就是用软件先虚拟一套运行环境,让病毒先在该虚拟环境下运行,看其执行效果。

2.2 入侵检测技术

入侵检测是对企图入侵、正在进行的入侵或者已经发生的入侵进行识别的过程。它在不影響网络性能的情况下能对网络进行监测,收集计算机网络或系统中的关键信息,并对其进行分析,从中发现是否有被攻击的迹象。目前,可以将入侵检测的分析方法分为特征检测和异常检测。特征检测又称为误用检测,它是将已知的入侵用一种模式来表示,形成网络特征攻击库,然后用网络特征攻击库中的特征与输入的待分析数据源进行比较,如果发现匹配的特征,则表示发生了一次攻击。异常检测不需要庞大的网络攻击特征库,它是收集正常活动的规律,将待检测的活动与收集的正常活动规律进行比较,对于违反正常活动规律的行为认为是入侵行为。

3  机器学习在网络安全研究中的应用

3.1 机器学习在入侵检测中的应用

在机器学习中,分类方法的任务就是要确定待分析的数据中,哪些对象属于哪个预定义的目标类。将机器学习的分类方法应用到入侵检测中,就是把入侵检测看作一种分类问题,其目标就是将待检测的源数据分类为正常活动和入侵行为。

基于分类方法的入侵检测过程可以归纳为:首先使用包含正常和各种入侵的历史数据作为训练模型,再应用分类算法在数据上进行学习,建立分类模型,分类模型可以转化为识别正常活动和各种入侵行为的规则;最后使用这些规则对新的待检测数据进行分类判断,判断它是正常活动还是入侵行为。

机器学习中的分类方法能够从大量的审计数据和网络数据中抽取出能充分描述网络连接和主机会话的特征,并学习出分类模型,发现待检测数据中隐藏的入侵行为的分类规则。机器学习的分类方法已在入侵检测中得到广泛的应用,其中决策树、贝叶斯定理、最邻近、支持向量机、人工神经网络等经典分类方法都已被应用到入侵检测中。如图2所示,描述了决策树分类方法在入侵检测中的应用。

3.2 机器学习在恶意软件检测中的应用

近年来,出现了许多基于机器学习算法的恶意软件检测的研究,同时机器学习以大量应用于恶意软件检测中,并取得了良好的成果。目前,研究人员将机器学习技术用于检测恶意软件比较成熟的技术有分类技术、聚类技术等。

分类技术在恶意软件检测中的基本原理是对已知的恶意软件和正常样本数据进行学习,采用合适的分类算法构建恶意软件的分类模型,再通过这个分类模型对未知文件进行监测,判断其是否为恶意软件。基于分类技术的恶意软件检测过程包含两个步骤:训练恶意软件分类模型和检测恶意软件。分别如图3、图4所示。在训练恶意软件分类模型中首先从文本训练样本中提起文本特征,然后构建样本特征数据库,最后采用一定的机器学习算法训练处恶意软件分类模型。当恶意软件分类模型生成后,提取待检测样本中的特征数据来构建文本样本检测数据集,结合训练好的恶意软件分类模型对待检测数据集进行分类,最终得到检测结果。在机器学习中,决策树分类算法、贝叶斯分类算法、关联分类算法在恶意软件检测中均以成功应用。

4  总结

在迅猛发展的网络空间中,大量的网络安全难题有待解决,正是这种实际的网络安全应用需求促使研究人员将经典的机器学习算法应用于网络安全领域。近年来,基于机器学习的技术的网络安全研究成果不断出现在各种报道和文献中,这些研究成果在解决网络安全问题方面取得了良好的成效,许多机器学习算法都凸显了其解决网络安全恶疾的良好能力。但是,目前的技术解决方案还不能完全满足网络安全的应用需求,还存在着目前一些难以解决的问题和可以再进一步的研究方向。采用机器学习技术解决网络安全问题仍是一件具有挑战的工作,在解决网络安全问题的同时,机器学习本身也存在着一定的难点。因此,如何选择合适的机器学习算法来有效解决网络安全问题需进一步深入研究。

参考文献:

[1] 叶艳芳.恶意软件智能检测若干方法的研究及其应用[D].厦门大学,2010.

[2] Dash M,H Liu. Feature selection for classification[J]. Intelligent Data Analysis, 1997,1(s 1-4):131-156.

[3] 高志森.混合式入侵检测系统中入侵检测分类器模型的研究与实现[D].南京航空航天大学,2007.

[4] 张蕾,崔勇,等.机器学习在网络空间安全研究中的应用[J].计算机学报,2018(9):1943-1975.

【通联编辑:梁书】

猜你喜欢
入侵检测隐私保护机器学习
前缀字母为特征在维吾尔语文本情感分类中的研究
基于支持向量机的金融数据分析研究