一种实时网络风险可视化技术研究及实现

2016-11-21 05:42胡晓勤
信息安全研究 2016年2期
关键词:浏览器可视化动画

王 琳 胡晓勤

(四川大学计算机网络与安全研究所 成都 610065)



一种实时网络风险可视化技术研究及实现

王 琳 胡晓勤

(四川大学计算机网络与安全研究所 成都 610065)

(245105947@qq.com)

现今网络恶意行为呈爆炸性增长,而传统的基于文本及简单图表的网络入侵检测系统在面对海量网络数据时存在认知负担过重以及呈现不及时的问题.基于入侵检测的实时网络风险可视化技术则可以将海量数据以图形图像的方式实时动态直观地表现出来,通过在人和网络威胁流量之间建立实时的图像通信,可以使人能够及时理解并发现当前的网络安全态势,以便于快速管理及控制当前网络安全状况.

风险评估;网络风险可视化;实时可视化;人工免疫算法;网络安全

随着计算机网络规模日益庞大,网络安全事件也层出不穷,为了满足网络安全需求,防火墙、流量监控系统、主机状态监控系统和入侵检测系统等各种网络监控和防御设备经常被用来保护网络安全,在网络运行过程中这些安全产品会产生大量日志,当发生网络安全事件时,在相关日志中会或多或少地留下攻击的痕迹,因此,国内外研究者一直都在不断探索如何通过分析日志,掌握整个网络的负载状况、安全状况以及运行态势[1-5].但这样的管理及分析技术都不能在网络安全事件发生时动态地呈现当前网络风险状况,并存在事后分析工作困难等特点.

本文设计了一种新型的网络威胁实时可视化系统,通过风险评估对当前网络威胁进行实时发现,再通过浏览器动画实时渲染技术将网络风险进行实时呈现,极大地方便了管理员对当前网络状况进行理解和管理.

1 基础技术

1.1 基于人工免疫的风险评估方法

人工免疫的原理形成主要源自于生物体自然免疫.对于计算机科学来说,人们发现生物体的自然免疫系统有很多地方值得很好的借鉴,通过不断的研究发现,形成了计算机科学的一个十分重要的分支:计算机免疫系统(computer immune system, CIS)[6-9].而把人工免疫理论运用于入侵检测系统中,建立数学模型,从而对网络和主机进行实时、定量的风险评估,不仅使获得的风险评估值具有很好的理论基础,并且也具有很好的实用价值,能够很好反映网络当前的风险状况.

在入侵防御系统中的检测规则可看作自然免疫系统中的抗体,而入侵的攻击包则可表示成抗原,可以据此建立数学模型计算风险值[10-14].当攻击包到来时入侵防御系统进行特征匹配,模拟抗体匹配到抗原,从而增加抗体浓度,当抗原大量入侵时,作为抗体的浓度就会不断增加,而当正常的网络数据包到来时,相应地衰减抗体浓度值,即表示攻击强度越大则相应的该攻击的抗体浓度值也越大,从而反映网络的风险状况.

1.2 WebSocket

本系统利用WebSocket API[16],浏览器和服务器只需要做一个握手的动作,浏览器和服务器之间就形成一条快速通道,可以将当前网络状况实时地传送到浏览器端进行实时渲染,实现网络风险状况实时展现.

1.3 Canvas

在浏览器中实现动画有多种方式,现今比较流行的2种方式是使用Flash技术和Canvas[16-17]技术.Canvas算是一个新生儿,Flash已经发展得相当成熟,可以利用GPU加速实现动画高效运行.然而Flash当今唯一的缺憾就是不能兼容手机端,并且浏览器要播放Flash动画必须依靠插件.新标准的Canvas不存在这样的问题,Canvas由浏览器直接提供支持,兼容PC端与手机端,各大浏览器厂商都在积极支持,并且当前已支持动画后台挂起,以支持运行在前台的动画高效运行.考虑到Canvas强大的生命力和潜力,本系统采用新标准中的Canvas对网络攻击流量动画、网络与主机心跳动画进行实时表现,使用户更好地理解攻击的来源与去向以及网络和主机的风险值.

2 实时网络风险可视化

2.1 可视化模型

