智能化网络入侵行为检测模型的设计和实现

2024-02-03 08:52孙小丹
信息记录材料 2024年1期
关键词:检测模型

孙小丹

(福州职业技术学院 福建 福州 350108)

0 引言

计算机网络安全漏洞是指存在于计算机网络系统中的未修复或未被发现的安全弱点,将导致网络存在非法访问入侵、数据泄露、服务中断、恶意软件感染等安全问题。将人工智能技术应用于网络安全领域,能有效解决安全漏洞问题[1-2]。 目前,该技术在网络安全中的应用主要体现在:①网络威胁的检测与预测。 利用机器学习和深度学习技术,构建威胁检测模型,对网络流量、日志数据等进行实时监测和分析,以便及时发现异常活动和潜在的威胁。 同时,预测模型还能通过历史数据和行为模式来预测未来可能出现的安全威胁。 ②网络异常和入侵行为的检测。 利用训练过的机器学习模型,识别并拦截异常的网络行为,以减少其入侵所带来风险。 ③安全补丁的自动化管理。利用自然语言处理算法和机器学习技术,分析安全漏洞报告,对网络系统及其应用软件的安全补丁需求进行评估,让安全补丁的管理工作具有针对性。 ④病毒程序的识别。使用机器学习模型,对病毒程序样本进行分析,构建病毒程序的识别模型。 利用该模型自动识别网络病毒程序,阻止其在网络上传播,确保网络的安全。 ⑤用户身份认证和访问控制。 基于人工智能技术,可实现智能化的用户身份认证和访问控制。 例如,采用人脸识别、声纹识别等生物特征识别技术,突破传统的用户名和密码认证技术的局限,提高用户身份验证的安全性和准确性,从而阻止非法用户的访问。 ⑥防止钓鱼软件的攻击。 利用自然语言处理和文本分析技术,自动地识别并拦截钓鱼软件的攻击,以降低用户遭受网络诈骗的风险。

在上述的应用方向中,结合人工智能技术,构建一个智能化网络入侵行为检测模型,是解决网络安全漏洞问题的一个有效举措,也是当前网络安全领域的研究热点之一[3-4]。 智能化的网络入侵行为检测模型能快速地、智能地识别出流量异常、网络病毒、木马和黑客程序等各种入侵行为,及时地向防火墙发出预警信号,使其能自动拦截潜在的安全威胁。 本文围绕着这一研究热点,结合PyTorch 技术,对如何设计并实现一个智能化的网络入侵行为检测模型做进一步探讨。

1 PyTorch 技术及其优越性

1.1 PyTorch 技术

PyTorch 是一个由Facebook 开发并维护的开源机器学习框架。 它是构建深度学习模型的强大工具,能实现神经网络的设计、训练和评估,其核心技术主要包括动态图计算、自动求导、张量操作、模型容器、优化器、分布式训练与加速等。 由于PyTorch 技术的灵活性和易用性,现已被广泛应用于以下几个领域的研究和实践。

(1)计算机视觉领域。 PyTorch 提供了一系列用于图像处理、目标检测、图像分类、图像生成等任务的工具和库,可轻松构建许多网络模型, 如卷积神经网络(convolutional neural network, CNN)、 生成对抗网络(generative adversarial network,GAN)等。

(2)自然语言处理领域。 PyTorch 提供了丰富的工具和库,用于文本分类、机器翻译、情感分析、问答系统等任务。 由于PyTorch 具备动态图计算和自动求导功能,这降低了一些复杂操作的难度,如:处理长度可变的序列数据、构建循环神经网络(recurrent neural network,RNN) 模型等。

(3)语音识别领域。 PyTorch 提供的声学模型和语言模型可用于语音合成和语音识别系统的开发。 如:TorchAudio 可用于处理音频数据和构建声学模型。

(4)PyTorch 在强化学习中也有广泛应用。 强化学习是一种通过智能体与环境的交互,学习最优策略来解决问题的方法。 PyTorch 提供了用于构建强化学习模型的库和工具,如OpenAI Gym 和Stable Baselines3 等。

(5)神经网络研究领域。 PyTorch 作为一个灵活且易于扩展的深度学习框架,被广泛应用于神经网络研究。 研究人员可使用PyTorch 快速定义新的网络模型及其损失函数、优化器等,并实现模型参数的分析和优化。

除了上述的这些领域,PyTorch 也常用于信号处理、医学影像分析、金融数据分析预测等领域。

1.2 PyTorch 技术的优越性

PyTorch 技术的优越性[5]主要体现在:

(1)实现了动态图计算。 在程序运行时,PyTorch 可动态地构建、修改和调试计算图。 相比于静态图计算框架(如TensorFlow),动态图的计算框架更加灵活、直观,这让模型的设计和调试变得更加便捷。

