专用网络服务器的预警及报警系统的设计与实现_第1页
免费预览已结束,剩余36页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊┊共37页第37页引言 计算机网络技术的发展使得信息的传递和处理突破了时间和地域的限制,互连网的爆炸性发展更进一步为人类的信息交互、科学、技术、文化、教育、生产的发展提供了极大的便利,信息网络全球化的发展已经成为不可抗拒的历史潮流。 随着Internet和Intranet技术在各行各业的广泛应用,网络服务作为一种全新的服务方式在各个行业和部门受到青睐和重视,不管是提供对内的网络服务还是对外的网络服务,网络服务作为全新的服务模式带给我们巨大的实惠和便利。然而,与网络服务相关的安全事件逐年上升,人们在得益于网络服务所带来的巨大机遇和便利的同时,也不得不面对信息安全问题的严峻考验,作为提供网络服务的专用网络服务器的安全问题已经成为严重影响网络发展、特别是商业应用的主要问题,并直接威胁着国家安全和社会的稳定。 针对专用网络服务器的安全问题我们提出了专用网络服务器的预警及报警系统,通过短信技术应用于入侵检测系统的行为响应单元的入侵检测系统,为在遭受网络入侵和攻击的专用网络服务器提供快速和及时的预警与报警,使安全管理员能够在入侵攻击尚未造成更大的危害之前得到警报并做出反应,阻止攻击者颠覆被入侵系统的企图,将系统损失降低到最小。

1概要介绍1.1背景计算机网络技术的发展使得信息的传递和处理突破了时间和地域的限制,互连网的爆炸性发展更进一步为人类的信息交互、科学、技术、文化、教育、生产的发展提供了极大的便利,信息网络全球化的发展已经成为不可抗拒的历史潮流。然而,就在计算机网络给人们的生活,工作带来巨大便利的同时,其所带来的安全问题同样突出。由于系统的复杂性,协议设计的缺陷、终端分布的不均匀性、网络的开放性、迷漫性和互连互通性等特征,致使网络容易遭到黑客、恶意软件的攻击,国家、企业和个人的信息系统受到了极大的安全威胁。随着信息技术、计算机技术的飞速发展与广泛应用,人类已经进入了一个空前繁荣的信息化时代。大范围内的网络服务应用已经广泛深入到国防、电信、银行、金融、政府、交通、电子商务、能源以及大众商业等各个领域。作为提供对内或对外服务的网络服务器,在为各行各业提供着大量的网络服务,他囊括了社会的各个方面:航空航天、军品科研、导航系统、电信业务、客户服务、电子商务、电子政务、Web服务、FTP服务、Mail服务、内部OA服务等等。不管是在关系着国家安全和社会稳定的国防、核工业、航空航天系统,政府、交通、通信、能源行业,还是涉及商业和民用的大众商业,网络服务作为一种突破时间和地域限制的服务,广泛和深入地应用在社会的方方面面,电子时代带给我们巨大的实惠和便利。但是,与此同时,与服务安全相关事件逐年上升,人们在得益于信息革命所带来的巨大机遇和便利的同时,也不得不面对信息安全问题的严峻考验,安全问题已经成为严重影响网络发展、特别是商业应用的主要问题,并直接威胁着国家安全和社会的稳定。服务器的安全引起社会各个阶层和行业的强烈关注和重视,针对服务器的安全实施了一系列的安全解决方案。服务器的安全问题有操作系统安全,还包括硬件安全、应用安全和数据安全等。作为存储数据、处理需求的核心,服务器安全涉及太多环节。下面是来自美国CSI/FBI在2003年和2004年所作的一个关于计算机犯罪和安全的调查。数据分别来自美国251个和269个计算机安全从业人员的反馈。这些人员分布在美国公司、政府机构、金融机构、医药机构以及大学。图1-1和图1-2说明了由这些反馈者估计的损失。

图1-1CSI/FBI2003ComputerCrimeandSecuritySurvey图1-22004CSI/FBIComputerCrimeandSecuritySurvey从上面的图表显示,由于安全问题导致系统拒绝服务的损失遥遥领先。我们可以想象由于服务器的拒绝服务,带给国家、企业和个人多大的损失。网络服务器常遭受的网络安全问题包括恶意的攻击行为和恶意的入侵行为。攻击行为,如拒绝服务攻击,网络病毒等等,这些行为旨在消耗服务器资源,影响服务器的正常运作,甚至服务器所在网络的瘫痪;入侵行为,这种行为更是会导致服务器敏感信息泄露,入侵者更是可以为所欲为,肆意破坏服务器。如何保证专用网络服务器的安全问题,现在已经有很多技术应用在网络服务器的安全领域,防火墙、认证技术、漏洞检测评估、灾难恢复、反病毒软件、VPN、安全路由、安全操作系统、安全Web、加密等,这一系列技术和产品,为保护信息安全,做出了很大的贡献。但尽管如此,信息安全问题仍是一年比一年严重。对于分布性越来越高的网络应用,攻击是越来越无法避免的,并且会随着防护技术的不断改进,攻击也愈加尖锐。另一方面,从技术实现来说,世界上还没有一个系统能够强悍到可以保证没有漏洞可以被用于攻击的地步。 入侵检测是最近十余年发展起来的一种动态的监控、预防或抵御系统入侵行为的安全机制。主要通过监控网络、系统的状态、行为以及系统的使用情况,来检测系统用户的越权使用以及系统外部的入侵者利用系统的安全缺陷对系统进行入侵的企图。和传统的预防性安全机制相比,入侵检测是一种事后处理方案,具有智能监控、实时探测、动态响应、易于配置等特点。入侵检测技术的引入,使得网络、系统的安全性得到进一步的提高。入侵检测系统是对传统计算机安全技术的一种补充,它的开发应用增大了网络与系统安全的保护的纵深发展,成为目前动态安全工具的主要研究和开发的方向。通过将入侵检测技术应用于专用网络服务器的安全领域,将带给网络服务器新的活力。 对于入侵响应系统来说,响应的及时性尤为重要。Cohen通过模拟的方法研究了响应的时间与攻击者成功概率之间的关系。他的研究结果显示:如果熟练的攻击者被发现后仍留给他们10小时的时间,他们将有80%成功的机会;如果留给他们20小时的时间,则成功的机会达到90%;如果留给他们30小时的时间,则攻击者几乎很少失败。 因此,在发现入侵行为时,我们要做到及时响应才能最大限度降低损失。在检测到入侵行为发生时,第一时间通知网络安全管理员,然后由管理员做出及时响应。要完成及时通知安全管理员并允许管理员立即采取及时响应这一过程,可以采用很多方式,本文认为利用短信技术实现快速报警无疑是一个非常理想的方式。随着移动通信网络的不断普及,短信技术作为一种方便实用的移动通信方式,已经广泛应用到各种领域之中,如:证券服务、银行服务、公共信息、移动商务、客户服务等。与Internet的服务相比,短信服务更加灵活方便、安全可靠。短信技术与入侵响应技术相结合,将很好的解决入侵检测系统响应的及时性问题,使安全管理员能够在入侵攻击尚未造成更大的危害之前得到警报并做出反应,阻止攻击者颠覆被入侵系统的企图。

