ImageVerifierCode 换一换
格式:DOCX , 页数:13 ,大小:24.22KB ,
资源ID:4801764      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-4801764.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(网络攻击和防火墙详解.docx)为本站会员(b****3)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

网络攻击和防火墙详解.docx

1、网络攻击和防火墙详解网络攻击和防火墙详解题记接到这个稿约后,笔者感到战战兢兢,因为笔者很清楚,计算机安全就像一个快速进化的野兽,新的威胁不断出现,老的威胁变得过时(但看起来永远不会“死亡”)。而入侵者的手段比较隐秘,不大为外人所知晓,特别是穿越防火墙实施网络犯罪的活动。限于笔者的水平和经验所限,实在难以完美展现入侵真相的全部,因为企业的实际网络环境远比实验环境要复杂,而且防火墙的种类多种多样,既有硬件的,也有软件的,断然不是一篇短短的文章所能包容,但万法归宗,它们的原理是一样的。笔者斗胆写下这篇文章,只希望能起到抛砖引玉的作用,那笔者的目的也就达到了。前言信息和网络安全技术历经十多年的发展,无

2、论在广度,还是在深度上,都有了很大的进步,其中一个重要的研究趋势就是注重攻防结合,追求最大化的动态安全。网络的攻与防,即为矛与盾。然而,与此相关的信息安全方面的文章大多数却是从盾来入手的,也就是说从防御的角度来论述。作为网管员来说,他要学习信息安全知识的话,不仅需要了解防护方面的技术,也需要了解检测和相应环节的技术(就是矛)。无数实践表明,最大的不安全,恰恰就是自以为安全!因为,信息安全具有很强的对抗性,威胁时刻存在,各种各样的安全问题常会掩盖在表面的平静之下。有太多的古训,诸如“隐患险于明火”、“知己知彼,百战不殆”对于今天的网络信息安全防御依然有借鉴意义。对于实施攻击的黑客手法的洞悉,对于

3、自身脆弱性的意识,都是自身安全的前提。为帮助广大网管员了解网络攻击和防火墙的方方面面,本文作者将从攻防兼备的角度,尽可能将纷繁复杂、是似而非的攻防思路整理清晰,以飨广大网管员。防火墙的基础知识防火墙是由楔和门两类功能部件构成,典型的防火墙包括一外一内两个楔和夹在中间的一个门。楔通常由路由器承担,而门通常由相当简化了操作系统的主机承担。换言之,楔强制内部网络和外部网络之间的通信通过门进行,门则执行安全措施并代理网络服务;门与内外楔之间分别链接一个独立的子网,其中,外楔和门之间的子 网可以有一个非军事区,这块可部署对外的网络服务如www、ftp、dns等等。内外楔应阻塞不希望船员防火墙的所有网络服

4、务的分组,目前有两类主导性的防火墙:应用代理和分组过滤网关,这同防火墙概念中的门和楔功能部件相对应,但实际上,完善的防火墙需要这两个部件的有机结合,而不是孤立的发挥作用。防火墙一般有两个以上的网卡,一个连到外部(router),另一个是连到内部网络。当打开主机网络转发功能时,两个网卡间的网络通讯能直接通过。当有防火墙时,他好比插在网卡之间,对所有的网络通讯进行控制,示意图如下: -路由器-网卡防火墙网卡-内部网络 防火墙主要通过一个访问控制表来判断的,它的形式一般是一连串的如下规则:1 accept from+ 源地址,端口 to+ 目的地址,端口+ 采取的动作2 deny .(deny是拒绝

5、)3 nat .(nat是地址转换)防火墙在网络层(包括以下的链路层)接收到网络数据包后,就从上面的规则连表一条一条地匹配,如果符合就执行预先安排的动作,如丢弃包等。矛与盾的较量几千年前的孙子兵法就写道:不知彼而知己,一胜一负;不知彼,不知己,每战必殆。我们作为网络管理员,要做到能够检测并预防相应的攻击,就必须了解入侵者的手段,这样,我们才能有针对性的防范。我们知道,盗窃者在开始犯罪之前,必须完成三个基本的步骤:踩点、查点、行动。比如,有一个盗窃团伙决定抢银行的时候,他们会事先花大量时间去收集这家银行的信息,如武装押运车的路线和押送时间,摄像头的位置和范围,出纳员人数,逃跑路线一起其他任何有助

