机器学习与数据挖掘在网络钓鱼检测中的应用
1. 相关研究背景
在系统运行中,为了分析故障和异常情况,数据挖掘算法被广泛应用。这些算法源于机器学习、人工智能、应用统计学、模式识别和数据库理论的交叉领域。1999 年,加州大学(UCI)发起了“KDD Cup ‘99”竞赛,聚焦于机器学习领域的算法,主题是计算机网络中的入侵检测。UCI 提供了网络流量和服务器事件的 40 参数向量集,每个向量描述一个 TCP 会话或单独的 UDP/ICMP 数据包。这些数据非常成功,多年来一直用于启发式网络入侵检测系统(NIDS)模型的测试。
研究人员提出了一种“几何方法”来构建无需监督学习的 NIDS 模型。该方法的基本原理是对向量进行预处理,然后应用单类支持向量机(one-class SVM)、最近邻或基于聚类的估计。通过在核函数中模拟高维空间的标量积,使向量线性可分,核心是光谱核。该方法在误报率(FR)为 1%时,异常检测率达到 98%;在 FR 为 0.5%时,异常检测率为 28%。
Eskin 和 Portnoy 针对相同的模型数据,提出了一种处理未标记数据的方法。首先对数据进行归一化,选择合适的度量 M 来确定向量间的相似度,然后使用度量 M 进行聚类。假设向量数量超过一定阈值的聚类为正常,其余为异常流量。在测试阶段,确定向量所属的聚类,判断其为正常还是异常。该模型的最佳异常检测率为 65.7%,此时 FR 为 0.178%。
此外,还提出了基于人工神经网络(ANN)的单类分类入侵检测模型。使用“KDD Cup ‘99”数据时,在正流量误报率为 1.33 · 1 - 5%的情况下,攻击检测率达到 96.7%,这表明基于 ANN 的单类分类启发式入侵检测系统是一个有前途的
机器学习在钓鱼检测中的应用
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