1.2入侵检测技术(1)入侵检测系统的概念 “入侵”主要指对系统资源的非授权使用,它可以造成系统数据的丢失和破坏,甚至会造成系统拒绝对合法用户服务的后果。“入侵检测”的目标就是通过检查操作系统的审计数据或网络数据包信息来检测系统中违背安全策略或危及系统安全的行为或活动,从而保护信息系统的资源不受拒绝服务攻击、防止系统数据的泄漏、篡改和破坏。入侵检测的研究,涉及到计算机、网络以及安全等多个领域的知识。目前,最基本的入侵检测方法是基于已知入侵行为模式、基于通信业务分析以及基于系统状态(或行为)统计异常性的检测。 入侵检测是最近十余年发展起来的一种动态的监控、预防或抵御系统入侵行为的安全机制。主要通过监控网络、系统的状态、行为以及系统的使用情况,来检测系统用户的越权使用以及系统外部的入侵者利用系统的安全缺陷对系统进行入侵的企图。和传统的预防性安全机制相比,入侵检测是一种事后处理方案,具有智能监控、实时探测、动态响应、易于配置等特点。入侵检测技术的引入,使得网络、系统的安全性得到进一步的提高。入侵检测系统是对传统计算机安全技术的一种补充,它的开发应用增大了网络与系统安全的保护的纵深发展,成为目前动态安全工具的主要研究和开发的方向。 入侵检测是检测计算机网络和系统以发现违反安全策略事件的过程。DARPA(美国国防部高级计划局)提出了CIDF(公共入侵检测框架)。 CIDF根据IDS系统的通用需求以及现有的IDS系统的结构,阐述了一个入侵检测系统的通用模型,如(图1-3),将入侵检测系统分为四个基本组件:事件产生器、事件分析器、事件数据库、行为响应单元(简称响应单元)。CIDF将需要分析的数据统称为事件,它可以是网络中的数据包,也可以是从系统日志等其他途径得到的信息。行为响应单元行为响应单元事件分析器事件数据库事件产生器来源于网络上的数据包图1-3通用入侵检测系统框架①事件产生器入侵检测的第一步就是信息收集,收集的主要内容包括整个计算机网络中系统、网络、数据及用户活动的状态和行为,这是由事件产生器来完成的。入侵检测在很大程度上依赖于信息收集的可靠性、正确性和完备性。因此,要确保采集、报告这些信息的软件工具的可靠性,即这些软件本身应具有相当强的坚固性,能够防止因被篡改而收集到错误的信息。否则,黑客对系统的修改可能使系统功能失常但看起来却跟正常的系统一样,也就丧失了入侵检测的作用。②事件分析器事件分析器是入侵检测系统的核心,它的效率高低直接决定了整个入侵检测系统的性能。事件分析器可以是一个轮廓描述工具,统计性地检查现在的事件是否可能与以前某个事件来自同一个时间序列;也可以是一个特征检测工具,用于在一个事件序列中检查是否有已知的误用攻击特征;此外,分析引擎还可以是一个相关器,观察事件之间的关系,将有联系的事件放到一起,以利于以后的进一步分析。③事件数据库事件数据库是存放各种中间和最终数据的地方的统称,它可以是复杂的数据库,也可以是最简单的文本文件。考虑到数据的庞大性和复杂性,一般都采用成熟的数据库产品来支持。事件数据库的作用是充分发挥数据库的长处,方便其它系统模块对数据的添加、删除、访问、排序和分类等操作。④行为响应单元(响应单元)事件分析器对事件进行分析发现入侵迹象后,入侵检测系统的下一步工作就是响应。行为响应可以多样,如根据攻击类型自动终止攻击;终止可疑用户的连接甚至所有用户的连接;如果非法用户已经获得账号,则将其禁止;重新配置防火墙更改其过滤规则,以防止此类攻击的重现;向管理控制台发出警告指出事件的发生;将事件的原始数据和分析结果记录到日志文件中,并产生相应的报告,包括时间、源地址、目的地址和类型描述等重要信息;必要的时候根据需要实时跟踪事件的进行;向安全管理人员发出提示性的警报;可以执行一个用户自定义程序或者脚本等多种方式。(2)入侵检测系统的分类①基于主机的入侵检测系统(Host-BasedIDS)基于主机的入侵检测系统主要用于保护运行关键应用的服务器。它通过监视与分析主机的审计记录和日志文件来检测入侵。日志文件可以根据系统管理员的设置,记录用户何时注册、在何处注册、要做什么以及系统调用、程序运行结果等与安全性有关的操作信息。其中的审计数据包括可查事件和可查信息。可查事件是指从安全角度应该注意的用户行为。例如认证和授权机制的使用、对象的增加删除、打印输出等。可查信息是与特定的可查事件相关的实际数据,包括事件发生时间、产生事件的主体的唯一标识、事件的类型、事件成功与否等。通过从日志中查询这些信息可以得到发生在系统上的不寻常和不期望活动的证据,这些证据可以指出有人正在入侵或已成功入侵了本系统。一旦发现这些文件发生任何变化,IDS将比较新的日志记录与攻击签名以发现它们是否匹配。如果匹配的话,检测系统就向管理员发出入侵报警并且采取相应的行动。通过查看日志文件,能够发现成功的入侵或入侵企图,并很快地启动相应的应急响应程序。②基于网络的入侵检测系统(Network-BasedIDS)基于网络的入侵检测系统主要用于实时监控网络关键路径的信息,通过将适配器配置为混杂模式,侦听网络上的所有分组来采集数据,使用原始的网络分组数据包作为进行攻击分析的数据源,根据网络流量、协议分析、简单网络管理协议信息等数据检测入侵行为。通常将基于网络的入侵检测系统放置在防火墙或者网关后,旁路,并捕获所有内传和外传的数据包,如(图1-4)所示,并以此作为数据源来分析可能的入侵行为,一旦检测到攻击,响应模块通过通知、报警以及中断连接等方式来对攻击做出反应。防火墙防火墙Internet 图1-4基于网络的入侵检测系统一般来说,基于网络的入侵检测系统一般处于网络边缘的关键节点处,负责拦截在内部网络和外部网络之间流通的数据包,使用的主机是为其专门配置的;而基于主机的入侵检测系统则只对系统所在的主机负责,而且其主机并非专门为其配置的。上述两种入侵检测系统各有自己的优缺点。基于网络的入侵检测系统的主要优点有:可移植性强,不依赖主机的操作系统作为检测资源;实时检测和应答,一旦发生恶意访问或攻击,基于网络的IDS检测可以随时发现它们,因此能够更快地做出反应,监视粒度更细致;攻击者转移证据很困难;能够检测未成功的攻击企图;成本低等。但是,与基于主机的入侵检测系统相比,它只能监视经过本网段的活动,精确度不高;在高层信息的获取上更为困难;在实现技术上更为复杂等。(3)根据事件分析的方式分类 根据入侵检测系统对事件分析的不同方式可将入侵检测系统分为异常入侵检测、误用入侵检测和完整性分析三类。①异常入侵检测系统(AnomalyIDS)异常入侵检测系统也称为基于统计行为的入侵检测(Behavior-BasedIDS)。这种方法首先给系统对象(如用户、文件、目录和设备等)创建一个统计描述,统计正常使用时的一些测量属性(如访问次数、操作失败次数和延时等)。测量属性的平均值将被用来与网络、系统的行为进行比较,任何观察值在正常值范围之外时,就认为有入侵发生。例如,统计分析可能标识一个不正常行为,因为它发现一个在晚八点至早六点不应登录的账户却在凌晨两点试图登录。异常检测的实现方法目前主要有统计学方法、预言模式的生成、神经网络、序列匹配与学习等。②误用入侵检测系统(MisuseIDS)误用入侵检测系统又称为基于规则/知识的入侵检测系统(Knowledge-BasedIDS),就是将收集到的信息与已知的网络入侵和系统误用模式数据库进行比较,从而发现违背安全策略的行为。该过程可以很简单(如通过字符串匹配以寻找一个简单的条目或指令),也可以很复杂(如利用正规的数学表达式来表示安全状态的变化)。通过分析入侵过程的特征、条件、排列以及事件间关系,具体描述入侵行为的迹象,不仅对分析已经发生的入侵行为有帮助,而且对即将发生的入侵也有警戒作用。误用的入侵检测系统的实现方法主要有专家系统、键击监控、基于模式、状态转换分析、模式匹配等。③完整性分析(IntegralityAnalyzing)入侵检测系统此类系统主要关注某个文件或对象是否被更改,包括文件和目录的内容及属性。这样分析方法在发现被更改的、被特洛伊化的应用程序方面特别有效。完整性分析利用强有力的加密机制,称为消息摘要函数(例如MD5),能识别哪怕是微小的变化。异常分析方式可以检测到未知的和更为复杂的入侵,缺点是漏报、误报率高,一般具有自适应功能,入侵者可以逐渐改变自己的行为模式来逃避检测,不适应用户正常行为的突然改变,而且在实际系统中,统计算法的计算量庞大,效率很低,统计点的选取和参考库的建立也比较困难。与之相对应,误用分析的准确率和效率都非常高,只需收集相关的数据集合,显著减少系统负担,且技术已相当成熟;但它只能检测模式库中已有的类型的攻击,不能检测到从未出现过的攻击手段,随着新攻击类型的出现,模式库需要不断更新,而在其攻击模式添加到模式库以前,新类型的攻击就可能会对系统造成很大的危害。而完整性分析的优点是不管前两种方法能否发现入侵,只要是成功的攻击导致了文件或其他对象的任何改变,它都能够发现;缺点是一般以批处理方式实现,不用于实时响应。尽管如此,完整性检测方法还应该是网络安全产品的必要手段之一。所以,入侵检测系统只有同时使用这三种入侵检测技术,才能避免各自的不足。而且,这三种方法通常与人工智能相结合,以使入侵检测系统具有自学习能力。其中前两种方法用于实时的入侵检测,第三种则用于事后分析。优秀的IDS应该以模式发现技术为主,并结合异常发现技术,同时也加入完整性分析技术进行补充共同来完成对入侵事件的分析。(4)入侵检测系统的行为响应入侵检测系统再检测出入侵事件之后要对其进行入侵响应,入侵检测系统中完成响应行为逻辑部件就是行为响应单元,其响应过程经过不断研究改进,可以定义为:防护、初步响应、抑制、根除、恢复、跟踪六个阶段。①防护即防御。依据信息系统安全模型,从防护、检测、响应到再防护,这个模型已经不是一个平面的圆环,而应该是一个螺旋上升的状态;防护可以是事前的预防措施,同时也可以是事后的响应措施,即针对所发生的安全事件的进一步的防护。再防护可以看作是一种响应。安全没有绝对,即使事前安全防护工作做得再好,也可能被入侵。防护工作也不可能一步到位,安全防护是一个不断完善的过程。一旦系统遭受入侵,那么说明系统必然有其广义上的脆弱性存在,这时响应工作就要求迅速填补漏洞,这样的工作可以看作是响应,同时也是再防护。再防护的工作。②初步响应包括发现入侵行为之后的一些初步地响应动作,如激活更详细的日志审计,激活更详细的入侵检测,以及估计事件范围、危害程度、潜在的危害度,收集事件相关信息,并在此基础上产生事件报告。安全事件一旦发生之后要考虑应该采取的行动,最好能够在事前对可能发生的事件有所预案,尽最大可能将突发安全事件的处理从一种非程序化的决策过程转变到一种程序化的决策过程中来。③抑制抑制的目的是限制攻击的范围,同时也就限制了潜在的损失与破坏。抑制不是应急响应的根本解决之道,根本的问题在于根除与恢复。但是抑制措施不可轻视,因为太多的安全事件可能迅速失控。近年来的许多蠕虫事件显示事件从个别点迅速扩散到整个网络所需的时间越来越短。这就说明在事件发生之初,及时采取抑制措施,尽最大可能将事件限制在一个较小的网络范围内的重要性。④根除在事件被有效的抑制以后,就应该找出事件的根源并彻底根除。一旦有安全事件发生,就说明系统有脆弱性存在,而根除的目的就在于找到导致事件发生的脆弱性所在,并且弥补这个缺陷,从而在更高一层上加强系统防护。根除的难点不在于如何弥补,而在于如何迅速找到导致事件的脆弱性所在。因为有时候事件发生了,但是很难马上确定到底是哪里出了问题,使得入侵者能够进入系统。如果导致事件的脆弱性确定了,那相应的补救措施就很明确了。⑤恢复恢复的目的是把所有被攻击的系统和网络设备彻底的还原到他们正常的任务状态。如何恢复,需要根据系统受影响的程度或者系统被攻击后导致的结果来决定。安全事件可能使得系统的安全性(包括保密性,完整性,可用性等)受到破坏,那恢复就是要重新保证系统的可用性、完整性、保密性等。在恢复阶段,我们需要去掉用作短期抑制措施的所有中间防御措施。包括为了遏制事件所采取的一些措施,还有响应初期的一些动作,比如激活了更为详细的日志审计等,这时就应该恢复为正常的日志审计量。⑥跟踪跟踪就是在事件发生并应急处理之后,再回过头来对整个事件进行分析总结。通过事后的分析,总结经验教训,从而进一步提高系统防护水平,进一步完善响应预案。事后的总结,有助于以后再次应对突发的安全事件,而且跟踪信息的共享可以为其他响应组织、人员提供帮助。1.3短信技术(1)短信技术概述随着移动通信的迅速普及,移动通信的应用范围也越来越广泛。除了基本的语音服务外,短信技术作为一种方便实用的移动通信方式,也得到了广泛的应用。手机用户使用短信的意识正在逐步形成,基于短信技术的服务越来越多,比如证券服务、银行服务、公共信息、移动商务、客户服务、彩票购买等。短信服务以其特有的优点正在吸引着广大手机用户,这些优点主要体现在以下几个方面:①与基于固定电话的服务相比,短信服务更加灵活方便、安全可靠。基于固定电话的服务限制了用户的地点,缺乏灵活性。此外,现有电话设备的安全问题还没有解决。②短信服务的运营成本比固定电话服务的运营成本低,而且服务效率高。③与基于因特网的服务相比,短信服务更加灵活方便安全可靠。同固定电话服务一样,基于因特网的服务同样因为限制了用户使用服务的地点而缺乏灵活性。此外,当前,因特网上的客户端比服务器更容易受到黑客攻击。由于因特网的开放性,如何鉴别下载的应用程序与控件的安全性,如何防止恶意网站对客户端的攻击,已成为因特网的重要安全问题。现在一些专家正在研制安全计算机,对于手机用户来说,手机就是一种很好的计算机,SIM卡特有的安全机制为用户提供了绝好的安全保护。短信服务的优点正在被手机用户以及服务提供商所认同。随着手机用户使用短信服务意识的不断增强,特别是手机用户量的快速增长,只要服务提供商能够充分重视短信服务的上述优点,提供实用安全的服务,短信必将为广大手机用户的工作生活提供更加安全、方便、快捷的服务。(2)短信技术的发展从短信业务的发展来看,短信信息服务的发展经历了下述两个时期:第一阶段,以SMSC(ShortMessageServiceCenter)短信中心为主要信息提供的时期。在此阶段,短信中心是唯一的信息提供者及数据传输通道,造成信息量少,并且各个短信中心的信息来源不一致。这一阶段是短信服务的独立发展时期。第二阶段,以互联网上的信息作为短信的主要信息来源,由互联网上的服务提供商直接与各SMSC相沟通,建立信息交换的接口。其特点是,由信息极其丰富的SP(ServiceProvider)服务提供商作为信息的提供者,弥补了原来SMSC的不足。这一阶段是短信业务的急剧扩展时期。目前短信业务正处在发展的第二阶段,其主要的业务特征模式就是将互联网上丰富的应用通过手机的短消息方式传递给用户。这一发展模式,将传统的信息提供与信息服务的合二为一彻底分离,体现了一种传统业务与互联网相结合的发展模式,同时也为互联网业务扩展到移动网络提供了基础条件。在短信服务应用系统中,应用服务器往往安置在短信业务的提供者SP一端,用户手机与应用服务器之间需要通过移动电话网络以及因特网才能建立连接。SMG(ShortMessageGateway)短信网关是连接移动电话网络与因特网的桥梁。从(图1-5)可以看出,当手机用户需要与应用服务器通信,进行某种业务时,手机用户通过移动电话网络将业务请求发送到运营商的SMSC(短信中心),SMSC(短信中心)将手机用户的业务请求发送给SMG(短信网关),SMG(短信网关)负责将用户的业务请求通过因特网发送给应用服务器。应用服务器收到手机用户的业务请求后,进行相应的业务处理,形成业务处理结果。业务处理结果首先被应用服务器通过因特网发送给SMG,SMG随后将业务处理结果发送给SMSC,由SMSC将业务处理结果经过移动电话网络发送到用户手机。目前,SP与SMG之间短信网关接入主要有联通的SGIP协议和移动的CMPP协议,SGIP和CMPP都定义了MO(由手机用户提交的短消息)和MT(由手机用户接收的短消息)方法,SP可以发送到短信网关,同时短信也可以从短信网关发送到SP。另外也提供发送状态报告,SP发送时可以指定需要此短信的报告。两个协议中SP与短信网关的连接都是基于请求响应模式,双方互为客户/服务器,客户发出请求,服务器返回对这个请求的响应。SGIP与短信网关有两种连接方式、HTTP连接和TCP连接,HTTP连接就是使用HTTP协议发送短信,TCP连接就是向短信网关发送TCP包,CMPP只有TCP连接但是它定义了长连接和短连接方式,短连接就是一次连接只进行一个请求-响应操作,操作完成后断开连接,下次操作再建立连接。长连接则是一个连接中可以进行多次请求-响应操作。SGIP的TCP连接和CMPP中的长连接使用的是流水线的形式,也就是可以一连发出好多个请求,然后再等待它们所有的响应,如果某个响应超过一定时间没有收到图1-5短信服务应用的体系结构那么由重发机制进行重发。接下来本文以联通的SGIP协议为例进行介绍短信业务的工作原理。1.3本文的内容网络服务器入侵和攻击行为具备一定的复杂性和不确定性,并且各种网络攻击手段层出不穷,更新很快。目前,各种入侵检测系统都无法实现及时准确地检测出所有已知和未知的攻击并且根据网络情况对所有攻击做出最恰当的响应行为。因此,及时报警,可使安全管理员能够在入侵攻击尚未造成更大危害前得到警报并做出反应。就此问题,本文提出了专用网络服务器的预警及报警系统,将短信技术与入侵检测技术相结合,为专用网络服务器提供及时快速的预警和报警,希望此系统切实能提高网络服务器的安全水平。根据需求我们搭建了专用网络服务器的预警及报警系统的运行环境,在网络环境里,我们部署了snort,acid,并在交换机上配置端口镜像,为该系统的运行提供必要的运行环境,其中我们在当前比较流行的Windows和Linux操作系统下实现了snort和acid的部署,使我们的系统可以跨越平台使用和操作。对专用网络服务器的预警及报警系统的设计、分析、和实现,我们始终采用模块化的方法完成,将整个系统的功能分为几个功能相对独立的模块来实现,各模块根据具体的情况,还划分了子模块,通过模块的设计发,尽量减少模块之间的关联程度,减少程序设计的复杂度和减少工程的复杂度。具体见详细设计与实现。在该系统的设计和实现过程中,我的工作包括:环境的搭建,总体实现编程,代价评估模块的实现。

