3。2 基于Libpcap的数据包捕获 15
3。3 基于Libpcap捕获数据包的处理与解析 17
4 基于PHP和MySQL的IEC60870协议的在线监测系统设计 23
4。1 系统总体设计 23
4。2 系统数据库设计 23
4。3 检测系统服务器端设计 25
结 论 30
致 谢 31
参考文献 33
1 绪论
1。1 研究背景与意义
工业控制系统[1](ICS,Industrial Control System),在很多能为国家起到重要作用的领域都有应用,比如说电力系统,水利系统,新能源等等,和国家安全息息相关。工控系统因为通信协议的专一性和系统的相对封锁性[2]使得攻击者难以侵入。21世纪更多的信息技术被应用在了工业控制系统,就因为信息和工控的相辅相成,不断融合,产生的问题也愈发的严重,比如工控系统要和外部进行数据交换,这就导致更多的安全问题将会产生。论文网
最近几年工控的安全问题新闻不绝于耳,如2010年的“震网”病毒[3,4]事件,这个病毒首次发现针对工业控制系统的蠕虫病毒,通过西门子公司控制系统存在的漏洞感染数据采集与监控系统(SCADA),向可编程的逻辑控制器(PLC)写入相应代码并将代码的录入隐藏。通过使离心机骤停的方式来破坏离心机,同时获取涡轮机的控制权限,改变控制参数,最后破坏涡轮机。它是目前知晓的第一个包含PLC rootkit的计算机蠕虫病毒,也是目前首个以关键工业基础设施为对象的蠕虫。病毒成功侵入并损坏了伊朗布什尔核电站的核设施;发生在2011年的Duqu病毒[5],这种病毒是Stuxnet病毒的一种变种,大量重用了Stuxnet的代码,利用微软的零日漏洞MS11-087并伪装C-Media公司的数字签名逃避安全工具检测,在入侵工控系统后便窃取与攻击目标相关的各种情报,并将收集到的信息通过加密处理成图片的形式返回给攻击者。此病毒的攻击目标主要为中东及欧洲国家的一些能源行业;发生在2012年的Flame病毒[6],它是一种综合渗透扩散、预留后门、信息窃取等功能的间谍软件,它可以创建屏幕快照截取屏幕信息,通过声音采集设备,窃取语音信息,获取键盘记录、网络数据等,通过SSH和HTTPS建立安全连接,采用五种加密算法对窃取的数据进行加密,采用三种压缩技术对窃取的数据进行压缩,以躲过病毒检测软件。最终病毒在中东国家的爆发导致伊朗及其他中东国家的机密信息遭到泄露。以及去年年底,乌克兰的电力系统多次无法运行,致使出现大片的停电现象。当安全行业的专家对事故缘由进行调查时,他们察觉原因是因为黑客网络攻击。罪魁祸首是一个叫Black Enery的恶意软件攻击,黑客运用它入侵了乌克兰的电力控制系统。Black Energy恶意软件攻击对于SCADA(Supervisory Control And Data Acquisition)数据采集与监视控制系统。因为黑客对其进行了更新,其中包括Kill Disk组件的最新变体,它能够抹去硬盘上的相关信息,让黑客能够轻易地控制SCADA系统的运行。
根据美国CVE ICS-CERT[7]以及中国的国家信息安全漏洞分享平台所公布的漏洞信息,总结的漏洞总体变化趋势如图1-1所示。
图 11 公开的工控系统漏洞的年度变化趋势
在2011年以前,公布的工业控制系统相关漏洞数量相当来说比较少,但是在2011年之后显现出大幅度增长趋势,主要缘由是2010年的“震网”蠕虫病毒实例之后,人们对于工业控制系统的安全问题关注度提高以及厂商分析找出历史遗留问题的解决办法所造成的。随着各界对工业控制系统安全的越来越重视,工控系统的漏洞个数还是有一个上升的总体趋势。