基于OCSVM双轮廓模型的ModbusTCP通信行为异常检测方法

文档序号:9923825阅读:647来源:国知局
基于OCSVM双轮廓模型的Modbus TCP通信行为异常检测方法
【技术领域】
[0001] 本发明是一种基于OCSVM双轮廓模型的Mo化US TCP通信行为异常检测方法,属于 工业控制系统网络信息安全领域。
【背景技术】
[0002] 随着工业信息化进程的快速推进,信息、网络W及物联网技术在智能电网、智能交 通、工业生产系统等工业控制领域得到了广泛的应用,极大地提高了企业的综合效益。为实 现系统间的协同和信息分享,工业控制系统也逐渐打破了 W往的封闭性;采用标准、通用的 通信协议及硬软件系统,甚至有些工业控制系统也能W某些方式连接到互联网等公共网络 中。送使得工业控制系统也必将面临病毒、木马、黑客入侵、拒绝服务等传统的信息安全威 胁,而且由于工业控制系统多被应用在电力、交通、石油化工、核工业等国家重要的行业中, 其安全事故造成的社会影响和经济损失会更为严重。
[0003] 2010年,一种强大的旨在攻击西口子制造的工业控制系统的计算机病毒 "Stuxnet"出现,该病毒会传播到插入电脑USB接口的设备中,并从中窃取数据。送是骇客 首次尝试入侵大型工业电脑系统病毒。此次事件敲响了"防范病毒攻击"的警钟。
[0004] 2013年六月的"棱镜口"事件,信息安全再次广泛引起关注。当大数据的获取和分 析成为棱镜计划的必经之路,不可避免地,身处科技前沿的企业卷入送一计划。智能工业控 制领域也无法独善其身。
[0005] 传统的IT安全防护技术比如防火墙、防病毒软件、入侵检测技术等,难W有效的 应用于工业控制系统。送主要是因为采用包过滤的防火墙难W针对应用层上的攻击进行防 护,检查的力度和实时性成反比,且对于内部的攻击无能为力。工控系统安装杀毒软件需要 非常谨慎,一旦出现误杀后果可能相当严重。
[0006] 工业是国家关键基础设施的重要组成部分,工业控制系统的安全关系到国家的战 略安全。当前,工业控制信息化、H网融合、物联网、云计算在内的多种新型信息技术的发 展与应用,给工业控制系统信息安全保障工作提出了新任务、新挑战,工业控制系统的安全 问题不容忽视。
[0007] 入侵检测系统能使在入侵攻击对系统产生危害前检测到攻击,并发出报警,启动 防御措施。目前,入侵检测主要分为两类;误用检测和异常检测。误用检测是通过与已知 的异常行为间的匹配程度来实现入侵检测,通常也称为是基于先验知识的入侵检测;而异 常检测是通过建立正常行为模型来寻找偏离的异常行为,因此也被称为基于行为的入侵检 巧1|。异常检测和误用检测相比,漏报率降低,并且可W检测出W前没有出现过的入侵行为, 但异常检测误报警率较高。
[000引在工业控制入侵检测中,基于"白名单"规则的异常检测方法能够有效检测单条通 信协议的异常行为,但无法检测同时存在于多个数据包中的通信异常行为,基于通信模式 的异常检测方法能够弥补其不足。
[0009] 本发明提出选取Mo化US功能码送一重要字段作为研究对象,根据能够处理包含 不同数目Mo化US功能码序列的预处理方法,并基于单类支持向量机方法,构建工业控制系 统通信行为的正常行为轮廓模型和异常行为轮廓模型,即双轮廓模型,设计了一种基于粒 子群算法(PSO)进行参数寻优的PSO-OCSVM双轮廓模型的通信行为异常检测方法,通过双 轮廓检测模型的协同判别W实现辨识防火墙与入侵检测系统未能识别的攻击行为或者异 常行为。

【发明内容】

[0010] 针对在【背景技术】中提出SCADA、DCS等工业控制系统样本分布不平衡或者异常样 本难W获取的情况,本发明提出一种基于OCSVM双轮廓模型的Mo化usTCP通信行为异常检 测方法,基于单类支持向量机算法建立通信行为双轮廓模型进行工业控制系统异常检测。
[0011] 本发明为实现上述目的所采用的技术方案是:一种基于OCSVM的通信行为异常检 测方法,包括W下步骤:
[0012] 特征提取;分别采集工业控制系统中Mo化US TCP正常通信流量和异常通信流量, 并分别进行存储并剔除不必要的信息,最终转化为仅包含Mo化US功能码的两个序列;
[0013] 数据预处理;根据需要设定短序列的长度r,分别W长度为r的滑动窗口循环处理 Mo化US功能码的两个序列,分别将Mo化US功能码的两个序列转换为若干个长度为r的短序 列,去除其中重复的短序列,获得短序列集合并按照每一个短序列出现的顺序进行排列构 造成OCSVM正常通信特征向量和OCSVM异常通信特征向量;
[0014] 建模;将OCSVM正常通信特征向量和OCSVM异常通信特征向量分别导入到matl油 中,通过matl油调动Iibsvm工具箱分别生成正轮廓OCSVM模型和负轮廓OCSVM模型;
[0015] PSO优化;分别对正轮廓OCSVM模型和负轮廓OCSVM模型进行参数优化;将初始化 的粒子传递给正轮廓OCSVM模型/负轮廓OCSVM模型作为OCSVM固有参数V和高斯径向基 参数g,将正轮廓OCSVM模型/负轮廓OCSVM模型返回的交叉验证意义下的分类准确率作为 PSO优化模型中的适应度值,并据此进行粒子群迭代更新;
[0016] 双轮廓OCSVM异常检测:分别利用最优的OCSVM固有参数V和高斯径向基参数邑, 建立正轮廓OCSVM模型和负轮廓OCSVM模型进行异常检测,并且分别返回交叉验证意义下 的分类正确率;
[0017] 双单类支持向量机协同判别规则;若正轮廓OCSVM模型判定结果为"正常",负轮 廓OCSVM模型判定为"正常",则最终结果为"正常";若正轮廓OCSVM模型判定结果为"异 常",负轮廓OCSVM模型判定结果为"异常",则判定为"异常";对于两个判定结果不一致的 情况,如果需要抑制"误警率",则判定为"正常",如果需要抑制"漏警率",则判定为"异常"。
[0018] 所述流量采集包括W下步骤:
[0019] 通过Wireshark抓包软件抓取网络中的正常的Mo化US TCP通信流量数据包;当系 统受到病毒攻击时,通过Wireshark抓包软件抓取网络中异常的Mo化US TCP通信流量数据 包;分别剔除正常数据包和异常数据包中不包含有Mo化US功能码的数据包,得到Mo化US TCP客户端和Mo化US TCP服务器端的通信流量;剔除Mo化US功能码之外的所有其他信息, 并将Mo化US功能码按照时间先后顺序进行排列。
[0020] 所述数据预处理包括W下步骤:
[0021] 根据需要设定短序列的长度r,W长度为r的滑动窗口循环处理Mo化US功能码,去 除重复的序列,获得短序列集合。
[002引在任意的Mo化US功能码序列中,按照每一个短序列出现的顺序进行排列构造成 OCSVM特征向量;
[002引对OCSVM特征向量进行归一化处理,使其中的各元素属于同一个数量级。
[0024] 所述PSO优化包括W下步骤:
[00巧]设置PSO算法在终止条件始终无法满足情况下的最大迭代次数km。、及粒子速度与 位置的限定范围;
[0026] 随机生成种群并分别根据正轮廓OCSVM模型和负轮廓OCSVM模型对PSO算法进行 参数初始化,其中每个粒子包含两个分量,分别为单类支持向量机固有参数V和高斯核函 数核参数g,并对每一个粒子设置初始化速度和位置向量;
[0027] 将粒子进行OCSVM训练并作为单类支持向量机的固有参数V和高斯核函数参数邑, 并将返回的交叉验证意义下的分类准确率作为粒子适应度值;
[0028] 根据适应度值的情况不断更新个体极值及群体极值;一旦出现了更优的适应度值 则更新相应的个体或者群体适应度值;
[0029] 判断是否满足退出迭代条件:如果超过最大迭代次数或连续N次适应度值的变化 没有超过设定阔值,则退出迭代过程,并且此时的群体极值即为所要求的最优参数,所述N 为设定
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1