系统主要包含风险评估、Web服务器以及风险展示3个部分.

风险评估模块主要负责数据包的捕获、分析以及风险值计算[10-15],日志记录模块包含在风险引擎中,主要负责风险值计算后的日志记录.服务器主要负责应答浏览器请求.风险展示模块主要负责动画的展示及与用户的交互.

系统架构设计如图1所示.

图1 风险可视化系统结构

2.2 风险评估

风险评估模块根据基于免疫理论的风险评估模型把每个攻击类别模拟成记忆细胞,然后获取入侵防御系统对数据包的检测结果来相应地增加或衰减记忆细胞的抗体浓度值.然后获取所有浓度值进行实时风险值计算,完成后如果有Socket连接, 就将数据写入Socket,然后再将数据交由日志记录模块进行日志记录,以备后期数据查询使用.

2.3 Web助理

当用户打开浏览器进入系统时,浏览器先将基本页面请求下来进行渲染,接着,浏览器发起一个带有WebSocket连接请求的HTTP请求,服务器处理请求时发现这是一个升级的WebSocket请求,于是将请求交由Web助理,Web助理发送验证信息后与浏览器握手成功,建立WebSocket数据快速通道.

Web助理是一个一直存在于系统中的守护进程,作为浏览器与风险评估引擎的数据中介,在系统启动时就会主动与风险评估引擎建立Socket连接,当风险评估引擎产生数据后就向Socket中写入数据,当Web助理接收到数据后,如果有WebSocket连接,进行IP地址物理位置查询,然后就分别向每个连接中写入数据;如果没有连接就什么也不做,Web助理并不会将数据进行保存.

2.4 风险可视化

传统入侵检测系统利用文本和简单图表对日志进行信息展示[1-5],这样的文本信息在传达攻击事件时会给出攻击源IP地址、攻击目标IP地址以及事件发生的其他一些文本描述信息.这种简单的表达方式缺陷是管理员不能宏观地判断攻击从哪里来到哪儿去、攻击强度如何以及攻击的危害程度如何等信息,这给管理员的分析工作造成相当大的压力.本系统采用动画技术来描述攻击事件,攻击类型、攻击强度以及对攻击目标的危害程度经过人工免疫的风险评估已得出一个综合值,即攻击事件的风险值[10],风险值范围0~1.攻击强度越大对目标危害程度越大,风险值越大.

动画为在地图上从源IP到目标IP行走的光束,并且颜色各异.当有数据从WebSocket流入浏览器,浏览器根据获取到的风险值对数据进行整理,接着计算相应的动画并在浏览器中渲染[16-18].攻击事件的源IP和目标IP映射为在地图上的起始位置,将事件的强度映射为攻击的行走速度,将事件的危害程度映射为不同颜色的动画.

2.4.1 动画起始位置计算

本系统根据事件的源IP地址和目标IP地址在数据库中找出其攻击源以及攻击目标的物理位置(经纬度),再根据其经纬度算出动画在屏幕上的起始位置(相对于屏幕左上角的像素值)即得到动画在地图上的起始位置.

在计算起始位置时存在一些已知的参数,分别为屏幕的像素宽度w和屏幕的高度h,屏幕左上角对应的经纬度(x1,y1)和屏幕右下角对应经纬度(x2,y2),以及攻击目标的经纬度(x3,y3)和攻击源的经纬度(x4,y4).

本系统只展示攻击目标在屏幕内的动画,所以计算攻击事件动画的起始点存在2种情况:1)攻击源在屏幕内的情况;2)攻击源在屏幕外的情况.

当攻击目标和攻击源都在屏幕内,即x1≤x3≤x2,y1≤y3≤y2,x1≤x4≤x2,y1≤y4≤y2,则计算坐标(x3,y3), (x4,y4)到屏幕左上角的像素(w3,h3), (w4,h4)公式为

(1)

(2)

其中,x′分别可为x3,x4,y′分别可为y3,y4,带入即可得(w3,h3),(w4,h4).

当攻击源不在屏幕范围内时,则动画的展示效果为从屏幕外经屏幕边缘到达屏幕内的攻击目标,但我们并不能展现屏幕外的内容,因此动画的起点为攻击流经过屏幕边缘时跟屏幕边缘的交点(w5,h5),则我们计算出交点的经纬度(x5,y5)便可根据式(1)(2)得到(w5,h5),如图2所示,我们的目标是求图中的红色交点.