2专用网络服务器的预警及报警系统环境部署专用网络服务器的预警报警系统部署在如下的网络环境中:图2-1专用网络服务器的预警及报警系统专用网络服务器的预警及报警系统通过对snort的入侵检测模式产生的数据进行分析,对匹配专用网络服务器预警报警系统规则的行为通过手机短信方式给网络安全管理员提供及时报警,第一时间通知网络安全管理员,然后由管理员做出及时响应。专用网络服务器的预警及报警系统环境的部署包括snort的部署、ACID的部署和交换机的配置。2.1软件介绍2.1.1Snort简介snort是一个轻量级的入侵检测系统,它具有截取网络数据报文,进行网络数据实时分析、报警,以及日志的能力。snort的报文截取代码是基于libpcap库的,继承了libpcap库的平台兼容性。它能够进行协议分析,内容搜索/匹配,能够用来检测各种攻击和探测,例如:缓冲区溢出、隐秘端口扫描、CGI攻击、SMB探测、OS指纹特征检测等等。snort使用一种灵活的规则语言来描述网络数据报文,因此可以对新的攻击做出快速地反应。snort具有实时报警能力。可以将报警信息写到syslog、指定的文件、UNIX套接字或者使用WinPopup消息。snort具有良好的扩展能力。它支持插件体系,可以通过其定义的接口,很方便地加入新的功能。snort还能够记录网络数据,其日志文件可以是tcpdump格式,也可以是解码的ASCII格式。Snort是一款轻量级的网络入侵检测系统,它是开放源码的软件,snort的开发遵循GPL协议。在保持强大的功能及不断更新的同时,它仍然是免费的,并且公开源代码,你可以在GUN规则下研究修改和传播它,它能够运行在包括Linux/BSD/Unix/Windows等操作系统下,是一款跨平台的自由软件。2.1.2Apache介绍Apache是根据NCSA的服务器发展而来的,NCSA是最早出现的Web服务器程序之一,由伊利诺斯大学Urbana-Champaign分校的美国国家超级计算应用中心开发。在发展初期,Apache主要是一个基于UNIX系统的服务器,它的宗旨就是建成一个基于UNIX系统的、功能更强、效率更高并且速度更快的WWW服务器,这就决定了它是从其他的服务器演变而来的,并且添加了大量补丁来增强它在某一方面的性能,所以它就被命名为“ApathyServer(一个补丁组成的服务器)”。发展到今天,Apache已经被移植到很多平台上了。很多类UNIX操作系统都集成了Apache,无论是免费的Linux、FreeBSD,还是商业的Solaris、AIX,都包含了Apache组件。所不同的是,在商业版本中对相应的系统进行了优化,并加进了一些安全模块。Apache的开发遵循GPL协议,由全球的志愿者一起开发和维护。在保持强大的功能及不断更新的同时,它仍然是免费的,并且公开源代码。Apache还可以跨平台运行,虽然是基于UNIX的一款web服务器,但它目前在windows平台上也依然运行良好。可以支持perl,PHP等脚本语言。2.1.3ACID简介ACID(AnalysisConsoleforIncidentDatabases)是snort使用的标准分析员控制台软件。它由CERTCoordinationCenter开发,是AIRCERT工程的一部分。可以从/kb/acid下载。从ACID-0.9.6b2开始,ACID才实现了数据库的抽象支持。ACID是一个基于PHP的分析引擎,它能够搜索、处理snort产生的数据库。2.2snort的部署snort部署的系统结构:(1)snort将其捕获的数据发送至SQLServer的ARMIRS数据库。(2)apache为系统提供了web服务支持。(3)PHP为系统提供了PHP支持,使apache能够运行PHP程序。(4)acid是基于PHP的入侵检测数据库分析控制台.(5)ADODB是PHP数据库的连接组件。(6)acid通过ADODB从SQLServer的ARMIRS数据库中读取数据,将分析结果显示在网页上,并使用jpgraph组件对其进行图形化分析。2.2.1软件清单首先下载安装程序软件包,除windows2000和SQLServer2000外,在部署snort环境中用到的软件包括以下软件,我们提供软件的版本和下载地址并对软件做相关说明:软件1:acid-0.9.6b23.tar.gz,软件下载地址:/kb/acid,说明:基于PHP的入侵检测数据库分析控制台。软件2:adodb360.zip,软件下在地址:/adodb,说明:ADODB(ActiveDataObjectsDataBase)库forPHP。软件3:apache_2.0.54-win32-x86-no_ssl.msi,下载地址:,软件说明:Windows版本的ApacheWeb服务器。软件4:jpgraph-1.12.2.tar.gz,下载地址:http://www.aditus.nu/jpgraph,软件说明:OO图形库forPHP,请注意下载的版本应该和PHP版本相符。软件5:php-4.3.2-Win32.zip,下载地址:,软件说明:Windows版本的php脚本环境支持。软件6:snort-2_0_0.exe,下载地址:,软件说明:Windows版本的Snort安装包。软件7:WinPcap_3_0.exe,下载地址:http://winpcap.polito.it/,软件说明:网络数据包截取驱动程序。2.2.2软件安装(1)apache_2.0.54的安装①双击apache_2.0.54-win32-x86-no_ssl.msi,在出现的serverInformation页面添入服务器的相关信息,如图2-2示。安装的时候注意,如果你已经安装了IIS并且启动了WebServer,因为IISWebServer默认在TCP80端口监听,所以会和ApacheWebServer冲突,我们可以修改ApacheWebServer为其他端口。在出现的安装类型选择custom,在出现的“customsetup”界面,自定义安装路径为c:\apache。完成安装。②添加apache对PHP的支持将php-4.3.11-Win32.zip解压缩到C:\apache\Apache2\php目录下;将php4embed.lib,php4ts.dll,php4ts.lib拷贝到c:\winnt\system32下;将C:\apache\Apache2\php\dlls下的所有*.dll的文件拷贝到c:\winnt目录下;将php.ini-dist拷贝到c:\winnt\并改名为php.ini。