6、于避免发生意外情况的信息。对于网络入侵者而言,也是一样的。他要入侵某个网络,事先也必须收集大量的信息关于该机构的网络安全情况的各个方面的信息,如果不进行踩点就贸然攻击,这个行为简直就是愚蠢的,就好比径直走进银行开始要钱。只要想查,任何人都可以获取有关你的网络安全情况其可用信息数量之多往往会超出你的想像!入侵防火墙的第一步就是查找和判断防火墙。然后就是进行攻击防火墙。踩点之直接扫描查找防火墙矛有些防火墙会在简单的端口扫描下原形毕露防火墙有特定端口在监听你只需要知道哪些端口应该去扫描,比如,CheckPoint的Firewall- 1防火墙在256、257、258号的TCP端口监听,Microso

7、ft Proxy Server 2.0防火墙在1080、1745号TCP端口监听只要知道每个防火墙监听的缺省端口,就可以用端口扫描软件来对特定缺省端口进行扫描来查找防火墙, 如使用nmapS1 程序来扫描:nmap -n -vv -P0 -p256,1080,1745 10.152.1.1-60.254因为大多数防火墙不会对ICMP应答,所以上述命令加上了-P0选项来禁止ICMP ping。其他端口扫描软件要视其说明文件来设置禁止ICMP ping。不过,如果该机构部署了入侵检测系统(IDS)的话,用这种方式对目标网络执行大范围的扫描,显然有些愚蠢和鲁莽,所以,水平比较高的入侵者不会这样明目张

8、 胆的踩点,他们可能使用多种技巧以避免对方的注意,如对Ping探测分组、目标端口、目标地址和源端口进行随机顺序扫描,执行欺骗性源主机执行分布式源扫 描等等。盾要彻底防止入侵者对你的网络发起端口扫描这样的探测,很难。但可以通过将防火墙监听着的端口数缩减到正常运行必需的范围,这要查阅相应的用户手册,也就是在防火墙前面的路由器上阻塞这些端口,若这些路由器是ISP管理的话,就得同ISP联系以阻塞这些端口;如果路由器是自己管理的话,以Cisco路由器为例,可以使用ACL规则显式地阻塞刚才提到的端口:access-list 101 deny tcp any any eq 256 log ! Block F

9、irewall-1 scansaccess-list 101 deny tcp any any eq 257 log ! Block Firewall-1 scansaccess-list 101 deny tcp any any eq 258 log ! Block Firewall-1 scansaccess-list 101 deny tcp any any eq 1080 log ! Block Socks scansaccess-list 101 deny tcp any any eq 1745 log ! Block Winsock scans请参考所使用的路由器的文档,以达到阻塞

10、针对这些特定端口的扫描。踩点之路径追踪查找防火墙矛上面已经说过,对目标网络执行大范围的扫描是愚蠢和鲁莽的做法,高明的入侵者经常会采用Traceroute路径追踪。我们知道,在网络中,信息的传送是通过网中许多段的传输介质和设备(路由器,交换机,服务器,网关等等)从一端到达另一端。每一个连接在Internet上的设备,如主机、路由器、接入服务器等一般情况下都会有一个独立的IP地址。通过Traceroute我们可以知道信息从你的计算机到互联网另一端的主机 是走的什么路径。当然每次数据包由某一同样的出发点到达某一同样的目的地走的路径可能会不一样,但基本上来说大部分时候所走的路由是相同的。 Tracer

11、oute通过发送小的数据包到目的设备直到其返回,来测量其需要多长时间。一条路径上的每个设备Traceroute要测3次。输出结果中包括每次测试的时间(ms)和设备的名称(如有的话)及其IP地址。Traceroute在UNIX/Linux中为traceroute,而在Windows则为tracert。例如在Linux中:lzyLiuzhiyong:$ sudo traceroute -I traceroute to (10.1.28.4), 30 hops max, 40 byte packets1 10.152.16.3 (10.152.16.3) 0.345 ms 0.338 ms *2 1