我国气电装机以5大发电集团为主,其气电发电量占全国的50%,其中华电集团、华能集团气电装机规模较大,2017年分别达到1432万千瓦和1042万千瓦。中国海油依托上游天然气产业的优势,开发建设了较多气电项目,装机总量达到846万千瓦。另外,京能、深能源、浙能和粤电等地方发电企业的气电装机总量也分别达到478、318、236和234万千瓦。国电、神华合并后,气电装机总量达到199万千瓦(见图3)。

图2 攻击源在屏幕外的动画起点计算

首先根据(x3,y3), (x4,y4)可得直线公式:

(3)

当x4=x3时,直线为x=x3.

(4)

图3 攻击流量速度与风险值关系曲线

2.4.2 动画速度计算

攻击事件的攻击强度越强动画行走速度越快,本系统设计的攻击动画的速度与风险值的关系如图3所示,其中速度单位ps表示每秒移动的像素点数.

2.4.3 攻击流颜色计算

本系统中的风险值颜色表示如图7所示,风险值由低到高颜色由绿色渐变到红色.颜色值采用RGB表示法计算[19-20],其计算函数如图4至图6所示:

图4 颜色中的R值与风险值关系曲线

图5 颜色中的G值与风险值的关系曲线

图6 颜色中的B值与风险值的关系曲线

图7 风险值色谱

2.4.4 主机及网络心跳

随着攻击的进行,主机及网络的抗体浓度值也随之变化,风险值不停地变化,为了表征这种网络风险的变化,本系统为主机及网络节点设计了心跳动画,心跳动画为每隔固定的时间,节点闪烁一次.当主机处于低风险或者安全状态时,其心跳节奏缓慢,颜色为表征安全的绿色,亮度较低;当主机处于高风险时其心跳节奏加快,颜色变成鲜红,亮度增高.

图8 风险展示模块实现效果图

心跳动画的颜色选择如图8所示,心跳动画的节奏如表1所示,最慢5 s跳动一次,最快1 s跳动2次.

表1 心跳动画的节奏

3 实 现

本系统由于涉及新标准的WebSocket,其对实验环境有一定要求.我们选择的实验测试环境为Apache2.4服务器以及谷歌Chrome浏览器.

本系统的风险展示模块实现效果如图8所示.

本系统的攻击事件动画是重点,除了该工作内容,系统还包含其他的统计信息,如最新攻击源排名、最新受攻击目标、最新攻击类别排名、最近安全事件.

用户一进入系统,最新攻击源排名、最新受攻击目标、最新攻击类别排名面板的信息就开始进行次数累加统计,并且最新安全事件以事件滚动的方式进行信息呈现.当有新的攻击事件发生时,最近安全事件面板向上翻滚出一条记录,同时最新攻击源排名、最新受攻击目标、最新攻击类别排名面板面板上的次数各增加一次.由于本系统是实时更新这些信息,所以当网络攻击事件强度加强时,次数的增加就会加快,信息滚动加快,当攻击事件强度减弱时次数累积就会变慢,信息滚动也变慢,这样可以让用户感知到网络流量的变化节奏.同时,事件的呈现会根据事件的风险值采用不同的颜色进行渲染,风险值高的事件呈现为鲜红,低风险的事件呈现为浅绿,颜色值的选取参照图4至图7.

4 总 结

本系统把基于人工免疫的风险评估模型引入到入侵检测系统中加以实现,它根据入侵检测系统的实时检测结果,实时地对网络和网络中各主机面临的风险情况进行定量评估,利用最新的WebSocket技术对评估及控制结果进行实时传送,并利用动画技术对网络威胁状况进行实时渲染,方便管理员对当前网络状况进行人工评估,相比传统的入侵检测系统,具有呈现及时、用户感知强等特点.

[1]Koike H, Ohno K, Koizumi K. Visualizing Cyber Attacks using IP Matrix[C]Visualization for Computer Security. Los Alamitos, CA: IEEE Computer Society, 2005: 91-98