图2-2apache安装-服务器信息③修改php.ini配置文件,修改php.ini添加对SQLServer和GD图形库支持,在php.ini找到下面内容,去掉前面的注释,如图2-3所示:图2-3修改php.ini配置信息在php.ini里搜索到extension_dir字符串,修改成如下配置信息,至此,PHP配置完成。如图2-4所示:图2-4修改php.ini配置信息(续)④修改apache的配置文件httpd.conf,在相关位置添加如下内容,如图2-5所示:图2-5apache配置文件修改⑤保存配置文件,启动apache服务,在C:\apache\Apache2\htdocs下创建index.php文件,文件内容为<?Phpinfo();?>,扩展名为.php,在浏览器里输入http://localhost/index.php,测试php是否安装成功,并且是否支持图形库和SQLServer2000数据库,成功配置会有如图2-6,图2-7所示的部分:图2-6PHP支持GD库图2-7PHP支持MSSQL(2)安装adodb解压缩adodb461.zip至C:\apache\Apache2\php\adodb下即可。(3)安装jpgrapg库解压缩jpgraph-1.17.tar.gz至C:\apache\Apache2\php\jpgraph,并修改jpgraph.php内容DEFINE("CACHE_DIR","/tmp/jpgraph_cache/")为DEFINE('CACHE_DIR','%USERPROFILE%/LocalSettings/Temp')。(4)安装snort-2_3_0使用默认安装路径c:\snort,选择数据库为MicrosoftSQLServer.修改配置文件C:\Snort\etc\snort.conf内容,其中varHOME_NET为snort要监控的网络,outputdatabase后面的用户名和密码为SQLServer2000的登陆名和密码。如图2-8所示:图2-8snort配置文件在安装完snort-2_3_0.exe后,需要安装与之对应的WinPcap软件,这snort-2_3_0.exe需要WinPcap_3_0.exe,WinPcap_3_0.exe的安装很简单,只需要按提示安装即可。 (5)snort的启动 snort的启动如下图,通过命令行启动,如图2-9所示:

