摘要

一种面向高速网络抽样数据 采集场景的慢速端口扫描检测方法,该方法首先 对公开数据集进行系统抽样,然后利用一个包含 4个计数器和2个哈希表的sketch结构提取流量 特征。首先采用K‐means算法对流量特征进行聚 类,然后基于规则对已知扫描流所在簇中的流量 进行验证和标注,进而构建具有完整标签的训练 集。最后,利用有监督机器学习算法训练用于端 口扫描检测的分类模型。该分类模型在抽样数据 采集情景下检测出高速网络中TCP和UDP的慢速 端口扫描活动,对于持续时间超过50天的慢速扫 描攻击,该方法仍然有效。本发明使用有限的内 存实现对海量高速流量中端口扫描事件的检测, 被网络管理者用于高速网络中的安全事件监测。

背景技术

端口扫描是指攻击者向目标主机发送一组探测消息并等待回复,通过观察收到的 响应获取目标主机的端口状态,进而了解其提供的网络服务类型。尽管端口扫描攻击不会 直接对受害者造成实质性的伤害,但它们会暴露目标主机可以被攻击的入口点。因此,端口 扫描检测对于防止攻击者对网络系统造成进一步破坏具有至关重要的意义。

一些恶意的攻击者为了避免被发现,会执行慢速端口扫描。在慢速扫描攻击 中 ,扫 描 探 测 包 之 间 的 时 间 间 隔 较 长 ( 1 0 秒 以 上 ) ,其 表 现 出 的 流 量 特 征 不 够 明 显 ,并 且 与 大 量正常流量交错,所以很难被现有的入侵检测系统发现。可见,检测慢速端口扫描是一项重 要且具有挑战性的任务。

基于阈值的端口扫描检测方法

  1. 基于阈值的方法通过判断时间内每个源IP地址请求的端口数量是否超过预定的阈值来确定端口扫描攻击是否发生,然而,此类方法的准确性受时间窗口大小的 影响很大。由于慢速端口扫描通常具有持续时间长、探测包之间时间间隔大的特点,因此, 这类方法在检测慢速端口扫描时准确率非常低。

基于机器学习的端口扫描检测方法

基于机器学习的检测方法通过训练分类模型实现对未知流量的检测,该类方法需要预先对全部或者部分特征数据进行人工标记,然而,面对具有海量流量数据的高速网络人工标记需要耗费十分昂贵的代价。这种对标签数据的强依赖性导致现有的基于机器学习的端口扫描检测方法不能应用于高速网终环境.

kzXaG1