[2]Haslum K, Abraham A, Knapskog S. Fuzzy online risk assessment for distributed intrusion prediction and prevention systems[C]Proc of Computer Modeling and Simulation. Piscataway, NJ: IEEE, 2008: 216-223

[3]韩丹, 王劲松, 宋密. 基于Snort的多视图网络流量可视化系统[J]. 天津理工大学学报, 2014, 31(2): 42-45

[4]张生, 施荣华, 赵颖. 基于多元异构网络安全数据可视化融合分析方法[J]. 计算机应用, 2015, 35(5): 1379-1384

[5]赵颖, 樊晓平, 周芳芳, 等. 多源网络安全数据时序可视分析方法研究[J]. 小型微型计算机系统, 2014, 35(4): 906-910

[6]de Castro L N, Timmis J I. Artificial immune systems as a novel soft computing paradigm[J]. Soft Computing, 2003, 7(8): 526-544

[7]Spears W M, De Jong K A. An overview of evolutionary computation[C]Proc of the European Conf on Machine Learning. Berlin: Springer, 1993: 442-459

[8]de Castro L N, Timmis J I. Artificial Immune Systems: A New Computational Intelligence Approach[M]. Berlin: Springer, 2002

[9]李涛. 网络安全概论[M]. 北京: 电子工业出版社, 2004

[10]李涛. 基于免疫的网络安全风险检测[J]. 中国科学E辑: 信息科学, 2005, 35(8): 798-816

[11]王电钢. 基于免疫的网络安全态势评估技术及趋势分析研究[D]. 成都: 四川大学, 2009

[12]彭凌西, 谢冬青, 付颖芳, 等. 基于危险理论的自动入侵响应系统模型[J]. 通信学报, 2012, 33(1): 136-144

[13]何慧, 张宏莉, 王星, 等. 网络安全事件危害度的量化评估[J]. 哈尔滨工业大学学报, 2012, 44(5): 66-70

[14]艾磊. 一种实时动态的风险评估与控制系统的设计与实现[D]. 成都: 四川大学,2014

[15]Snort manual[EBOL]. [2015-12-21]. http:manual.snort.org

[16]Peter Lubbers. Frank Salim, Brian Albers. HTML5高级程序设计[M]. 北京: 人民邮电出版社, 2011

[17]Geary D. HTML5 Canvas核心技术: 图形、动画与游戏开发[M]. 北京: 机械机械工业出版社, 2013

[18]Zakas N C. JavaScript高级程序设计[M]. 李松峰, 曹力译. 3版. 北京: 人民邮电出版社, 2012

[19]关文涛. 选择的艺术: Photoshop CS图像处理深度剖析[M]. 北京: 人民邮电出版社, 2005

[20]关文涛. 选择的艺术: Photoshop图层通道深席剖[M]. 2版. 北京: 人民邮电出版社, 2013

王 琳

硕士研究生,主要研究方向为信息安全.

245105947@qq.com

胡晓勤

博士,硕士研究生导师,主要研究方向为容灾抗毁.

517236336@qq.com

The Research and Implementation of a Real-Time Network Risk Visualization Technology

Wang Lin and Hu Xiaoqin

(InstituteofComputerNetworks&InformationSecurity,SichuanUniversity,Chengdu610065)

Today, the network malicious behavior goes into the explosive growth. And the traditional text based or simple chart based network intrusion detection systems are hard to use in the face of massive network data. Intrusion-detection-based real-time network risk visualization technology can transfer massive data to graphics and images dynamically in time. Then, we can build real-time imaged communication between human and cyber threat flow. So that we can quickly understand and figure out the current cyber security trend. That can be a good convenience for people to manage and control current cyber security.

risk evaluation; cyber risk visualization; real-time visualization; artificial immune algorithm; cyber security

2015-12-24

国家自然科学基金项目(61173159,61572334)

TP393.08

猜你喜欢
浏览器可视化动画
Clifford hits the big screen
基于CiteSpace的足三里穴研究可视化分析
思维可视化
做个动画给你看
动画发展史
基于CGAL和OpenGL的海底地形三维可视化
我的动画梦
“融评”:党媒评论的可视化创新
微软发布新Edge浏览器预览版下载换装Chrome内核
反浏览器指纹追踪