图2-9snort的启动(5)ACID安装:解压缩acid-0.9.6b23.tar.gz至C:\apache\Apache2\htdocs\acid目录下,修改配置文件acid_conf.php,修改如下内容:数据库为SQLServer2000数据库,类型为mssql,数据库为ARMIRS,用户名和密码按实际情况填写,如图2-10所示,ACID界面如图2-11所示,图2-12为在ACID里浏览到警告信息。图2-12警告浏览2-10ACID配置文件修改图2-11ACID界面2.3网络设备配置通过配置SPAN特性能对本交换机端口或整个VLAN的数据流进行监视,被监控的数据流可以由协议分析设备进行分析处理。SPAN会话由一个目的端口和一组源端口组成,它将一个或多个VLAN上的一个或多个源端口的数据包复制到目的端口上。SPAN不影响源端口的正常工作,也不会影响正常的交换机操作。我们通过在交换机上做SPAN配置,使部署了snort的主机能接收到发往网络服务器的数据流量,为专用网络服务器的预警及报警系统提供所必须的数据流。在网络环境中,专用网络服务器所在的交换机端口和其他需要预警及报警的主机和网络设备所在的端口为SPAN的源端口,部署了snort的主机所在的交换机端口为SPAN目的端口。如图所示,Web_Srv3、防火墙、内部主机所在的交换机端口为源端口,部署了snort的主机所在的交换机端口为SPAN的目的端口:在如下图的环境中,专用网络服务器的预警及报警系统所连接的交换机端口为F0/1,其他F0/5,F0/9,F0/13,F0/17,F0/24分别接防火墙、web_srv3、和两台工作站。这样,专用网络服务器的预警及报警系统可以通过snort监控的网络流量进行分析,对达到规则的行为进行报警。如图2-13所示,交换机SPAN配置如图2-14。 图2-13网络服务器预警报警系统图2-14交换机SPAN特性配置

