四年前,病毒开始攻击网络漏洞,并逐渐成为现今网络上最可怕的安全威胁。引发网络攻击的一个最重要的原因就是在计算机中存着大大小小,花样百出的漏洞,它们很容易被人利用来进行网络的攻击。2003年由《资源》杂志评选出的危害最大的,包括冲击波、恶邮差在内的10种病毒,均是利用网络的漏洞进行攻击。从技术上讲,我们很难彻底清除这些漏洞,也无法杜绝发生在网络中各种各样的攻击行为。但可以通过对网络漏洞的分析,找出有效的防护措施,提高网络的安全,减少网络漏洞带来的危害。那么漏洞究竟是什么呢?究竟有哪些漏洞,利用它们进行攻击的原理是什么?如何才能消除其危害?下面将就这些问题进行讨论。
1 网络漏洞的概念描述
关于网络漏洞,目前还没有一个准确统一的定义。有学者从访问控制的角度出发,认为:当对系统的各种操作与系统的安全策略发生冲突时,就产生了安全漏洞。也有专家认为:计算机系统是由若干描述实体配置的当前状态所组成,可分为授权状态和非授权状态、易受攻击状态和不易受攻击状态,漏洞就是状态转变过程中能导致系统受损的易受攻击状态的特征。以上两种观点,都是从各自的专业角度对网络漏洞进行描述,并没有给出一个全面的准确的定义。一个较为通俗的网络漏洞的描述性定义是:存在于计算机网络系统中的、可能对系统中的组成和数据造成损害的一切因素。
2 网络漏洞的类型
网络漏洞的种类数不胜数,人们多根据其产生的原因、存在的位置和利用漏洞攻击的原理来进行分类。分类情况可见表1:
网络中有许多的漏洞都是由于设计人员和程序员的疏忽或失误及对网络环境的不熟悉造成的。进行网络开发时,许多设计开发者并不重视网络的安全情况,也不完全了解程序的内部工作机理,致使程序不能适应所有的网络环境,造成网络功能与安全策略发生冲突,最终导致漏洞的产生。另有一部分漏洞则是网络用户刻意为之的。网络管理员为了更好地监管和控制网络,往往预留秘密通道,以保证对网络的绝对控制。而部分网络用户或黑客也许会出于好奇而在网络中秘密种下木马、逻辑炸弹或是陷门。
网络中的漏洞可以存在于硬件和软件中,但更多还是以软件漏洞的形式存在。无论是网络应用软件,还是单机应用软件,都广泛隐藏有漏洞。网络中的聊天软件如QQ,文件传输软件如FlashFXP、CuteFTP,浏览器软件如IE,单机中的办公软件如MS Word,这些应用软件中都存在着可导致泄密和招致网络攻击的漏洞。在各种操作系统中也同样存在着大量漏洞,如:Windows系统中存在RPC远程任意代码执行漏洞等,RedHat中存在可通过远程溢出获得root权限的漏洞等,各种版本的Unix系统中同样存在着大量可导致缓冲器溢出的漏洞等。在Internet中提供服务的各种服务器中,漏洞存在的情况和招致的危害更是严重。无论是Web服务器、FTP服务器、邮件服务器,还是数据库服务器和流媒体服务器都存在着可导致网络攻击的安全漏洞。脚本语言的设计缺陷和使用不规范,更是令因特网的安全状况雪上加霜。
3 网络漏洞的解析
网络漏洞的广泛存为网络攻击提供了机会,但在一般情况下,普通的网络用户不易受到恶意攻击。相比而言,由于网络服务器在网络中的重要作用,而且其安装的软件和开放的端口更多,也就更容易招致网络攻击。但无论对于接受服务的个人用户还是提供服务的服务器用户,都不能对网络中的漏洞掉以轻心,必须充分认识网络漏洞的危害,并对利用漏洞发动网络攻击的原理有一定的了解。下面将从网络攻击原理来对网络漏洞进行更深入的分析。
3.1拒绝服务攻击原理
拒绝服务攻击(DoS:Denail of Service)是一种针对TCP/IP协议漏洞的一种网络攻击手段,其原理是利用DoS工具向目标主机发送海量的数据包,消耗网络的带宽和目标主机的资源,造成目标主机网段阻塞,致使网络或系统负荷过载而停止向用户提供服务。常见的拒绝服务攻击方法有SYN Flood攻击、Smurf、UDP洪水、Land攻击、死亡之Ping、电子邮件炸弹等。目前影响最大、危害最深的是分布式DoS攻击。它利用多台已被攻击者控制的计算机对某一台计算机进行攻击,很容易导致被攻击主机系统瘫痪。对DoS攻击的防护措施主要是设置防火墙,关闭外部路由器和防火墙的广播地址,利用防火墙过滤掉UDP应答消息和丢弃ICMP包,尽量关闭不必要的TCP/IP服务。
3.2缓冲区溢出攻击原理
简单地说,缓冲区溢出的原因是向一个有限的缓冲区复制了超长的字符串,结果覆盖了相邻的存储单元。这种覆盖往往会导致程序运行的失败,甚至是死机或是系统的重启。另外,黑客利用这样的漏洞可以执行任意的指令,掌握系统的操作权。缓冲区溢出漏洞广泛存在于应用软件和操作系统中,其危害是非常巨大的,但一直以来并没有引起系统和软件开发者足够的重视。要防止缓冲区溢出攻击,首要的是堵住漏洞的源头,在程序设计和测试时对程序进行缓冲区边界检查和溢出检测。而对于网络管理员,必须做到及时发现漏洞,并对系统进行补丁修补。有条件的话,还应对系统进行定期的升级。
3.3欺骗类攻击的原理
欺骗类攻击主要是利用TCP/IP协议自身的缺陷发动攻击。在网络中,如果使用伪装的身份和地址与被攻击的主机进行通信,向其发送假报文,往往会导致主机出现错误操作,甚至对攻击主机做出信任判断。这时,攻击者可冒充被信任的主机进入系统,并有机会预留后门供以后使用。根据假冒方式的不同,这种攻击可分为:IP欺骗、DNS欺骗、电子邮件欺骗、原路由欺骗等。下面以IP欺骗攻击为例分析欺骗攻击的过程。在这种攻击中,发动攻击的计算机使用一个伪装的IP地址向目标计算机主机发送网络请求;当主机收到请求后,会使用系统资源提供网络连接服务,并回复确认信息;但由于IP地址是假的,主机不可能得到回应,这种情况下,主机将会继续重复发送确认信息。尽管操作系统规定了回复的次数和超时的时间,但完成多次回复仍要占用主机资源较长时间,严重降低主机的工作效率。例如WindowsNT系统在缺省回复次数下,从建立连接到资源的释放大约用时190秒。对于解决欺骗类攻击的方法,最好是充分了解主机的系统状况,只启用必用的应用程序和只开放提供服务所用到的端口。
3.4程序错误攻击原理
在网络的主机中存在着许多服务程序错误和网络协议错误。换句话说就是,服务程序和网络协议无法处理所有的网络通信中所面临的问题。人们利用这些错误,故意向主机发送一些错误的数据包。对于主机来说,往往不能正确处理这些数据包,这会导致主机的CPU资源全部被占用或是死机。服务程序存在错误的情况很多,多种操作系统的服务程序都存在。例如WinNT系统中的RPC服务就存在着多种漏洞,其中危害最大的要数RPC接口远程任意代码可执行漏洞,非常流行的冲击波病毒就是利用这个漏洞编制的。对付这类漏洞的方法是尽快安装漏洞的补丁程序,在没有找到补丁之前,应先安装防火墙,视情况切断主机应用层服务,即禁止从主机的所有端口发出和接收数据包。
3.5后门攻击原理
通常网络攻击者在获得一台主机的控制权后,会在主机上建立后门,以便下一次入侵时使用。后门的种类很多,有登陆后门、服务后门、库后门、口令破解后门等。这些后门多数存在于Unix系统中。目前,建立后门常用的方法是在主机中安装木马程序。攻击者利用欺骗的手段,通过向主机发送电子邮件或是文件,并诱使主机的操作员打开或运行藏有木马程序的邮件或文件;或者是攻击者获得控制权后,自己安装木马程序。对付后门攻击的方法是经常检测系统的程序运行情况,及时发现在运行中的不明程序,并用木马专杀工具进行查杀木马。
前面对利用网络漏洞进行攻击的基本原理作了简单的介绍。但网络攻击的方法千变万化,尽管可以对网络攻击从原理上进行分类,但在网络攻击的具体实例中,有时又很难简单地将其归于某一类的攻击。例如,利用ping命令向一台主机发送超过65535的Echo Request数据包,目标主机就会因缓冲区溢出而拒绝继续提供服务,既可以将这种攻击看作是拒绝服务攻击,也可以视为缓冲区溢出攻击。正是由于网络漏洞种类繁多,攻击方法也多种多样,很难对网络攻击的具体实例进行一一分析,所以下面将以DoS攻击为例,对网络攻击的步骤和方法作进一步的介绍。
4 漏洞解析与防护的具体实例
Dos攻击是网络攻击中常见的,也是危害比较大的一种,其攻击的手法多样。在拒绝服务攻击中,利用Windows操作系统中的RPC服务漏洞进行攻击是一种常见的拒绝服务攻击。漏洞存在于Windows系统的DCE-RPC堆栈中,远程攻击者可以连接TCP135端口,向其发送畸形数据,可导致RPC服务的关闭,进而引起系统停止对新的RPC请求进行响应,产生拒绝服务。由于系统的许多服务都依赖于RPC服务,这就使得系统变得极不稳定,许多正常的操作无法进行,甚至造成系统的频繁重新启动。
实现这种攻击的方法较为容易,也不需要太多的专业知识,但造成的危害却不小。一般情况下,攻击者会利用stan、nMap、X-scan等工具扫描网络中的计算机,获得被攻击主机的IP地址和相关端口信息,有的攻击者甚至不利用扫描工具,直接猜测一个IP地址发动攻击。获得相应信息后,攻击者会利用dcom.exe程序进行攻击。在DOS状态下,输入dcom.exe IP地址,然后确认。这时攻击主机没有任何提示,但被攻击主机如果存在这一漏洞,将出现一个系统对话框提示svchost.exe程序错误,继而出现关机对话框,关机消息为Remote Procedure Cal(RPC)服务意外终止,60秒后系统重新启动。这样对方主机只要利用RPC服务,系统就会重新启动,也就无法使用网络资源。
若遭受RPC服务DoS攻击,应首先断开网络并采用手工的防范措施。依次打开计算机“控制面板”—“管理工具”—“计算机管理”图标,展开管理界面左侧的“服务和应用程序”项中的“服务”选项,从界面右侧找到Remote Procedure Call(RPC)服务,单击鼠标右键,选择“属性”,打开属性面板,选择其中的“恢复”标签,将失败后计算机反应选项全部改为“不操作”,如图1所示。虽然经过手工设置之后,计算机不再重新启动,但主机的一些正常功能也被破坏,因此还需要给系统打上微软提供的安全补丁才行。
图1
通过对RPC服务DoS攻击的分析,可大体了解网络攻击的步骤。事实上,尽管网络攻击的方法和原理各不相同,但其发动攻击的步骤是基本一致的,通常都是采用以下4个步骤:
1) 确定攻击目标的位置;
2) 利用公开协议和工具通过端口扫描、网络监听收集目标的系统类型、提供的服务等信息;
3) 利用自编入侵程序或公开的工具扫描分析系统的安全漏洞;
4) 针对发现的网络漏洞展开攻击。
5 网络漏洞的一般防护
通过对网络漏洞攻击原理和攻击步骤的分析,可以知道:要防止或减少网络漏洞的攻击,最好的方法是尽力避免主机端口被扫描和监听,先于攻击者发现网络漏洞,并采取有效措施。提高网络系统安全的方法主要有:
1) 在安装操作系统和应用软件之后及时安装补丁程序,并密切关注国内外著名的安全站点,及时获得最新的网络漏洞信息。在使用网络系统时,要设置和保管好账号、密码和系统中的日志文件,并尽可能的做好备份工作。
2) 及时安装防火墙,建立安全屏障。防火墙可以尽可能屏蔽内部网络的信息和结构,降低来自外部网络的攻击。对个人用户而言,现在的个人防火墙还有探测扫描、攻击,并自动防御和追踪的功能。例如金山毒霸和瑞星防火墙就具有扫描网络漏洞的功能,而蓝盾防火墙则设计了自动反扫描的机制,外部的扫描将找不到任何端口。
3) 利用系统工具和专用工具防止端口扫描。要利用网络漏洞攻击,必须通过主机开放的端口。因此,黑客常利用Satan、Netbrute、SuperScan等工具进行端口扫描。防止端口扫描的方法:一是在系统中将特定的端口关闭,如利用Win系统中的TCP/IP属性设置功能,在“高级TCP/IP设置”的“选项”面板中,关闭TCP/IP协议使用的端口;二是利用PortMapping等专用软件,对端口进行限制或是转向。
4) 通过加密、网络分段、划分虚拟局域网等技术防止网络监听。
5) 利用密罐技术,使网络攻击的目标转移到预设的虚假对象,从而保护系统的安全。
5 小结
随着计算机和网络技术在各个领域的迅速普及与广泛应用,网络漏洞的种类越来越层出不穷。文中对网络漏洞的描述难以完全概括网络中存在的漏洞,对网络漏洞的分析也有不完善和不准确之处。另外,文中介绍的防止网络攻击的方法尽管简单,但在实践中还是很有用处的,希望对大家有所帮助。
欢迎访问最专业的网吧论坛,无盘论坛,网吧经营,网咖管理,网吧专业论坛https://bbs.txwb.com |
关注天下网吧微信,了解网吧网咖经营管理,安装维护:
本文来源:不详 作者:佚名