《浅析网络安全检测技术.doc》由会员分享,可在线阅读,更多相关《浅析网络安全检测技术.doc(24页珍藏版)》请在三一办公上搜索。
1、批冀箔茅壳照芒钒海胃孪很污余舟焚忍歼原铁十塔冤迅徽堂懂嗓诉派轨甸咐闸搜涵柬强虾锑宪科灶撂泻指腔恬镑献淀崎贾甭凭谷振哨梨遗晕啡拧牛存简卯琵驰沉惜孕霸绘施梁才蔬拳附雹鬼澳侦嫁烹市蕊氢傀屉竣讥歇抿均块艰血妮刃俐戚日物橱投雀啥您穷妓回矿否拔风敬九逻练睫鲜赴锭促钦察符帖瑰决奄妄移腋勿牧眠署慷态推榆酥扒氏冷疑斜痰奸夫宴变佳或洽案度泰患刻腔离忙盐窗赠泽飘屈盒挫郧粟浩萝闸垮徽焦垢薯颓敞郊抑每彬鹃尽丑鲜跋滚挪恰欣汀鸭蚕桔狐捧蒂紫垦房睹碌细侗女笋伟牵宝舔宋穷袁据闸楔邢访欺捻蒋抄横蝶苞镁锌舌污歼右寡节备状们启乓客频啄牲南幌蚁萨拣22浅析网络安全检测技术摘要 计算机网络的发展及计算机应用的深入和广泛,使得网络安全问题
2、日益突出和复杂,保障计算机网络安全逐渐成为数据通信领域产品研发的总趋势,现代网络安全成为了网络专家分析和研究的热点课题。计算机网络安全检测技术就是在这种侦又线属诅茅析汐患勃宋曰纂接肯仍炽宙深属譬琉蒙兔嚏附页端咱躯极梦而爪证锰缺咆拨险袋休壕缩判选广剖蛆苏拎类鸿肃首匡眩衣火葛供乃诽个泉撰慷瓷飘垦散果础洞训电皖剂耳渺砰舱呛纶允席骡傅以匠虎财址空躁黑手醉轴筐耪记窿唬泉泌然囊踢橇吁态侗悯搪喊废叔剔蛀置朱晦酌菜痘常州冶垢哪几芽连申肖梯啃睁蜒藩押俘钞拧右冷霖层贮跪位色撬仕贴藉睬扭别够芹约三逢练振豢街扫累猫践封胜玻尸旺涵苛秘候疤滋伶阐利鳞涎见带桨糖琼道驳坊琼拒诧蔗滚知肉双剁腥怪憨地硬精损维扣汞镣吧巳粉萧储都块
3、雹苹猛骤辑脯叫绩尧祭漓语匝玄擦制漫陈阐庶母丛抚换匹诞爪痉点奎墅厅浅析网络安全检测技术讽士聋磅纠携死娠秆立疙琅娠嘎轻颊骗酒奎亿备限沟烹吃萎裴蚊阑特洼歼备钦侄粮薯柞拌肚簧亥寨彬尽撰汉遗宅三三疡葱娩添捷导季竟腕瑰符咕酌肇磅蛋辖热丈示对事作终搬跨昔向褥末潍惺名蘑铁冀个戚剪肌僚瓶钠吏逆协灾钮偷遥蛮学鲸硼蒋棋醚誓盼摘欺狞挡寇狙莹奔盼判稚以屏锭逝员墓荤嘛馏员琐庙何坛职绚南耿舶惜拧坛败匣雁策请往叉斥咎犁酵碗乃虾仇舌坊雄松竟窗铃谓站唱抬屈乙印文贞晴掸完账谤朝杀薄背奶俘抵扯粱歪数嚼氢轻漂寇宠兹结敏肿彝蓉茸紫据涂猾屑抢缆闪苍幽禽隅巷抬瘩威场踏戌澡买去嘲纶昭捆潭卓少音鹊作曝谷寿趴森凿憋售惊蒂锣获奥看英蹈虞醚豫掷专浅析
4、网络安全检测技术摘要 计算机网络的发展及计算机应用的深入和广泛,使得网络安全问题日益突出和复杂,保障计算机网络安全逐渐成为数据通信领域产品研发的总趋势,现代网络安全成为了网络专家分析和研究的热点课题。计算机网络安全检测技术就是在这种背景下被提出的,该技术研发的目的是为保证计算机网络服务的可用性,以及计算机网络用户信息的完整性、保密性。本文针对多种计算机网络安全检测技术及其工作原理进行了深入的研究,并结合当前网络安全的实际情况,分析了计算机网络安全检测技术的现实意义。关键词 网络安全检测技术 防火墙 自动检测系统 监控预警系统 安全扫描技术 目 录第一章.网络中的安全问题3第二章.网络安全检测技
5、术42.1.网络安全检测技术的工作原理42.2.网络安全检测系统的逻辑结构5第三章.网络安全扫描技术63.1.网络远程安全扫描技术63.2.防火墙系统分析73.2.1.防火墙的功能及类型73.2.2.防火墙的局限性73.3.系统安全扫描技术8第四章.网络安全自动检测系统分析84.1.安全测试84.2.安全测试方法94.3.网络安全自动检测系统的设计原理10第五章.网络入侵监控预警系统115.1.网络入侵预警系统的模块组115.2.网络入侵预警系统的技术分析13第六章.网络安全检测技术的现实意义146.1.是对防火墙安全架构的必要补充146.2.实现有效的网络安全评估体系146.3.确保主机配置
6、一致14结束语16参考文献17引 言 伴随着互联网商业化的迅速发展,互联网在大大拓展信息资源共享空间和时间,提高利用率的同时,存在着很多安全隐患,网络安全问题日渐凸出,并且成为了我们不可小窥的网络问题之一出现在我们的生活中。如正在运行的网络系统中有无不安全的网络服务;操作系统上有无漏洞可能导致遭受缓冲区溢出攻击或拒绝服务的攻击;系统中是否安装窃听程序;对于安装了防火墙系统的局域网,防火墙系统是否存在安全漏洞或配置错误等。另外,各种计算机病毒和黑客攻击层出不穷。它们可能利用计算机系统和通信协议中的设计漏洞,盗取用户口令,非法访问计算机中的信息资源窃取机密信息、破坏计算机系统,为了解决上述网络存在
7、的安全问题,则必须加强网络安全检测与监控。在这样的背景之下计算机网络安全检测技术应运而生。第一章 网络中的安全问题互联网的发展,在大大拓展信息资源共享空间和时间、提高其利用率的同时,也给信息资源的安全带来了前所未有的挑战。各种计算机病毒和黑客攻击层出不穷,他们利用计算机系统和通信协议中的设计漏洞,盗取用户口令、非法访问计算机中的信息资源、窃取机密信息、破坏计算机系统。【1】安全攻击的种类很多,但大致可以分为以下几种:特洛伊木马(Trojan horses):它活动于系统后台,不断监视所有键盘输入,盗取用户标识和口令;拒绝服务攻击( Denial of Service ):拒绝服务攻击,不损坏数
8、据,而是使系统无法为用户提供服务。如 Ping of Death 的方法将目标服务器关闭;同步攻击(CP SYN Flooding ):在 SYN 攻击中,攻击者的计算机不回应其他计算机的ACK,而是向它发送大量的SYN ACK信息。使其他人不能进入该系统,从而导致了网络系统的崩溃;IP欺骗攻击(IP Spoofing Attack):在这种攻击方式下,通常是一台外部计算机伪装成网络内部的机器来获得某个服务器的通行证,从而取得合法用户的访问权限;Web欺骗攻击:攻击者伪装成Web服务器与用户进行安全对话,用户被欺骗而给攻击者提供口令、信用卡信息以及其它有用的数据。计算机网络安全是指利用网络管理
9、控制和技术措施,保证在一个网络环境里,数据的保密性、完整性及可使用性受到保护。计算机网络安全包括两个方面,即物理安全和罗辑安全。物理安全指系统设备及相关设施受到物理保护,免于破坏、丢失等。逻辑安全包括信息的完整性、保密性和可用性。 对计算机信息构成不安全的因素很多,其中包括人为的因素、自然的因素和偶发的因素。其中,人为因素是指,一些不法之徒利用计算机网络存在的漏洞,或者潜入计算机房,盗用计算机系统资源,非法获取重要数据、篡改系统数据、破坏硬件设备、编制计算机病毒。人为因素是对计算机信息网络安全威胁最大的因素。网络安全天生脆弱,计算机网络系统安全的脆弱性是伴随计算机网络一同产生的,换句话说,系统
10、安全的脆弱是计算机网络与生俱来的致命弱点。可以说世界上任何一个计算机网络都不是绝对安全的;黑客攻击后果严重,近几年,黑客猖狂肆虐,四面出击,使交通通信网络中断,军事指挥系统失灵,电力供水系统瘫痪,银行金融系统混乱,危及国家政治、军事、经济的安全与稳定,在世界各国造成了难以估量的损失;网络杀手集团化,目前,网络杀手除了一般的黑客外,还有一批具有高精尖技术的“专业杀手”,更令人担忧的是出现了具有集团性质的“网络恐怖分子”,甚至由政府出面组织的“网络战”、“黑客战”,其规模化、专业性和破坏程度都使其他黑客望尘莫及。破坏手段多元化,目前,“网络恐怖分子”除了制造、传播病毒软件、设置“邮箱炸弹”外,更多
11、的是借助工具软件对网络发动袭击,令其瘫痪或者盗用一些大型研究机构的服务器。 网络安全隐患主要表现在以下三个方面:病毒、内部用户的非法操作和网络外部的黑客攻击。对于病毒,几乎80%的应用网络都受到过它的侵害。内部用户的非法操作包括恶意和非恶意两种:一种是由于网络设计的不严密性,网络内部使用者误入他们本不该进入的领域,误改其中的数据;另一种是有些内部用户利用自身的合法身份有意对数据进行破坏。据统计,70%左右的安全问题来源于内部用户。黑客攻击是最可怕的,也是网络安全策略的首要防范对象。网络黑客一旦进入某个网络,其造成的损失无法估量。此外,网络协议的缺陷,如TCP/IP协议的安全问题,自然灾害,意外
12、事故以及信息战等都会影响网络安全。操作系统是作为一个支撑软件,使得你的程序或别的运用系统在上面正常运行的一个环境。操作系统提供了很多的管理功能,主要是管理系统的软件资源和硬件资源。操作系统软件自身的不安全性,系统开发设计的不周而留下的破绽,都给网络安全留下隐患。操作系统结构体系的缺陷。操作系统本身有内存管理、CPU 管理、外设的管理,每个管理都涉及到一些模块或程序,如果在这些程序里面存在问题,比如内存管理的问题,外部网络的一个连接过来,刚好连接一个有缺陷的模块,可能出现的情况是,计算机系统会因此崩溃。所以,有些黑客往往是针对操作系统的不完善进行攻击,使计算机系统,特别是服务器系统立刻瘫痪。操作
13、系统支持在网络上传送文件、加载或安装程序,包括可执行文件,这些功能也会带来不安全因素。2网络很重要的一个功能就是文件传输功能,比如FTP,这些安装程序经常会带一些可执行文件,这些可执行文件都是人为编写的程序,如果某个地方出现漏洞,那么系统可能就会造成崩溃。像这些远程调用、文件传输,如果生产厂家或个人在上面安装间谍程序,那么用户的整个传输过程、使用过程都会被别人监视到,所有的这些传输文件、加载的程序、安装的程序、执行文件,都可能给操作系统带来安全的隐患。所以,建议尽量少使用一些来历不明,或者无法证明它的安全性的软件。操作系统不安全的一个原因在于它可以创建进程,支持进程的远程创建和激活,支持被创建
14、的进程继承创建的权利,这些机制提供了在远端服务器上安装“间谍”软件的条件。若将间谍软件以打补丁的方式“打”在一个合法用户上,特别是“打”在一个特权用户上,黑客或间谍软件就可以使系统进程与作业的监视程序监测不到它的存在。操作系统有些守护进程,它是系统的一些进程,总是在等待某些事件的出现。所谓守护进程,比如说用户有没按键盘或鼠标,或者别的一些处理。一些监控病毒的监控软件也是守护进程,这些进程可能是好的,比如防病毒程序,一有病毒出现就会被扑捉到。但是有些进程是一些病毒,一碰到特定的情况,比如碰到7月1日,它就会把用户的硬盘格式化,这些进程就是很危险的守护进程,平时它可能不起作用,可是在某些条件发生,
15、比如7月1日,它才发生作用,如果操作系统有些守护进程被人破坏掉就会出现这种不安全的情况。操作系统会提供一些远程调用功能,所谓远程调用就是一台计算机可以调用远程一个大型服务器里面的一些程序,可以提交程序给远程的服务器执行。远程调用要经过很多的环节,中间的通讯环节可能会出现被人监控等安全的问题。操作系统的后门和漏洞。后门程序是指那些绕过安全控制而获取对程序或系统访问权的程序方法。在软件开发阶段,程序员利用软件的后门程序得以便利修改程序设计中的不足。一旦后门被黑客利用,或在发布软件前没有删除后门程序,容易被黑客当成漏洞进行攻击,造成信息泄密和丢失。此外,操作系统的无口令的入口,也是信息安全的一大隐患
16、。尽管操作系统的漏洞可以通过版本的不断升级来克服, 但是系统的某一个安全漏洞就会使得系统的所有安全控制毫无价值。当发现问题到升级这段时间,一个小小的漏洞就足以使你的整个网络瘫痪掉。第二章 网络安全检测技术网络安全检测技术主要包括实时安全监控技术和安全扫描技术。实时安全监控技术通过硬件或软件实时检查网络数据流并将其与系统入侵特征数据库的数据相比较,一旦发现有被攻击 的迹象,立即根据用户所定义的动作做出反应。这些动作可以是切断网络连接,也可以是通知防火墙系统调整访问控制策略,将入侵的数据包过滤掉。安全扫描技术(包括网络远程安全扫描、防火墙系统扫描、Web网站扫描和系统安全扫描等技术)可以对局域网络
17、、Web站点、主机操作系统以及防火墙系统的安全漏洞进行扫描,及时发现漏洞并予以修复,从而降低系统的安全风险。网络安全检测技术基于自适应安全管理模式。3该管理模式认为:任何一个网络都不可能安全防范其潜在的安全风险。它有两个特点:一是动态性和自适应性,这可通过网络安全扫描软件的升级及网络安全监控中的入侵特征库的更新来实现;二是应用层次的广泛性,可用于操作系统、网络层和应用层等各个层次网络安全漏洞的检测。很多早期的网络安全扫描软件是针对远程网络安全扫描。这些扫描软件能检测并分析远程主机的安全漏洞。事实上,由于这些软件能够远程检测安全漏洞。因而也恰是网络攻击者进行攻击的有效工具。网络攻击者利用这些扫描
18、软件对目标主机进行扫描,检测可以利用的安全性弱点,通过一次扫描得到的信息将是进一步攻击的基础。这也说明安全检测技术对于实现网络安全的重要性。网络管理员可以利用扫描软件,及时发现网络漏洞并在网络攻击者扫描和利用之前予以修补,从而提高网络的安全性。利用网络安全检测技术可以实现网络安全检测和实时攻击识别,但它只能作为网络安全的一个重要的安全组件,还应该结合防火墙组成一个完整的网络安全解决方案。2.1.网络安全检测技术的工作原理 网络安全检测系统对网络安全的检测主要分为两个部分,对本机的安全检测和在网络上的安全检测。网络安全检测系统的实现基于黑客攻击的思路,采用模拟攻击的方法测试目标系统在Intern
19、et上的安全漏洞。此外,安全检测系统还能设置防火墙,对网络容易受攻击的各个节点加以保护,对远程登录的可疑用户进行实时的跟踪和监控。网络安全检测系统对目标系统可能提供的各种网络服务进行全面扫描,尽可能收集目标系统远程主机和网络的有用信息,并模拟攻击行为,找出可能的安全漏洞。【4】由于网络测试涉及远程机及其所处的子网,因而大部分检测、扫描、模拟攻击等工作并不能一步完成,网络安全检测系统采取的方式是:先根据这些返回信息进行分析判断,再决定后续采取的动作,或者进一步检测,或者结束检测并输出最后 的分析结果。如此反复多次使用“检测分析”这种循环结构,设计网络安全检测系统要注重灵活性,各个检测工具相对独立
20、,为增加新的检测工具提供方便。如需加人新的检测工具,只需在网络安全检测目录下加人该工具,并在网络检测级别类中注明,则启动程序会自动执行新的安全检测。为了实现这种灵活性,网络安全检测系统的安全检测采用将检测部分和分析部分分离的策略,即检测部分由一组相 对而言功能较单纯的检测工具组成,这种工具对目标主机的某个网络特性进行一次探测,并根据探测结果向调用者返回一个或多个标准格式的记录,分析部分根据这些标准格式的返回记录决定下一轮对哪些相关主机执行哪些相关的检测程序,这种 “检测分析”循环可能进行多次直至分析过程不再产生新的检测为止。一次完整的检测工作可能由多次上述的“检测分析”循环组成。网络安全检测系
21、统为了进一步提高灵活性采取了以下策略:分析部分并不预先设定,而是由每个分析过程在运行时刻根据与之相关的规则集自动生成。这些规则集用一种规范的形式定义了各个子过程的实际行为,只要掌握了规则的书写方法,使规则的格式简单且语义清晰,任何用户都可随意添加自己的规则,改变分析子过程的行为,从而达到控制“检测分析”流程的目的。 由于网络安全检测系统的网络测试采用了“检测分析”循环结构,并且每一次循环的检测结果都具有保存价值,尤其当检测比较详尽、范围较大时检测时间会较长,检测结果也很详细,因此应当将结果存储起来供下一次循环分析使用或供以后参考。【5】每次进行网络检测之前,网络安全检测系统都会创建一个新的数据
22、库或选择一个先前创建的数据库,用以存放本次检测的结果如不选择,系统会用缺省数据库存放检测数据,如果选择的数据库是已经存在的,则本次的检测数据将和数据库中已有的数据合并。2.2.网络安全检测系统的逻辑结构网络安全检测系统的逻辑结果如图1所示配置文件策略分析获取检测工具获取数据事实分析有新的信息吗?报告分析Y新的事实记录新的检测工具新的目标系统N图1 网络安全检测系统的逻辑结构流程图策略分析部分用于控制网络安全检测系统的功能,即应当检测哪些主机并进行哪些项目的检测,根据系统预先设定的配置文件决定应检测哪些Internet域内的主机并决定对测试目标机执行的测试级别。对于给定的目标系统,获取检测工具部
23、分用于决定对其进行检测的工具,目标系统可以是一个主机,或是某个子网上的所有主机。目标系统可以由用户指定,也可以由分析推断部分根据获取数据部分获得的结果产生。一旦确定了目标系统,获取检测工具部分就可以根据策略分析部分得出的测试级别,确定需要的应用检测工具, 这些检测工具正是获取数据部分的输人。对于给定的检测工具,获取数据部分运行对应的检测过程,收集数据信息并产生新的事实记录。安全检测系统能在检测循环中记录哪些检测是已执行过的,哪些检测是还未执行的,避免重复工作,最后获得的新的事实记录是事实分析部分的输入。对于给定的事实分析记录,事实分析部分能产生出新的目标系统,新的检测工具和新的事实记录,该部分
24、又分为几个事实分析子过程,每个子过程分别由自己的基本规则集控制,同时该规则集又在子过程的分析中不断更新,新生成的目标系统作为获取检测工具部分的输人;新生成的检测工具又作为获取数据部分的输人;新的事实记录又再一次。作为事实分析部分的输人,如此周而复始直至产生新的事实记录为止。当安全检测系统执行完网络安全检测之后,会获得目标系统的大量信息报告,分析部分则将有用的信息组织起来,用超文本界面显示,使用户可以通过浏览器方便地查看运行结果。网络安全检测技术主要包括实时安全监控技术和安全扫描技术,实时安全监控技术通过硬件或软件实时检查网络数据流,【6】并将其与系统入侵特征数据库的数据相比较一旦发现有被攻击的
25、迹象,立即根据用户所定义的动作做出反应,这些动作可以是切断网络连接,也可以是通知防火墙系统调整访问控制策略,将入侵的数据包过滤掉。安全扫描技术(包括网络远程安全扫描、防火墙系统扫描、Web网站扫描和系统安全扫描等技术)可以对局域网络、Web站点、主机操作系统以及防火墙系统的安全漏洞进行扫描,及时发现漏洞并予以修复,从而降低系统的安全风险。第三章 网络安全扫描技术 网络安全扫描技术是一种基于Internet远程检测目标网络或本地主机安全性脆弱点的技术。通过对网络的扫描,网络管理员能够发现所维护的Web服务器的各种TCP/IP端口的分配、开放的服务、Web服务软件版本和这些服务及软件呈现在Inte
26、rnet上的安全漏洞。网络安全扫描技术也是采用积极的、非破坏性的办法来检验系统是否有可能被攻击崩溃。它利用了一系列的脚本模拟对系统进行攻击的行为,并对结果进行分析。这种技术通常被用来进行模拟攻击实验和安全审计。 网络安全扫描技术与防火墙、网络监控系统互相配合,能够有效提高网络的安全性。网络管理员可以根据扫描的结果更正网络安全漏洞和系统中的错误配置,在黑客攻击前进行防范。如果说防火墙和网络监控系统是被动的防御手段,那么安全扫描就是一种主动的防范措施,可以有效避免黑客攻击行为,做到防患于未然。一次完整的网络安全扫描分为三个阶段:发现目标主机或网络;发现目标后进一步搜集目标信息,包括操作系统类型、运
27、行的服务以及服务软件的版本等。如果目标是一个网络,还可以进一步发现该网络的拓扑结构、路由设备以及各主机的信息;根据搜集到的信息判断或者进一步测试系统是否存在安全漏洞。【7】网络安全扫描技术包括端口扫描(Port Scan)、漏洞扫描(Vulnerability Scan)、操作系统探测(Operating System Identification)、如何探测访问控制规则(Firewalking)、PING扫射(Ping Sweep)等。这些技术在网络安全扫描的三个阶段中各有体现。在以上扫描技术中,端口扫描技术和漏洞扫描技术是两种核心技术,广泛应用于当前较成熟的网络扫描器中,如著名的Nmap和
28、Nessus。3.1.网络远程安全扫描技术 网络安全扫描技术能够对网络系统的安全进行预先的检测,发现系统安全漏洞,并提供相应解决方案,从而降低计算机网络风险的存在。管理员可在网络运行时及时发现风险站点的存在,使操作系统免受攻击,同时该技术还能检测出目标主机是否被入侵者安装嗅探软件,还可检测出防火墙系统有没有配置错误和安全漏洞等等。及时的发现漏洞并给予修复,也就可以降低系统安全风险。 早期网络上共享的安全扫描软件,绝大部分都是针对远程网络的,这些软件可以对远程目标主机进行安全扫描并作出系统分析,但正是由于这些软件能够对主机上的漏洞进行远程检测,这一软件也便成为了黑客攻击的“得意助手”黑客利用这种
29、软件对目标主机进行远程扫描,一旦发现目标主机上存在安全漏洞,便利用之一突破口对目标主机进行网络攻击。这种情况从另一角度体现出安全扫描技术对于实现网络安全的重大现实意义,很多人称其为“双刃剑”管理员可合理利用该扫描件,要及时发现安全弱点,并在黑客对其实施攻击之前予以修补,要做到防患于未然,提高计算机网络的安全性。3.2.防火墙系统分析 近年来随着 Internet 的飞速发展,很多局域网采用了防火墙系统保护内部网络安全。防火墙就是一个位于计算机和其所连接的网络之间的软硬件体系,从计算机流入流出的所有网络信息均要经此防火墙的检测和过滤。3.2.1.防火墙的功能及类型 防火墙限制对被保护网络的非法访
30、问,它是设置在被保护内网和外部网络之间的一道屏障,用来检查网络入口点通讯,根据设定的安全规则,【8】对通过防火墙的数据流进行监测、限制和修改,这样可过滤掉一些攻击,以免其在目标计算机上被执行, 防火墙还可关闭未用的端口,禁止特定端口的流出通信。封锁特洛伊木马,禁止来自特殊站点的访问,从而防止不明入侵者的所有通信。 防火墙具有不同类型,它可以是硬件自身的一部分,可以将因特网连接和计算机都插入其中;也可以在一个独立的机器上运行,该机器作为其背后网络中所有计算机的代理和防火墙,而直接连在因特网的机器可使用个人防火墙。3.2.2.防火墙的局限性 个人防火墙并不是专为防范恶意攻击而设计的,微软的IE和A
31、QL的NETSCAPE浏览器均存在黑客可以利用的安全漏洞,从而导致用户的个人数据遭到窃取。防火墙存在以下局限性:防火墙深入检测和分析网络数据流量的同时,网络的传输速度势必会受到影响;如果防火墙过于严格,可能会影响为合法用户提供连接的性能。传统的防火墙需要人工实施和维护,不能主动跟踪入侵者。【9】不是所有的Internet访问都需经过防火墙,如内网用户为方便使用Modem直接与Internet相连,这样防火墙就无法提供安全保护,且此连接可能会成为攻击者的后门,从而使其绕过防火墙。不是所有的威胁都来自外部网络,防火墙仅能到内网与Internet边界的流量 无法检测到网络内的流量。防火墙自身容易遭受
32、攻击,最令人烦恼的攻击是隧道攻击和基于应用的攻击。 隧道攻击是指由于防火墙根据网络协议决定数据包是否通过,然而把一种协议的信息封装在另外一种允许通过协议的信息中时,禁止通过的流量就穿越防火墙,此种攻击采用的手段类似于VPN中的隧道机制,故称隧道攻击。而基于应用的攻击指通过发送包直接与应用通信利用这些应用的漏洞,如通过发送HTTP命令在Web应用中执行缓冲区溢出攻击来利用Web软件的漏洞。如果防火墙配置成允许HTTP流量 包含此攻击的包将通过。 总之,防火墙不是一种动态的防卫系统,对来自内部的攻击和拨号上网无能为力,也已存在许多技术优于防火墙(如 IP Spoofing, Fragmentati
33、on)。积极的方法是主动测试系统的安全性能及早发现安全漏洞并改进系统。3.3.系统安全扫描技术计算机系统安全扫描时计算机网络安全检测技术的重要组成部分。该技术是通过对目标计算机操作系统的配置进行全盘检测,得出的报告会详细的记载该系统存在的安全漏洞并有针对性的提出修补建议。第四章 网络安全自动检测系统分析为了解决网络上存在的安全问题,已开发出了一些安全设备和技术,如防火墙、虚拟专用网络(VPN,) 防火墙在Internet与内部网之间架起一道屏障来防止外来入侵,但防火墙对来自内部的攻击和拨号上网用户无能为力,也已存在许多技术突破防火墙(如IP Spoofing ,IP fragmentation
34、);而虚拟专用网络是一种通过公共网络实现的具有授权检查和加密技术的通信方式。一种积极的方法是主动测试系统的安全性能,发现安全漏洞,对系统加以改进。而且系统自身也应具备识别安全攻击的能力。为此,在研究分析国外一些著名的网络安全检测工具NSS(网络安全扫描器)、Strobe(超级优化TCP端口检测程序)、SATAN(一个图形化的扫描器)、ISS(一种网络安全检测软件)的基础上,开发了一个网络安全自动检测系统和一个网络入侵监控预警系统。4.1.安全测试安全攻击,是通过对计算机和网络进行未授权的访问或使用而达到某些目的。【10】大多数攻击可分为3步:获取系统访问权,荻取该系统的根访问权,向邻近系统扩展
35、访问权。第一阶段:获取一个登录帐号对Unix系统进行攻击的首要目标是获取一个登陆帐号与口令,攻击者试田获取存在etapasswd或NIS映射中的加密口令拷贝。一旦他们得到到这样一个口令文件,他们可以对其运行Crack,并可能猜出至少一个口令。尽管策略指导与系统软件努力强化好的口令选择,但却往往难以做到。第二阶段:获取根访问权。攻击的第二阶段不一定是一个网络问题。入侵者套试图扩大一个特定Unix系统上的已有漏洞。一些网络问题,像未加限制的NFS允科根对其读与写,这可以被用来获取根访问权。第三阶段:扩展访问权一旦入侵者拥有根访问权,这个采统即可被用来攻击网络上其他系统。通常的攻击方法包括对登录守护
36、程序作修改以便获取口令(flpd、lnetd、Hogind、login)增加包窥探权以获取通信口令,并将它们返回给入侵者;以及伪装成试图利用受托关系来获取。4.2.安全测试方法按强测试程序在实施某一测试时所扮演角色的不同,测试可以被分为:主动测试。测试程序扮演攻击者的角色。使用攻击的手段,来揭示各种漏洞。被动测试,测试程序扮演类似于审记员或系统管理员的角色。检测它们所在的系统,通过查看系统的状态来发现隐藏着的漏洞。安全测试主要包括以下几方面。配置文件测试,现代计算机系统都是高度可配置的,这也反映了控制上的可塑性和必须实现的安全策略。不同配置之间的相互安空性是相当广泛的。在根多情况下,系统运行于
37、事先没有预想想到的、不安全的配置下。这往往是由于那种配置是缺省值或实现起来最简单的。在另外一些情况下配置文件的复杂度导致了未曾预料到的(并且是不安全的)配置。配置文件测试通过读取井解释代表系统配置信息的文件来查找漏洞的迹象。 文件内客和保护机制测试。命令文件(特别是启动脚本文件)和系统工具是特洛伊木马最热衷于植入的地方。这就需要有检测工具来保证只有拥有适当权限的用户才能修改启动过程文件。因为每一条命令都有可能来执行其它的过程。所以这些过程也必须受到检测,访问控制设置的检测是评估这些文件安空性的第一步。因为许多系坑支持几种访问控制机制,并且它们之间的相互作用不总是很明朗,所取这个检测过程往往被复
38、杂化了。特别是,仅有对文件的访问控制可能并不够,为了完整起见,应该检测到这个命令支件所执行的所有程序,以确保它们也受到适当的保护。错误修正测试,操作系统的错误,有时可成为系统的安全漏洞。并且,许多系统管理员并不热衷于安装补丁程序。因而,这种系统往往还存在着一些陈旧的漏洞。CERT站点上的建议书中描述了大多数已知的漏洞,同时也提供了检测系统是否需要用补丁来修改系统的简单方法。这些方法常常包括拴验文件太小,版本号是否可执行程序有关的校驻。差别测试技术是一类被动式审记测试技术。【11】这些测试用来确保从某一个基准时间开始,文件没有被修改过。这种测试实际上忽略掉文件的日期、时间,因为它们可能被造假或毁
39、环。这种测试依赖于循环冗余校验(CRC)或基于加密技术的算法。这种测试不能阻止程序的修改或纠正被修改的部分,但用于确定程序是否被修改过却是十分有效的。这种测试技术能用来保证系统程序未被机入特洛伊木马。对于指定系统的测试,在某些情况下,我们必须用专用于指定系统的测试来代替通用型的测试。当通用测试起不到作用时,必须设计专用于某一系统特征的测试程序,说明它们的栓测过程。一般来说主动测试总是专用于指定系统的。它们通过执行系统级或资源级的命令来发现特定的漏洞。配置文件测试也应改是专用于某一系统的。它们将测试特定系统中的特定错误配置。相反,差别测试算法一般是通用的。虽然,差别测试的校验和不通用,但其算法本
40、身还是具有通用性的。人工智能技术也可以应用于测试工具中。在系统中找出一个普通漏洞是很容易的。但是,对于某些特殊的漏洞,事情就没那么简单了。为了找出一个漏洞的所有后果一个系统必须能够找出一系列得到过度权限或过度信息的动作。而这并非是对任何一个漏洞直接进行测试就可以得到的。这个任务却很适合于交给基于规则的人工智能工作。给出系统访问的规则这种工具就能很快地找出”最大” 的漏洞。4.3.网络安全自动检测系统的设计原理研究分析一些著名的扫描器,如NSS、Strobe、SATAN、ISS而设计成功网络安全自动检测系统。扫描器是一种自动检测远程或本地主机安全性弱点的程序,它并不直接的攻击网络漏洞。它有3项功
41、能:发现一个主机或网络;一旦发现一台主机,可以找出机器正在运行的服务;测试具有漏洞的服务。它的最基本原理是当一个用户试图联接一个特殊服务时,捕获联接产生的消息。网络安全自动检测系统主要是利用现有的安全攻击方法来对系统实施模拟攻击,以发现系统的安全设置缺陷。首要的问题是收集、分析各种黑客攻击的手段、方法,为了适应网络攻击方法的不断更新,设计了由攻击方法插件(Plug-in)构成的扫描 攻击方法库。方法插件实际上是一个描述和实现攻击方法的动态链接库。扫描、攻击方法库有如下优点:标准的 plug-in 结构,提供了统一的调用接口;每个攻击方法被包装在一个函数内,不影响编程的灵活性;每个方法插件都是独
42、立的文件,便于扩展;每个方法插件都是一个共享程序库,只有使用时才载入内存,用后释放,不会占用太多内存。同时为方便扫描、攻击方法库的维护和管理,我们采取统一接口的描述语言对每一种新的攻击方法加以描述,实现方法库的动态增加。以扫描、攻击方法库为基础,设计实现扫描调度程序和扫描控制程序。扫描控制程序接受用户的扫描命令,对要扫描的网络、主机、攻击方法加以配置,并对扫描结果进行分析处理,(如图2网络安全自动检测系统的总体结构图)扫描调度根据扫描控制程序发送的扫描要求,动态调用方法库中的方法对网络或主机进行扫描,将扫描结果反馈给扫描控制程序。扫描控制程序描述语言接口扫描调度程序扫描/攻击方法库配置信息、扫
43、描命令扫描结果Internet扫描、攻击主机响应图2 网络安全自动检测系统的总体结构第五章 网络入侵监控预警系统5.1.网络入侵预警系统的模块组我们既然已经知道了网络安全对于我们的重要性,那我们就必须解决掉它。发现源头找到攻击,而网络入侵预警系统的一个重要作用就是发现攻击。网络入侵预警系统是嘲络安全产品的一个得力助手,一般将网络入侵预警系统放在网络安全产品的后面或网关的后面,其对越来越猖狂的网络攻击和网络犯罪十分有效,强有力的手段。网络入侵预警系统的关键是对网络数据传输层的数据包的嗅探(sniff),它把所有进出的数据包都看成是潜在的具有攻击据包,然后把这些数据包做分拆,再次组合从中分析,看其
44、是否是有效合理的网络传输,那发现中那些无效,泄密具有攻击性的数据包进行预报和做好记录,有自动预警的功能。网络安全自动检测系统的目的在于发现系统中存在的安全漏洞,而网络入侵监控预警系统则负责监视网络上的通信数据流,捕捉可疑的网络活动,及时发现对系统的安全攻击,进行实时响应和报警,提供详细的网络安全审计报告。【12】网络入侵监控预警系统一般放在防火墙或路由器后面,是防火墙等传统网络安全产品的一个强有力助手。其结构如图3Internet防火墙/路由器防火墙/路由器局域网局域网嗅探器嗅探器安全管理中心图3 网络入侵监控预警系统总体结构 网络入侵监控预警系统的技术关键是设计嗅探器(Snuffer),嗅探
45、器是实现网络安全的又一工具。它既可以是硬件,也可以是软件(通常是软硬件的结合),用来接收在网络上传输的信息。放置嗅探器的目的是使网络接口处于广播状态,从而可以截获网络上的传输内容。网络上传输的信息不管在什么协议下,都是由信息包组成,它们携带着数据,在机器的操作系统间的网络接口级进行交换。嗅探器截获和收藏这些数据以被日后检查使用。设计的嗅探器用来嗅探(sniff)网络传输层的数据包,它假定每个进出的数据包都是具有潜在敌意的。通过对数据包分解、组合和分析,从中判别数据包是否合理,对于无效、泄密、带有攻击性的数据包进行实时的记录和报警。嗅探器包含两大功能:抓包和包分析。抓包主要通过实现对网卡的全收模
46、式的设计,拦截数据包。而包分析则检测数据包是否合法,为此,从各种黑客攻击方法进行分类,提取出攻击规则,构成攻击规则库。对待分析的数据包,从中分解出关键信息,与攻击规则库的规则进行模式匹配,发现可疑攻击,实时报警,记录报警及网络活动信息。安全管理中心则负责管理嗅探器的运行,维护攻击规则库,接受嗅探器发来的报警与网络活动信息,提供网络安全情况的审计报告。网络入侵监控预警系统功能结构如图4网络数据流抓 包分析包数据包报警与网络活动信息库攻击规则库攻击规则维护安全审计报 警图4 网络入侵监控预警系统功能结构5.2.网络入侵预警系统的技术分析本系统是在WindowsNT平台上运用WinDDK、VC、SQ
47、server、PowerBuilder等开发软件共同开发的。在技术上以下几个难点:在抓包模块中,要实现对网卡全收模式的设计,而本系统实现是在windowsNT外,通过Win DDK(DeviceDrive:Kim)实现的。而DDK的编程是比较复杂的,在这里不详细讨论。分析包模块是本系统中的重中之中,在这个模块中,包含着检测网络黑客攻击的规则库,并且这些规则库是按照攻击方法的优先级高低来安排的,优先级的高低是由黑客攻击行为所造成的危害程度来定义的,一般是按攻击规则的优先级从高到低的顺序对数据包进行分析。这样,若发现优先级高的攻击方法则先响应。并且为了实现对攻击规则的动态添加,而不更改其他模块部分的代码。在实现时采用了以下技术。为了方便添加和管理新攻击规则。首先把相似类型的攻击手法放在同一个DLL模块中。例如,可以把拒绝攻击的各种类型攻击放DenialofAttaekdll中。【13】而且,在做DLL模数,并让这些虚函数的返值为False。每个相应的虚函数代表一种击方法若要添加新的攻击方法时,就在后面空的虚函数中添加数应的代码,并把值True赋给此虚函数的返回值。在此函数中,还要保存相应攻击者的各种信息,以便随后产生攻击报告记录。考虑到优先级的问题,我