2.4小结本章通过部署snort和acid,为专用网络服务器的预警及报警系统提供必要的运行环境。本章详细介绍了apache、php、acid、snort的安装、配置和调试,并分别在windows平台和Linux平台下实现了该环境的部署,为专用网络服务器的预警及报警系统的设计和调试提供了良好的实验环境。

3专用网络服务器的预警及报警系统的设计与实现3.1开发环境介绍3.1.1Microsoftvisualc++介绍VisualC++6.0是Microsoft公司提供的基于Windows95,Windows98和WindowsNT的编程工具。多数高级程序设计人员认为VisualC++的优点是:与操作系统配合紧密、不存在与操作系统不兼容的问题;功能强大,用途广泛,不仅可以编写普通的应用程序,还能很好的进行系统软件及通信软件的开发;操作简单,一旦上手后,开发效率将成倍提高;从字面上看,Visual的英文含义是指“可观”,这里是指在用VisualC++进行开发的过程中对应用程序界面(GUI)的开发,大多使用开发工具所提供的现成的组件,利用所见即所得的方式完成程序界面的设计,因此大大减轻了程序设计人员的劳动强度,提高了开发效率。VisualC++最大的特色是对面向对象技术的支持,它用类把与用户界面设计有关的WindowsAPI函数封装起来,通过MFC(MicrosoftFoundationClass)库的方式提供给开发人员使用,大大提高了软件的重要性。 另外,VisualC++内带的AppWizard可以帮助MFC类库的用户自动生成一个运行程序框架,既一个空的不能做任何事情的应用程序,而用户只需要对该程序框架进行扩充添加代码就可以得到一个结构优良的应用程序。VisualC++提供的ClassWizard可以为用户提供方便而有效的使用管理MFC类库,传统的Win32SDK用户使用完ClassWizard后会由衷地称赞;“ClassWizard真是方便极了”。VisualC++作为一个功能强大的软件开发工具,它对应用程序的开发支持是多方面的,它可以为以下程序开发提供支持:利用MFC的32位Windows应用程序;使用C语言SDK编写Windows程序;编写控制台程序;编写ActiveX控件;编写动态链接库(DLLS);开发数据库应用程序;开发Internet应用程序;开发多媒体应用程序。3.2.2MicrosoftSQLServer2000简介SQLServer2000是建立在SQLServer7.0在可伸缩性、可用性、可管理性和数据仓库成功的基础上,并且引入了针对电子商务的重要新功能。

在高性能和企业级可伸缩性领域,SQLServer2000设计成利用Windows2000对更多处理器、更大的系统内存的支持,最终达到支持64位硬件平台。在不断提升可用性的努力过程中,SQLServer2000采用Windows2000四路群集,提供了大大改进的群集支持。SQLServer7.0已经在可管理性和易用性方面在行业内领先,SQLServer2000通过与Windows2000活动目录紧密结合进一步改进了这些功能。而且,SQLServer2000还包含对现有管理工具和实用程序的重大改进,并引入更具自我调节和自我管理的引擎功能。

通过与OLAP服务、数据转换服务、存储库和英文查询的紧密结合,SQLServer7.0代表了行业内最全面的数据仓库和决策支持平台。SQLServer2000继续了这种创新,在整个系统内进行了重要的改进。特别重要的是,SQLServer2000关系引擎增加了实质化的视图,改善了在特大型数据库环境中执行复杂查询的性能。同时,SQLServer2000引入了新的数据挖掘功能,可自动发现在大量数据之间隐藏的关系并可基于历史数据做出预测。这些数据挖掘功能将要实施,以向最终用户隐藏这种尖端技术的复杂性,并允许开发人员将第三方的数据挖掘产品轻松集成进客户的应用程序中。最后,在电子商务领域,SQLServer2000高度集成了对XML和通过web访问数据库的支持。