12、0.152.1.1 (10.152.1.1) 5.801 ms 5.668 ms 5.106 ms12 (10.0.202.1 ) 42.439 ms * *13 10.1.28.4 (10.1.28.4) 106.813 ms * *我们从中可以推测,达到前最后一跳(10.0.202.1)是防火墙的可能性非常大。但事实是否如此,还需要进一步判断。如果本地计算机到目标服务器之间的路由器对TTL已过期分组做出响应,那么刚才的例子是没有问题的,但如果路由器和防火墙设置成不返回ICMP TTL已过期分组,那么,做出上述的结论就不够科学,这时能做的就是运行traceroute,查看最后响应的是哪一跳,

13、由此推断是否真正的防火墙,或者至少是路径上开始阻塞路径追踪分组的第一个路由器。例如:1 10.152.16.3 (10.152.16.3) 0.345 ms 0.338 ms *2 10.152.1.1 (10.152.1.1) 5.801 ms 5.668 ms 5.106 ms17 (10.50.2.1) 205.006 ms 391.682 ms18 (10.50.2.5) 226.669 ms 366.211 ms19 client- (10.50.3.250) 266.223 ms !X * *在上述例子中,我们可以看出,ICMP探测分组被阻塞到达目的地之前,client-之后没有响

14、应,就可以知道结论。盾知道了路径追踪是怎么回事后,自然就知道这个盾如何打造:限制尽可能多的防火墙和路由器对TTL已过期分组做出响应,但是,通常有一些路由器是由你的ISP 控制,你需要跟他们联系。将边界路由器配置成接受到TTL值为0或1的分组时,不响应以TTL EXPIRED的ICMP消息。当然,也可以在边界路由器上阻塞所有不必要的UDP分组。例如,在Cisco路由器上可以应用如下ACL规策:access-list 101 deny icmp any any 11 0 ! ttl-exceeded查点之攫取旗标查找防火墙矛旗标就是显示应用程序名和版本号,用来宣告自身的存在,防火墙也与此类似。攫取

15、旗标的思路很有用,因为大多数防火墙并不像CheckPoint那样在缺省的端口监听,这时,攫取旗标就可以检测出防火墙。这里有一个例子:C:Documents and SettingsAdministratorncS2 -v -n 10.152.4.12 21(UNKNOWN) 10.152.4.12 21 (?) open220 Secure Gateway FTP server ready.看到什么了?嗯,再链接到23号端口看看:C:Documents and SettingsAdministratornc -v -n 10.152.4.12 23(UNKNOWN) 10.152.4.12 2

16、1 (?) openEagle Secure Gateway.Hostname:还不太肯定这是防火墙吗?那我们继续链接到25号端口看看:C:Documents and SettingsAdministratornc -v -n 10.152.4.12 25(UNKNOWN) 10.152.4.12 21 (?) open421 Sorry, the firewall does not provide mail service ti you.至此,获取的信息还不够多吗?由此可见,攫取旗标可以查找出代理性质的防火墙,很多流行的防火墙只要被连接就会声明自己的存在,甚至包括自己的类型和版本,这恰恰对入

17、侵者提供了有价值的信息,依靠这些信息,入侵者就可以找到网上已公开的薄弱点或者常见的错误配置从而达到入侵目的。盾 要防住这个“矛”,就是经常变更防火墙的旗标配置文件,但具体的修改方法要取决于所使用的防火墙产品,需要查阅产品说明书或者直接与厂家联系。通常旗标最好被修改为包含警告信息,而不是宣告程序名和版本号等信息。 如果上述几支矛都不够锋利,无法穿透盾的话,入侵者就会使用更为锋利的矛。查点之利用nmap判断防火墙矛限于笔者的水平及篇幅所限,这里只能简略的讲述,以使网管员有个简单的认识。nmap是发现防火墙信息的好工具,用nmap扫描时,能看出哪些端口打开着,哪些端口关闭着,还有哪些端口被阻塞着。盾

