摘要:介绍了防火墙技术的功能,分析了网络攻击的一般过程,设计了绕过防火墙的网络攻击并模拟其实现过程。 中国论文网 http://www.xzbu.com/9/view-935138.htm 关键词:防火墙 网络攻击 模拟 随着计算机网络技术的突飞猛进,网络安全的问题已经日益突出地摆在各类用户的面前。仅从笔者掌握的资料表明,目前在互联网上大约有将近20%以上的用户曾经遭受过黑客的困扰。网络安全问题已经引起各级用户高度重视。防火墙是目前广泛使用的用于解决内网安全的技术。 一、防火墙及相关技术 1.防火墙的概念 防火墙,是一类防范措施的总称,是一种非常有效的安全模型,其核心思想是在不安全的网络环境中构造一个相对安全的内部环境。在网络上,它是指一种将要保护的内部网络和公众访问网络分开的方法,是内部网络和外部网络之间的第一道屏障。防火墙所作用的是流进或流出网络的数据包,它能允许经过你同意的数据包进入你的网络,同时将你不同意的数据包拒之门外。换句话说,如果不通过防火墙,内部网络中的人就无法访问外部网络,外部网络上的人也无法和内部网络中的人进行通信。 防火墙既可以是一台路由器、一台个人电脑或是一台主机,也可以是多台主机构成的体系。它们被配置为专门保护一个私有的网络,使之免受外部网络的攻击。 2.防火墙的功能 (1)防火墙是网络安全的屏障:一个防火墙(作为阻塞点、控制点)能极大地提高一个内部网络的安全性,并通过过滤不安全的服务而降低风险。由于只有经过精心选择的应用协议才能通过防火墙,所以网络环境变得更安全。如防火墙可以禁止诸如众所周知的不安全的NFS协议进出受保护网络,这样外部的攻击者就不可能利用这些脆弱的协议来攻击内部网络。防火墙同时可以保护网络免受基于路由的攻击,如IP选项中的源路由攻击和ICMP重定向中的重定向路径。防火墙应该可以拒绝所有以上类型攻击的报文并通知防火墙管理员。 (2)防火墙可以强化网络安全策略:通过以防火墙为中心的安全方案配置,能将所有安全软件(如口令、加密、身份认证、审计等)配置在防火墙上。与将网络安全问题分散到各个主机上相比,防火墙的集中安全管理更经济。例如在网络访问时,一次一密口令系统和其它的身份认证系统完全可以不必分散在各个主机上,而集中在防火墙一身上。 (3)对网络存取和访问进行监控审计:如果所有的访问都经过防火墙,那么,防火墙就能记录下这些访问并作出日志记录,同时也能提供网络使用情况的统计数据。当发生可疑动作时,防火墙能进行适当的报警,并提供网络是否受到监测和攻击的详细信息。另外,收集一个网络的使用和误用情况也是非常重要的。首先的理由是可以清楚防火墙是否能够抵挡攻击者的探测和攻击,并且清楚防火墙的控制是否充足。而网络使用统计对网络需求分析和威胁分析等而言也是非常重要的。 (4)防止内部信息的外泄:通过利用防火墙对内部网络的划分,可实现内部网重点网段的隔离,从而限制了局部重点或敏感网络安全问题对全局网络造成的影响。再者,隐私是内部网络非常关心的问题,一个内部网络中不引人注意的细节可能包含了有关安全的线索而引起外部攻击者的兴趣,甚至因此而暴露了内部网络的某些安全漏洞。使用防火墙就可以隐蔽那些透露内部细节如Finger,DNS等服务。Finger显示了主机的所有用户的注册名、真名,最后登录时间和使用shell类型等。但是Finger显示的信息非常容易被攻击者所获悉。攻击者可以知道一个系统使用的频繁程度,这个系统是否有用户正在连线上网,这个系统是否在被攻击时引起注意等等。防火墙可以同样阻塞有关内部网络中的DNS信息,这样一台主机的域名和IP地址就不会被外界所了解。 二、网络攻击的一般过程 网络攻击的目标各有不同,有的为了获取机密数据,有的为了谋取经济利益,也有的纯属好奇,但不管网络入侵者的攻击是为了什么,他们采取的攻击手段和步骤却具有一定的共性。一般我们做某件事情都会有事前准备、事件进行、事后善后这三个必要过程,攻击也一样,有攻击的准备阶段,攻击的实施阶段,攻击的善后阶段,不管在哪一个阶段出现问题,攻击就可能失败。所以网络管理员只要识破了攻击的任何一个阶段,就可以制止入侵者的攻击。 1.攻击的准备阶段 要发动一个攻击,首先攻击者必须要对被攻击者有足够的认识。这个过程一般不易被察觉,所以网络管理者对于这个阶段一般只有事先预防,比如针对入侵者感兴趣的信息要做好保密工作,或者使用一些混淆信息来迷惑入侵者。防患于未然,这是网络管理者必须要具备的素质。 (1)确定攻击的目标 攻击者在进行一次完整的攻击之前首先要确定攻击要达到什么样的目的,即给对方造成什么样的后果。常见的攻击目的有破坏型和入侵型两种。破坏型攻击指的只是破坏攻击目标,使其不能正常工作,而不能随意控制目标系统的运行。要达到破坏型攻击的目的,主要手段是拒绝服务攻击。另一类常见的攻击目的是入侵攻击目标,这种攻击是要获得一定的权限来达到控制攻击目标的目的。应该说这种攻击比破坏型攻击更为普遍,威胁性也更大。因为黑客一旦获取攻击目标的管理员权限就可以对此服务器做任意动作,包括破坏性的攻击。此类攻击一般也是利用服务器操作系统、应用软件或者网络协议存在的漏洞进行的。当然还有另一种造成此种攻击的原因就是密码泄露,攻击者靠猜测或者穷举法来得到服务器用户的密码,然后就可以和真正的管理员一样对服务器进行访问。 (2)信息收集 除了确定攻击目的之外,攻击前最主要工作就是收集尽量多的关于攻击目标的信息。这些信息主要包括目标的操作系统类型及版本,目标提供哪些服务,各服务器程序的类型与版本以及相关的信息。要攻击一台机器,首先要确定它上面正在运行的操作系统是什么,因为对于不同类型的操作系统,其上的系统漏洞有很大区别,所以攻击的方法也完全不同,甚至同一种操作系统的不同版本的系统漏洞也是不一样的。其次还要获知目标提供哪些服务及各服务的类型,版本同样非常重要,因为已知的漏洞一般都是对某一服务的。另外需要获得的关于系统的信息就是一些与计算机本身没有关系的社会信息,例如网站所属公司的名称、规模,网络管理员的生活习惯、电话号码等。这些信息看起来与攻击一个网站没有关系,实际上在入侵者看来这就是非常有用的宝贵信息。 2.攻击的实施阶段 这是攻击的关键性阶段,如果网络管理者能够在这个阶段识破入侵者,那么就能阻止入侵者对你的破坏。但这是有很高的难度的,你首先得要发现它,其次你还要有能力制止它,往往有的管理者明明知道入侵者的行为,但是却不能有很好的方法制止。再次,你还必须确保入侵者不可以进行下次攻击。而攻击的实施阶段关键是一个权限的问题。 (1)获得权限 当收集到足够的信息之后,攻击者就要开始实施攻击行动了。如果是破坏性攻击,那么只需利用工具发动攻击就可以。而作为入侵性攻击,往往要利用收集到的信息,找到其系统漏洞,然后利用该漏洞获取一定的权限。能够被攻击者所利用的漏洞不仅包括系统软件设计上的安全漏洞,也包括由于管理配置不当而造成的漏洞。因此作为一个网络管理员,都需要掌握尽量多的系统漏洞,然后根据不同的漏洞来进行不同的防御措施。 (2)权限扩大 系统漏洞分为远程漏洞和本地漏洞两种,远程漏洞是指入侵者可以在别的机器上直接利用该漏洞进行攻击并获取一定的权限。攻击一般都是从远程漏洞开始的。但是利用远程漏洞获取的不一定是最高权限,而往往只是一个普通用户的权限,这时就需要配合本地漏洞来把获得的权限进行扩大。要完成权限的扩大,可以利用已获得的权限在系统上执行利用本地漏洞的程序,还可以放一些木马之类的欺骗程序来套取管理员密码。 3.攻击的善后工作 (1)隐藏踪迹 因为所有的网络操作系统一般都提供日志记录功能,会把系统上发生的动作记录下来。所以,为了自身的隐蔽性,入侵者一般都会抹掉自己在日志中留下的痕迹。只修改日志是不够的,因为百密必有一漏,即使自认为修改了所有的日志,仍然会留下一些蛛丝马迹的。例如安装了某些后门程序,运行后也可能被管理员发现。所以有必要通过替换一些系统程序的方法来进一步隐藏踪迹。这种用来替换正常系统程序的程序有rootkit,它可以替换系统的ls、ps、netstat、inetd等等一系列重要的系统程序,当替换了ls后,就可以隐藏指定的文件,使得管理员在使用ls命令时无法看到这些文件,从而达到隐藏自己的目的。 (2)后门 一般入侵者都会在攻入系统后不止一次地进入该系统。为了下次再进入系统时方便一点,黑客会留下一个后门,特洛伊木马就是后门的最好范例。常见的后门程序有密码破解后门,Login后门,服务后门,Telnet后门等。
|