SQLServer2000按照设计可以为部署和维护强大的、易于管理、支持商务活动的Web站点提供最好的性能,这些站点可以从事商家和商家之间或商家与客户之间的交易。在寻求一个支持您的电子商务解决方案的数据库时,需要考虑的项目包括:可用性、性能、可管理性和价格。3.2系统结构设计与实现 软件的设计是以一定的方法为基础的。面对越来越复杂的软件开发任务,人们提出了各种软件设计的模型。本系统从需求和系统要实现的任务功能出发,采用模块化软件设计模型。模块化设计的基本思想是将一个大的程序按功能分割成一些小模块,各模块相对独立、功能单一、结构清晰、接口简单,把软件的设计划分成为相对较小的模块,这样可以将复杂的软件设计变的相对容易处理。模块的有机组合就是一个完整的系统。模块化设计降低了程序设计的复杂性,提高元件的可靠性,缩短开发周期,避免程序开发的重复劳动,易于维护和功能扩充,开发采用自上向下,逐步分解,分而治之的方法。 专用网络服务器的预警及报警系统采用模块化的软件设计方法,将系统设计分解为功能相对独立的三部分,每部分再划分不同的子模块。通过模块化的软件设计方法来实现该系统的功能。3.2.1整体系统结构设计本系统将系统设计划分为三个模块,其中包括:代价评估模块、短信代理模块和响应模块与响应代理模块。每个模块又划分为更小的子模块,如3-1图示。各个模块功能实现的组合就是我们完整的专用网络服务器的预警及报警系统。 专用网络服务器的预警及报警系统主要由以下三个部分构成: (1)代价评估模块代价评估模块的主要作用是把经过snort系统事件分析部件分析出来的安全事件按照成本分析方法进行评估,从而决定系统是否要对此事件进行响应;如果进行响应是自动采取响应还是快速手动响应。为实现本系统中的响应代价评估,设计了代价评估模块。该模块主要由资产管理子模块、短信响应门限值设定子模块和入侵行为属性数据库构成。 (2)短信代理模块短信代理可以实现下述功能:在安全事件经过响应代价评估模块评定后,如确实需要立即告知安全管理员,则将警报通过短信形式传递给管理员,并接收安全管理员通过短信发回的是否响应的指令。短信代理模块根据中国联通专有的短信通信SGIP协议的规范进行编写,包括短信发送、短信状态记录、短信接收、安全指令分析四个子模块。是本文针对当前入侵检测系统行为响应中所存在的问题而引入的一种新的响应方式,该方式实现了移动终端与入侵检测系统的紧密结合,主要用于解决误响应、漏响应和过度响应等可能给系统带来巨大损失的安全问题。专用网络服务预警报警系统专用网络服务预警报警系统短信代理代价评估模块响应模块与响应代理资产管理子模块入侵行为属性数据库短信发送子模块发送状态记录子模块短信接收子模块安全指令分析子模块响应决策专家数据库响应工具库图3-1专用网络服务器的预警及报警系统结构图 (3)响应模块与响应代理响应模块主要的功能是根据专家的设定,对可以进行自动响应的安全事件进行自动响应,同时可以接收由短信代理模块传送过来的快速手动响应短信指令进行响应。响应的具体执行是由各个响应代理来完成。 响应模块与响应代理主要由响应决策专家数据库和响应工具库构成。需要自动响应的事件通过与响应模块中的专家数据库的对照,得到相应的响应方法,而具体的响应行为则由各个响应代理来完成。3.2.2专用网络服务器的预警及报警系统实现 专用网络服务器的预警及报警系统总体结构提供与各功能模块的接口。我们在VisualC++里建立一个基于对话框的工程,在工程里插入资源,选择menu,并新建如图3-2所示的菜单。菜单提供ARMIRS各功能模块之间的接口。图3-2专用网络服务器的预警及报警系统结构图3.3代价评估模块设计响应的代价评估,就是对响应的成本进行分析。通常我们做事情有意识或者无意识的都会考虑代价,即考虑某件事情做的值还是不值。如果收获大于付出,那就值得做;反之付出大于收获,那就不值得做了。从网络安全整体角度来看,这个问题就是目前领域内最新提出的“适度安全”的概念。“适度安全”实际上是在信息安全的风险与投入之间寻求一种平衡。 对响应的成本分析进行深入研究是非常有意义和有必要的,接下来将主要讨论响应成本分析的基本原理,介绍入侵响应成本分析的方法,并对原有方法进行改进,以使其适用于快速手动响应,弥补自动响应的不足。 成本因素与成本量化对响应成本进行分析,首先需要确定与入侵及响应行为相关的成本因素。依据经验,这里我们考虑与响应相关的成本主要包括:损失代价Dcost(DamageCost)与响应代价Rcost(RespondCost)。损失代价Dcost,是假设IDS不采取任何响应措施的情况下,入侵行为对系统造成的损失,也就是潜在损失。响应代价Rcost是指针对某次入侵行为,采取相应的响应措施需要付出的代价。在确定成本因素之后,成本分析的关键就是成本量化的问题。与此相关的研究,在网络安全的一个分支——风险评估中已有所涉及。所谓风险评估,就是对一个企业或者组织网络信息系统资产价值、安全缺陷、安全威胁进行确定的过程。确定的方法可以是定性的,也可以是定量的。从安全风险评估已有的工作来看,完全的、精确的量化是相当困难的,而将定性分析与定量分析相结合是一种不错的选择。另外,与风险评估相似,我们的工作主要是给出一个成本量化的方法,具体的量化值应该由用户参与确定。因为同样的入侵行为,给一个小的传统企业带来的损失可能是10万,而给一个已经实现信息化的大型企带来的损失可能就是100万。 (1)损失代价(Dcost)入侵带来的在损失可能取决于多个方面。这里我们主要从入侵目标和入侵行为本身两个方面考虑,即入侵目标的重要性(Criticality)和入侵行为的致命性(Lethality)。目标的重要性(Criticality)是指被攻击或者入侵的目标系统的重要程度,可以通过目标系统在网络中所具备的功能或所起的作用体现出来。可以设定目标重要性值域为(0,5),5为最高值。那么可以把防火墙、路由器、DNS服务器的重要性值定义为5;web、Mail、FTP服务器可以定义为4;而普通UNIX工作站可以定义为2,Windows工作站可以定义为1,这样不同的攻击目标的重要性(Criticality)就通过它的重要性值体现出来。入侵的致命性(Lethality)是指入侵行为本身所具有的危害性或者威胁性的高低。这个量与入侵所针对的目标无关,只是对入侵行为本身的一个描述。比如,一个可以获取root权限的攻击的危害程度就高于只可以获取普通用户权限的攻击的危害程度。表3-1是根据经验量化了的几类攻击的危害性。我们在这里定义了4种不同种类的致命性描述。具体的攻击行为所具有的危害性与某一攻击分类相对应。通过对捕获的数据包进行分析可以知道他属于那种攻击行为,从而对应其危害性分类。例如:对捕获到的一个数据包,经过解码后得到目的端口80,数据包大小dsize>128,则很可能是利用了NetworkTimeProtocolDaemon(ntpd)存在缓冲区溢出漏洞,攻击目标设备,攻击者利用此漏洞能取得超级用户特权,我们给出其攻击行为为EXPLOITntpdxoverflow,属于U2R分类。表3-1攻击危害性与响应代价分类描述成本致命性响应代价U2R非法获取根权限10040R2L从外界获得非法访问5020DoS拒绝服务3010Probe获取目标系统的信息25有了上面描述的两个量,就可以把入侵损失代价Dcost的值定义为:Dcost=Criticality×Lethality。比如同样是DoS攻击,若攻击目标是防火墙,则Dcost=5×30=150;若攻击目标是Web服务器,则Dcost=4×30=120。 (2)响应代价(Rcost)入侵响应代价主要包括两部分内容:执行响应措施的资源耗费和响应措施执行以后带来的负面影响。响应代价的完全量化是比较困难的,在此根据经验值将响应代价的量化简化,如(表3-1)。这样,在确定了事件的潜在损失与响应代价之后,我们就可以做出响应决策:如果Rcost≤Dcost,即响应代价小于或者等于损失代价,则进行响应。如果Rcost>Dcost,即响应代价超过了损失代价,那就没有必要响应了。在此基础上我们将给出快速手动响应的两个门限值——严重威胁门限值α与重要响应门限值β,若:Dcost≥α|Rcost≥β说明出现了很严重的入侵行为或者需要执行很严厉的响应措施如断开网络或者入侵追踪等。此时,需要进行快速手动响应,以免因为漏响应、误响应或响应过度给系统带来更严重的后果。当可能发生的损失代价较大超过一定限度α时,响应行为是否正确得当变得十分重要,此时除系统自动采取的,如激活更详细的日志审计,启动更详细的入侵检测,以及估计事件范围,收集事件相关信息,产生事件报告等响应外,同时可以通过短信方式让安全员在第一时间进行远程遥控响应。当响应代价超过门限值β时,即系统准备需要采取一些比较严厉的主动响应措施如反向追踪时,涉及技术以外的多方面因素,此时也应由安全管理员做出决定,使用短信方式可以最小化手工响应代价。以上分析了响应过程中响应代价评估的问题,说明了应急响应成本分析的方法。3.3.1资产管理子系统模块设计与实现 根据前面提到的代价评估的算法,需要对网络内的各种网络设备的重要性(Criticality)进行设定。损失代价Dcost是对攻击目标属性和攻击行为属性综合计算的结果,资产管理子系统模块对网络中各种设备的属性进行定义,通过重要级别来完成对每个设备Criticality值设定的功能。资产管理子系统可以完成设备的添加、删除、浏览和修改功能。 资产管理子系统的实现是通过设计一个基于对话框的工程,添加列表控件,用以浏览当前资产,通过编程实现数据的添加和删除。如图3-3所示:图3-3资产管理子系统由于涉及到数据库的连接,我们引入ADO封装类,建立本系统到后台SQLServer2000的连接,通过添加“添加”,“删除”按钮,实现设备的添加,删除和修改。3.3.2响应门限设定子模块设计与实现根据本系统设计中的响应代价评定方法,如果入侵的损失代价Dcost大于或等于α则表示发生了非常严重的入侵行为,如果入侵的响应代价Rcost大于或等于β则表示要进行非常严厉的响应行为,如入侵跟踪甚至反向攻击等。α和β的值由安全管理员针对不同时期网络的具体情况进行设定。门限值设定是通过对话框的形式,将我们设定的值写入到配置文件中,如图3-4。