(2)具备强大的图形处理器(graphics processing unit,GPU)加速功能。 PyTorch 通过集成计算机统一设备架构(compute unified device architecture,CUDA)技术,充分利用GPU 的并行计算能力来加速模型的训练和推断。 因此,PyTorch 能快速地完成大规模数据的分析任务、复杂模型的计算任务。

(3)实现自动求导。 PyTorch 内置的自动求导功能使得计算梯度变得非常简单。 通过跟踪模型的前向传播过程,PyTorch 可自动计算梯度,并在反向传播中应用这些梯度更新模型参数,这项功能对深度学习模型的训练至关重要。

(4)提供大量预训练模型。 PyTorch 提供了图像分类、目标检测、语义分割等任务的预训练深度学习模型。根据分析任务需要,借助这些模型,可在自定义的任务上实现迁移学习,从而加快模型的训练过程。

(5)具有丰富的工具和扩展库。 PyTorch 提供了许多工具和扩展库,以方便模型的开发、拓展和部署。 例如:TorchVision 用于处理计算机视觉任务,TorchText 用于自然语言处理任务,TorchServe 用于模型的服务化部署等。

综上,PyTorch 技术提供了丰富且功能强大的工具和库,使得深度学习模型的构建、训练和评估过程变得更加便捷,这为构建智能化的网络入侵行为检测模型提供了有力的技术支持。

2 网络入侵行为及危害

2.1 网络入侵行为

网络入侵行为即指未经授权的个人或组织通过互联网或其他网络渠道侵入他人的计算机系统、网络设备或数据库,以获取非法访问、窃取敏感信息、破坏系统或进行其他恶意活动的行为。 常见的网络入侵行为有:

(1)破解密码,即指黑客使用各种技术手段,如暴力破解、字典攻击等来获取系统或账户密码,以获取访问权限。

(2) 拒绝服务攻击(distributed denial of service,DDoS), 即指黑客通过向目标服务器发送大量的请求流量,使其资源耗尽,导致系统无法正常运行,从而使正常用户无法访问该服务。

(3)零日漏洞利用,即指黑客发现并利用尚未被公开和修复的软件漏洞,通过这些漏洞在目标系统中执行恶意代码。

(4)物理入侵,即指黑客通过实际进入目标设施来获取物理接触并入侵系统,例如,插入恶意硬件设备或直接访问受保护的服务器。

(5)木马程序,即指黑客通过在目标系统上植入木马程序,远程控制或监视受感染的设备,窃取敏感信息或执行其他恶意活动。

(6)蠕虫病毒攻击,即指黑客通过向网络中的其他系统发送自身拷贝,从而快速传播并感染更多的设备,导致网络堵塞或服务中断。

(7)社交工程,即指黑客利用心理欺骗手段和社交技巧,通过伪装成合法用户或通过引诱受害者来获取敏感信息、密码或其他访问权限,达到网络欺诈的目的。

(8)无线网络入侵,即指黑客通过渗透目标的无线网络,窃取通信数据或获得对目标设备的访问。

2.2 网络入侵行为的危害

网络入侵行为将给个人、企事业单位带来诸多的危害,主要体现在以下三个方面:

(1)信息泄露。 网络入侵者可通过入侵行为,窃取他人身份信息、金融数据、商业机密等敏感信息,这将导致隐私泄露、声誉受损、商业泄密等严重后果。

(2)系统瘫痪。 黑客通过入侵网络系统,破坏或禁用关键的服务,导致系统崩溃、停机或无法正常运行,使得执行中的业务被强制中断,造成客户流失、企业声誉受损等后果。

(3)资金盗窃。 入侵者可能利用网络漏洞和弱点,盗取个人或企/事业单位的银行账户、支付信息或数字货币等财务信息,组织系列金融诈骗活动,导致个人或企/事业单位的财产损失。

为了防止网络入侵行为,个人或企/事业单位需采取一系列的安全措施,如使用强密码、定期更新软件补丁、部署防火墙和入侵检测系统、网络社交安全意识培训等。 其中,由于防火墙和入侵检测系统能自动识别并拦截网络入侵行为,因此该系统在网络安全防护中起着至关重要的作用。

3 智能化网络入侵行为检测模型的设计和实现

在防火墙和入侵检测系统中,网络入侵行为检测技术为系统的核心技术[6]。 该技术主要通过入侵行为检测模型,筛查出网络中违反安全策略或攻击网站的入侵程序,为防火墙及时拦截这些程序做好准备。 入侵行为检测模型的定义决定了入侵检测工作的质量。 常用的入侵行为模型可分为:误用入侵行为检测模型和异常入侵行为检测模型[7]。 其中,误用入侵行为检测模型虽然操作简单、检测速度快且准确度高,但其对未知网络入侵行为的检测能力较低。 异常入侵行为检测模型不仅能检测出已知的网络入侵行为,还能检测出未知的网络入侵行为。 相比误用入侵行为检测模型,该模型的定义更加合理,但模型运行的稳定性不高,且检测速率偏低,因此需要对其做进一步改进。