18、因为nmap是将接受到的ICMP分组的有效负载与早先发送的阿嚏内测分组的内容相比较,然后确定这些信息是否关联,所以,要防住这个矛的盾,应该就是禁止防火墙前面的路由器响应以类型为3、代码为13的ICMP分组(详见RFC 1812,刚才提到的这个分组是ICMP Admin Prohibited Filter分组,通常是从某个分组过滤路由器发出的),在Cisco路由器可以这样做来达到阻止他们对IP不可抵达消息做出回应:no ip unreachables另外,这个盾也可以防范hpingS3 攻击的矛。hping是Salvatore Sanfilippo编写的工具,通过向一个目的端口发送TCP分组,并

19、报告由它引回的分组进行工作。hping可以发现打开着的,被阻塞着的、被丢弃的或者被拒绝的分组,而这些分组,能部分或全部的提供了防火墙具体访问控制的情况。攻击之IP欺骗攻击包过滤防火墙矛这种矛,说穿了就是修改数据包的源、目的地址和端口,模仿一些合法的数据包来骗过防火墙的检测。如:外部入侵者将他的数据报源地址改为内部网络地址,让防火墙看到的是合法地址,从而放行。盾包过滤防火墙是防火墙中最简单的一种,如果防火墙能结合接口,地址来匹配,这种矛就失去了它的锋芒。攻击之木马攻击绕过包过滤防火墙矛如果入侵者预先攻破了防火墙后面的某个系统,或者欺骗了某个后端系统上的用户执行一个特洛伊木马程序,这样,入侵者就很

20、有效的绕过所设置的防火墙规则了。原因是,包过滤防火墙一般只过滤低端口(1-1024),而高端口他不可能过滤的(因为,一些服务要用到高端口,因此防火墙不能关闭高端口的),所以很多的木马都在高端口打开等待。盾加强客户端用户的安全意识,这是老生常谈。对于防火墙而言,应按照自己的配置需求,禁止许多缺省允许的分组类型,小心应对这个防范措施,因为有可能禁止有权穿行的分组通过防火墙,具体做法应根据所使用的防火墙产品的说明书去实施。攻击之ICMP、UDP隧道绕过防火墙矛这种矛的攻击思想与VPN的实现原理相似,入侵者将一些恶意的攻击数据包隐藏在一些协议分组的头部,从而穿透防火墙系统对内部网络进行攻击。这种矛,依

21、赖于防火墙后面已有一个受害的系统。例如,许多简单地允许ICMP回射请求、ICMP回射应答和UDP分组通过的防火墙就容易受到ICMP和UDP协议隧道 的攻击。Jeremy Rauch和Mike Shiffman编写的loki和lokidS4 (攻击的客户端和服务端)是实施这种攻击的有效的工具。在实际行动中,入侵者首先必须设法在允许ICMP回射请求和回射应答分组穿行的防火墙后面的某一个系统上运行上lokid服务端,而入侵者就通过loki 客户端将希望远程执行的攻击命令(对应IP分组)嵌入在ICMP或UDP包头部,再发送给内部网络服务端lokid,由它执行其中的命令,并以同样的方式 返回结果。由于许

22、多防火墙允许ICMP和UDP分组自由出入,因此攻击者的恶意数据就能附带在正常的分组,绕过防火墙的认证,顺利地到达攻击目标主机下面 的命令是用于启动lokid服务器程序:lokid-p CI Cvlloki客户程序则如下启动:loki Cd 172.29.11.191(攻击目标主机)-p CI Cv1 Ct3这样,lokid和loki就联合提供了一个穿透防火墙系统访问目标系统的一个后门。盾要防止利用ICMP和UDP隧道的木马绕过防火墙,可以是完全禁止通过防火墙的ICMP访问,也可以是对ICMP分组提供小粒度的访问控制,对于 Cisco路由器而言,要禁止穿行不是来往于172.29.10.0子网(D

23、MZ区域)的所有ICMP分组,你可以创建以下ACL规则:access-list 101 permit icmp any 172.29.10.0 0.2255.255.255 8!echoaccess-list 101 permit icmp any 172.29.10.0 0.2255.255.255 0!echo-replyaccess-list 102 deny ip any any log ! deny and log all else攻击之反弹式木马矛现在防火墙的包过滤采用的是状态检测技术,一句话,状态检测就是从tcp连接的建立到终止都跟踪检测的技术。状态检测必须提到动态规则技术。在状