图3-4门限值设定3.3.3入侵行为属性数据库设计专用网络服务器的预警及报警系统对入侵损失代价进行评估时,对每一类攻击行为本身的致命性(Lethality)和响应代价Rcost都进行了预设。根据这些入侵行为的属性值就可以实现对入侵损失代价Rcost和入侵响应的代Rcost的比较,从而决定是否响应以及如何响应。入侵的致命性(Lethality)是指入侵行为本身所具有的危害性或者威胁性的高低,只是对入侵行为本身的一个描述。我们针对大量已知的和未知的入侵行为,根据他们的危害程度对其进行分类,对不同的分类我们给出其属性值,根据这些入侵行为的属性值就可以实现对入侵损失代价Dcost和入侵响应的代价Rcost的比较,从而决定是否响应以及如何响应。对于一个入侵行为致命性的判断,首先我们需要知道一种行为是否是入侵行为?这种入侵属于什么入侵行为?我们怎么来判断呢?我们通过snort所捕获的数据包,得到网络上的原始流量,根据数据包所具有的特征(signature)来分析数据包的行为,从而判断数据包的行为是否时入侵行为,根据入侵行为分类得到入侵行为属性值,从而建立入侵行为属性数据库。特征指数据包的包头、数据包的数据字段内容所具有的特征。根据这些数据包的特征信息来判断一个数据包的行为属于正常行为还是攻击行为,属于那一种攻击行为。根据RFC正式标准,网络上的数据帧或是报文都具有固定的格式和默认的规范,显然,如果捕获到一个帧格式或报文格式异常的数据,则很可能就是网络入侵或者是攻击。我们来看另一个例子:我们在抓到一个发往目的主机端口为21的数据包,通过在包的数据段中搜索指定“USERroot”串时,当匹配时,我们可以认为可能发生了“FTProotuseraccessattempt”入侵。通过上面的例子,我们看到了基于特征的入侵行为的描述方法。我们将通过特征来标识数据包的行为,建立入侵性为属性数据库,通过入侵属性数据库的定义来对网络的数据包是否是入侵行为进行判断。3.4响应模块与响应代理模块设计响应模块的主要功能是根据响应代价评估模块做出的决策,对安全事件进行自动响应或者快速手动响应,具体的响应操作由各个响应代理来完成,主要的入侵响应方式有: (1)记录安全事件:将安全事件记录下来有利于管理员的事后追查。 (2)产生报警信息:在控制台产生报警,或发送邮件给管理员。 (3)记录附加日志:为了能更好的分析攻击,有时应当不仅限于记录发现攻击的报文,如对于堆栈溢出攻

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论