3.1 模型的代码实现

针对异常入侵行为检测模型存在的弊端,本文联合PyTorch 技术[8]构建一个智能化的网络入侵行为检测模型。 新模型不仅具备学习能力,同时运行的稳定性和速度均有较大程度的提高,其关键代码如下所示。

上述代码定义了一个名为IntrusionDetectionCNN 的网络入侵行为检测模型。 该模型采用卷积神经网络算法,根据训练集、测试集中各种网络行为特征数据,通过全连接层将集合里包含的网络行为分为入侵型和非入侵型等。

3.2 性能评价指标

由于网络入侵行为检测模型的性能好坏将直接影响模型拦截网络入侵行为的效果,因此需对模型的运行性能进行定量评价。 基于此,本文提出几个指标,用于模型运行性能的定量评价,具体如下所述。

(1)训练损失值(training loss,TL)

TL 即模型在训练过程中,通过损失函数计算的数值,该值体现了模型在训练集上的拟合情况,理想的状态是TL 值随着模型训练次数的增加而稳步下降。

(2)验证损失值(validation loss,VL)

VL 即模型在验证集上计算获得的损失值,该指标可用于评估模型的泛化能力,即模型对未知入侵行为的预判能力,若VL 值低,则说明模型具有较好的泛化性能。

(3)训练准确率(training accuracy,TRA)

TRA 为模型在训练集上分类的准确率,即被模型正确分类的样本占比。 理想状态下,随着训练的进行,TRA值应逐渐提高。

(4)验证准确率(validation accuracy,VA)

VA 为模型在验证集上的分类准确率,该指标与验证损失值类似,VA 值的大小代表了模型泛化能力的高低。

(5)测试准确率(test accuracy,TEA)

TEA 表示模型在独立的测试集上的分类准确率。 该指标用于评估模型在实际应用中的效果,对于网络入侵行为检测模型来说,代表了模型对未知网络入侵行为的分类能力。

除了以上五个指标,还可以根据具体的任务需求和数据集特点,采集其他自定义的指标和执行结果数据。 例如,可以统计不同类别的精确度、召回率等指标,或者记录模型训练过程中的学习率变化情况等。 在模型训练和调优的过程中,可以监督上述评价指标的数值大小和变化趋势,对模型的训练进展和性能进行评价。 根据评价数据,实时地对模型结构和参数做调整和优化,确保其运行的可靠性和准确性。

3.3 网络入侵行为检测流程

采用本文所提的模型,对网络入侵行为进行检测,具体流程为:(1)检测前,先依据训练集的行为数据,对模型做迭代训练,直到训练结果收敛至预先给定的阈值。(2)利用训练好的模型,对测试集中的网络行为进行分类,基于分类结果,采用性能评价指标,对模型的运行性能做定量评价。 根据评价数据,对模型的结构和参数进行调整和优化,直到模型性能的评价数据达到预期值。 (3)将模型用于网络入侵行为检测。

模型的训练和调优是执行检测流程的关键环节,其结果将直接影响网络入侵行为检测工作的质量和效率,具体过程包含以下三个关键步骤。

步骤一:前向传播,计算模型输出和损失。

步骤二:利用损失函数和优化器进行反向传播和优化。

步骤三:模型调优。 采用性能评价指标,评估模型每个阶段的训练情况,根据评估数据,对模型的结构和参数进行调优,例如,增加或减少卷积层、全连接层的数量和大小,以适应不同的入侵行为检测任务。 在实际操作过程中,还需将新的网络行为数据添加到训练集中,确保模型具备对抗不断进化的网络入侵行为的能力。

4 结语

为了解决网络入侵行为带来的危害,本文顺应网络入侵行为检测技术的发展趋势,结合PyTorch 技术,提出一个智能化网络入侵行为检测模型,并对模型的代码实现、性能评价指标和执行流程进行了阐述。 新模型能检测出已知/未知的网络入侵行为,且具有较高的准确性和可靠性。 目前,模型还存在着一些不足,如模型分析能力有待提升、模型对训练集的依赖等,对模型的改进是后续研究工作的重点。

猜你喜欢
检测模型
适用于BDS-3 PPP的随机模型
“不等式”检测题
“一元一次不等式”检测题
“一元一次不等式组”检测题
p150Glued在帕金森病模型中的表达及分布
“几何图形”检测题
“角”检测题
重要模型『一线三等角』
重尾非线性自回归模型自加权M-估计的渐近分布
3D打印中的模型分割与打包