胡 明
(安徽医学高等专科学校,安徽 合肥 230001)
随着计算机网络的飞速发展,网络在人类社会的进步和发展中发挥着重要作用,但也带来了各种安全问题[1]。通常来说,无线网络攻击行为通过对计算机和硬盘等硬件设备来造成系统的崩溃或网络的瘫痪,这使得其检测与防护也有着一定的依据。目前已有各种无线网络攻击检测技术、设备被推出,例如VPN技术、防火墙技术、人脸识别技术等[2]。但不可忽视的是,这些已有的技术中仍存着不容忽视的缺陷,即智能被动的、静态的对攻击进行防护,无法完成对攻击的主动防御。因此,近年来具有主动防御能力的入侵检测技术越来越受到关注。
网络入侵检测是一种对抗计算机网络攻击的方法[3]。入侵检测系统通常是一种设备或软件应用程序,用于监视网络或系统活动中的恶意活动并生成报告。网络流量异常的检测作为大规模高速网络 (LSHSN) 安全管理的重要挑战之一,一直受到学术界的广泛关注,这使得入侵检测系统成为网络安全的重要组成部分,通常来说需要两个因素来确保入侵检测系统(IDS)有效性。首先,IDS应该能够提供可靠的检测结果。检测方法必须有效地识别入侵,而检测性能不佳会破坏IDS的可信度。其次,IDS 应允许在恶劣的环境中正常运行。然而,保持高检测精度具有挑战性。目前广泛使用的使用攻击特征来检测入侵的 IDS 无法发现新的攻击,这使得随着新入侵数量的增加,其保护计算机和应用程序变得越来越困难。因此,一种能够发现新攻击的有效检测方法对于可靠IDS的构建具有重大意义。本文的目的是设计一种入侵检测策略,该策略可以检测违反系统安全策略的入侵,并借助遗传算法从错误中学习自我进化。
本文使用的遗传神经网络算法主体是由遗传算法和改进遗传神经网络算法组成。应用遗传算法区分正常和异常入侵行为,更新入侵检测规则库并对实时入侵检测规则库进行建立,而后利用神经网络算法进行聚类分析。聚类有助于在多维未标记数据中找到待求数据,其主要优点是无需显式签名即可从审计数据中学习和检测入侵的能力,可以自动检测数据训练中的相似对象组。
从本质上看,遗传算法式一种基于达尔文生物进化论的数学计算模型,其原理在于模拟自然选择的过程,利用生物的基因遗传机制进行迭代处理,从而在自然选择中获得最优解。通常来说,遗传算法的搜索的数据来源为由特定个体构成的种群,其中每个个体代表一条具有一个基因组合编码的染色体,不难看出,这一染色体具有遗传特性,即这些个体携带的染色体是遗传物资的主要载体,而遗传物质由代码组成。因生物的遗传编码具有较高的复杂性,故通常遗传算法中的遗传物资仍采用二进制计算机语言进行编译。在第一代子代被生成后,其携带的突变基因被保留下来,之后的数代子代均携带这些突变基因并进一步进行突变,而遗传算法通过设置一定的筛选条件来模拟自然选择的过程,这就使得携带有用遗传物质的子代得到保留,相较于这些最优子代的次优子代以及突变方向更偏离目标的子代则被筛除,这便使得通过多代的演化得到的子代越来越接近于最优解。
深度学习是一类模式分析方法的统称。近些年来,深度学习相关技术在推荐领域的应用有所增加,通过深度学习技术可以深入研究数据的隐藏特征。 深度学习技术目前已被广泛用于为推荐的一些系统问题提供有效的解决方案;例如利用深度学习技术降低数据维度从各种数据源中提取特征参量并将其集成到推荐系统中,对用户偏好矩阵、内容辅助信息等进行建模。
人工神经网络,顾名思义为通过计算机模拟人脑,从而使计算机拥有人的形象思维与大规模并行协同处理能力以及容错相关能力等计算机不具备的功能,除此之外,更重要的是模拟人脑可赋予计算机学习的能力。从本质上说,人工神经网络是一个大型自组织、自适应的非线性系统。目前人工神经网络技术的发展已经逐渐趋向成熟,其种类也趋向繁多化,按网络拓扑结构可分为有反馈网络和无反馈网络,按网络学习方式可分为有监督学习网络和无监督学习网络。网络状态可以分为静态网络和动态网络。信息处理特征可分为连续网络和离散网络。
1)选择操作
本文采用轮盘赌式筛选的选择方式对种群进行选择,具体流程如下:首先根据给定种群的分布从先前种群中随机选择一条染色体作为算子,对第s代第j个个体的适应度进行计算,通过适应度获得选择概率psj,具体如式(1)所示:
psj=Fsjj=1NFsj
(1)
式中,Fsj表示sj在总体中的适应度值,当前种群中的解决方案是根据它们在下一个种群中生存的优点来估计的,这要求群体中的每个种群对应的解决方案都与前一个种群适应度值相关联。解串的适应度值取决于群体内的总变异,具有较小平方误差的解串必须具有较高的适应度值。
选择概率决定了样本通过筛选进入下一代的概率,在文中所提算法中,为了使算法的收敛速度得到提升,选择对采用轮盘赌方法产生的子代进行个体修正的方法,具体修正措施如下:提取获得的子代中的最优个体,将其适应度与bestFsj进行比较,若其大于bestFsj则将其保留,若其小于bestFsj则将该种群子代中的适应度函数最小值个体替换为best(s)。
2)突变操作
突变改变了基于解决方案的价值,关于聚类质心和相应数据点之间的距离。 每个解决方案对应一个数据点,其值代表该数据点所属的集群。 对应的聚类中心越靠近数据点,聚类数的值发生变化的概率就越大。
3)K-Means算子
K-Means算子由聚类中心的计算和集群中每个数据点的就近再分配构成。图 1 显示了遗传神经网络算法的流程图
图1 遗传神经网络算法流程图
簇被分配序列号0,1,…, (n-1)。N*N矩阵由D= [d(i,j)] 表示。第k个聚类的级别为L(k)。序列号为m的簇表示为 (m)。簇 (p) 和 (q) 之间的接近度表示为d[(r),(s)]。从级别L(O) = 0 且序列号m=O的不相交聚类开始。根据d[(p) 确定当前聚类中最不相似的聚类对,例如对 (p),(q) ,(q)]=mind[(i),G)],其中最小值是当前聚类中的整体聚类对。按照m=m+[递增序号,将簇(p)和(q)合并成一个簇,形成下一个簇m。此聚类的级别设置为L(m) =d[(p),(q)]。通过删除对应于簇 (p) 和 (q) 的行和列来更新邻近矩阵D。添加对应于新形成的簇的行和列。用 (p,q) 表示的新集群与旧集群 (k) 之间的接近度定义如式(2):
d[(k), (p,q)] =mind[(k),(P)] ,d[(k),(q)]
(2)
实施遗传 k-means算法以根据以下内容识别攻击:使用的参数-目标序列号 (DSN)、源序列号 (SSN)、节点 ID (NID)、恶意节点 ID (MN_ID) 和 RR(请求回复) .
1) 初始化:从源节点 S 开始发现阶段。分配当前时间和执行PriorReceive Reply所需的时间。
2) 存储:将所有的Route Replies DSN 和NID 存储在RR 表中。重复上述过程,直到超过时间。具体算法如下
While ((current time <= (current time + wait time))
{
Store the route replies DSN and NID in the RR Table.
}
3)攻击节点的识别和去除:从RR表中检索第一个条目。使用 SSN 检查 DSN。如果 DSN 大于 SSN,则丢弃从 RR 表中选择的第一个条目,具体算法如下。
If (DSN >SSN)
{
MN_ID = NID;
Discard entry from table
}
4)节点选择:根据DSN对RR Table条目的内容进行排序。选择RR表条目中DSN值最高的NID
5)继续默认过程:继续步骤3和步骤4,直到我们必须找到目标节点。调用默认 AODV 协议的 Receive Reply 方法。
采用网络模拟器NS-2.34对本文所设计的遗传神经网络算法进行测试,在测试中使用 AODV 协议检测无线传感器网络中的入侵,实验结果如下。
节点的初始部署和集群形成如图2所示。
节点间的数据传输如图3所示
图2 创建集群形成图
图3 节点间数据通信示意图
为了验证提出的使用遗传神经网络算法的入侵检测系统的有效性和优越性,选择使用检测率和误报率作为参考指标,与增强型入侵检测算法 (EIDA)和kmeans算法进行对比评估,结果如图4所示,由图可知遗传神经网络算法相较于增强型入侵检测算法 (EIDA)和 kmeans 算法具有较高的检测率
如图5所示,在实验过程中,相较于增强型入侵检测算法 (EIDA)和kmeans算法本文所提算法还显示出较低的误报率,检测到的误报保持在最低水平。
图4 检测率对比图
图5 误报率对比图
随着互联网的发展和智能手机的普及,无线网络通信已经普及到人们生活的方方面面,通信系统的安全性也成为越来越重要的问题。作为网络安全领域的一个难题,攻击识别和预防受到了学术界的广泛关注,有效的入侵检测系统对于确保网络安全至关重要。综合考虑了无线传感器网络由于其自组织部署、无人值守操作和能源效率的脆弱性而面临更高安全挑战的问题。从一个有效的入侵检测系统应该提供可靠和持续的检测服务出发,针对许多当前系统产生高误报率和低检测率的问题, 使用遗传神经网络算法对这些问题进行解决,并通过测试验证其可行性与优越性,该算法作为一个智能系统,可以分析生成的入侵警报,还可以检测新的攻击,而无需任何入侵签名。 结果表明,设计的遗传神经网络算法实现了高检出率和低误报率,更适合动态环境。