24、态检测里,采用动态规则技术,原先高端口的问题就可以解决了。实现原理是:平时防火墙可以过滤内部网络的所有端口(1-65535),入侵者难于发现切入点,可是为了不影响正常的服务,防火墙一但检测到服务必须开放高端口时,就在内存动态地添加一条规则打开相关的高端口。等服务完成后,这条规则就又被防火墙删除。这样,既保障了安全,又不影响正常服务,速度也快。反弹式木马是对付这种防火墙的最有效的方法。入侵者在防火墙后面的某个受害系统事先安装好反弹式木马,定时地连接外部攻击 者控制的主机,由于连接是从内部发起的,防火墙(任何的防火墙)都认为是一个合法的连接,从而实现了入侵。防火墙不能区分木马的连接和合法的连接这是

25、目前防火墙的盲区。盾据笔者所知,目前还没有相应的盾来抵住这支矛。所以保证防火墙后面的系统,不被非法的安装反弹式木马是至关重要的第一步,扼守住这一步,就不会让反弹式木马来传统防火墙被攻击了。结语实际上,要绕过配置得当的防火墙是非常困难的。但是,时下发现的薄弱点的根源在于,防火墙的错误配置和缺乏管理性监视,一旦入侵者通过踩点和查点寻找到并判断出目标网络的路由器和防火墙之间的通路以及防火墙的类型,那么带来的后果可能是毁灭性的。黑客入侵技术不会因为我们不去了解它而不复存在;黑客们也不会因为我们不去学习、不去掌握抗击技术和工具而放弃对手无寸铁的我们的攻击。我们作为网管员,切记不能像鸵鸟那样,我们要在知识

26、的获取上与黑客比速度,如果能先于攻击者之前了解这些知识,那么我们的安全就会更有保障。S1namp是一种网络探测和安全扫描器。它可以让系统管理员或好奇个人扫描大型网络决定那些机器开启并且提供哪些服务。nmap支持大量的扫描技术例如:UDP, TCP connect(), TCP SYN (half open), ftp proxy (bounce attack), Reverse-ident, ICMP (ping sweep), FIN, ACK sweep,Xmas Tree, SYN sweep, and Null scan.更多细节看扫描类型节。nmap同时提供了大量的高级特性,例如:通

27、过TCP/IP指纹进行远程操作系统检测, stealth scanning, dynamic delay and retransmission calculations, parallel scanning, detection of down hosts via parallel pings, decoy scanning, port filtering detection, fragmentation scanning, and flexible target and port specification.S2即netcat,它被誉为网络安全界的“瑞士军刀”,它是一个简单而有用的工具,透过

28、使用TCP或UDP协议的网络连接去读写数据。它被设计成一个稳定的后门工具,能够直接由其它程序和脚本轻松驱动。同时,它也是一个功能强大的网络调试和探测工具,能够建立你需要的几乎所有类型的网络连接,还有几个很有意思的内置功能。S3hping是一个基于命令行的TCP/IP工具,它在UNIX上得到很好的应用,不过它并非仅仅一个ICMP请求/响应工具,它还支持TCP, UDP, ICMP, RAW-IP 协议,以及一个路由模型HPING一直被用作安全工具,可以用来测试网络及主机的安全,它有以下功能:1:防火墙探测、2:高级端口扫描、3:网络测试;(可以用不同的协议,TOS,数据包碎片来实现此功能)、4:手工MTU发掘、5:高级路由(在任何协议下都可一实现)、6:指纹判断、7:细微UPTIME猜测HPING也可以被研究人员用来学习TCP/IP,在以下OS上它可以运行于LINUX,FREEBSD,NETBSD,OPENBSD,SOLARIS. 目前最新版本为HPING3。官方网站在www.hping.org。

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2