DOS攻击原理及Linux环境下的防御方案
- 格式:pdf
- 大小:226.82 KB
- 文档页数:4
DoS 攻击及解决方案引言概述:DoS(拒绝服务)攻击是一种网络安全威胁,旨在通过超载目标系统的资源,使其无法正常运行。
这种攻击可能导致服务中断、数据丢失和损坏,对个人用户和企业组织造成严重影响。
为了应对这一威胁,人们提出了各种解决方案。
本文将探讨DoS攻击的背景、类型、影响,以及一些常见的解决方案。
正文内容:1. DoS攻击的背景1.1 简介DoS攻击是一种恶意行为,通过向目标系统发送大量请求或占用其资源,使其无法正常工作。
攻击者可以利用这种漏洞,对个人用户、企业机构或政府组织造成损害。
1.2 攻击原理DoS攻击利用目标系统的弱点,例如网络带宽、处理能力或存储资源,通过发送大量请求或恶意数据包,使其超过承受能力,导致系统崩溃或服务中断。
1.3 攻击类型DoS攻击可以分为多种类型,包括分布式拒绝服务(DDoS)攻击、SYN洪水攻击、ICMP洪水攻击和HTTP洪水攻击等。
每种攻击类型都有其独特的特点和影响。
2. DoS攻击的影响2.1 服务中断DoS攻击会导致目标系统无法提供正常的服务,造成服务中断,影响用户体验和业务运营。
这可能导致用户流失、收入损失和声誉受损。
2.2 数据丢失和损坏DoS攻击可能导致数据包丢失或损坏,影响数据的完整性和可用性。
这对于企业组织来说尤为严重,可能导致财务损失、客户信息泄露和合规性问题。
2.3 安全漏洞暴露DoS攻击可能利用系统的弱点,暴露其他安全漏洞,例如缓冲区溢出、身份验证问题或不安全的配置。
这为其他更严重的攻击打开了后门。
3. 解决方案3.1 流量过滤流量过滤是一种常见的解决方案,可以通过配置网络设备或使用防火墙等工具,过滤掉恶意流量,减轻DoS攻击的影响。
3.2 负载均衡负载均衡是一种将流量分散到多个服务器的技术,可以提高系统的处理能力和容错性,减少DoS攻击的影响。
3.3 增加带宽和资源增加带宽和资源可以提高系统的承载能力,使其更难受到DoS攻击的影响。
这可以通过升级网络设备、增加服务器数量或使用云服务等方式实现。
DoS 攻击及解决方案简介:DoS(Denial of Service)攻击是一种恶意行为,旨在通过超出目标系统处理能力的请求或者资源耗尽,使目标系统无法正常提供服务。
本文将详细介绍DoS攻击的原理和常见类型,并提供一些解决方案以帮助组织和个人保护自己的网络安全。
1. DoS 攻击原理:DoS攻击利用了目标系统的弱点,通过发送大量的请求或者占用大量的系统资源,使目标系统无法正常处理合法用户的请求。
攻击者可以利用多种技术和手段来实施DoS攻击,包括但不限于以下几种方式:- 带宽洪泛攻击:攻击者通过向目标系统发送大量的数据包,占用目标系统的带宽资源,导致合法用户无法正常访问目标系统。
- SYN 攻击:攻击者发送大量伪造的TCP连接请求,占用目标系统的资源,使其无法处理合法的连接请求。
- UDP 泛洪攻击:攻击者向目标系统发送大量的UDP数据包,占用目标系统的处理能力,导致目标系统无法正常运行。
- ICMP 攻击:攻击者发送大量的ICMP回显请求(ping),占用目标系统的处理能力,导致目标系统无法响应合法的请求。
2. DoS 攻击的解决方案:为了应对DoS攻击,组织和个人可以采取一系列的防御措施和解决方案,以确保网络的安全和正常运行。
以下是一些常见的解决方案:- 流量过滤:通过使用防火墙或者入侵检测系统(IDS)等工具,对网络流量进行过滤和检测,识别并阻止潜在的DoS攻击流量。
- 负载均衡:通过使用负载均衡器,将流量分散到多个服务器上,以分担单个服务器的负载,提高系统的容错能力。
- 增加带宽:增加网络带宽可以提高系统对DoS攻击的抵御能力,使系统能够更好地处理大量的请求。
- 限制连接数:通过设置系统参数或者使用专门的设备,限制每个IP地址或者每个用户的最大连接数,以防止单个用户或者IP地址占用过多的系统资源。
- 使用反向代理:通过使用反向代理服务器,将流量转发到多个后端服务器上,以分散攻击者对单个服务器的攻击。
DoS 攻击及解决方案概述:DoS(拒绝服务)攻击是一种恶意行为,旨在通过超载目标系统的资源,使其无法正常工作。
攻击者通过向目标系统发送大量的请求或者占用其资源,导致系统无法响应合法用户的请求。
本文将详细介绍DoS 攻击的类型以及常见的解决方案。
一、DoS 攻击类型:1. 带宽消耗型攻击:攻击者通过发送大量的数据流,占用目标系统的带宽资源,导致合法用户无法正常访问系统。
2. 连接消耗型攻击:攻击者通过使用大量的虚假连接请求,占用目标系统的连接资源,使其无法处理合法用户的连接请求。
3. 资源消耗型攻击:攻击者通过发送大量的请求,占用目标系统的 CPU、内存或者磁盘等资源,导致系统无法正常运行。
4. 应用层攻击:攻击者利用目标系统的应用程序漏洞或者弱点,发送特定的请求,使目标系统崩溃或者无法正常工作。
二、DoS 攻击解决方案:1. 流量过滤:使用防火墙或者入侵检测系统(IDS)来过滤和阻挠恶意流量。
这些系统可以根据预定义的规则,识别并阻挠来自已知攻击源的流量。
2. 负载均衡:通过使用负载均衡器,将流量分散到多个服务器上,以提高系统的容量和可用性。
这样即使某个服务器受到攻击,其他服务器仍然可以正常工作。
3. 流量限制:限制来自单个 IP 地址或者特定网络段的流量,以防止攻击者使用大量的请求占用系统资源。
这可以通过配置防火墙或者使用专门的流量限制设备来实现。
4. 弹性扩展:通过动态添加更多的服务器或者资源,以应对攻击时的额外负载。
云计算环境可以提供弹性扩展的能力,使系统能够根据需求自动调整资源。
5. 入侵检测系统(IDS):使用 IDS 来监测系统中的异常活动和攻击行为。
IDS 可以及时发现并报告潜在的攻击,匡助管理员采取措施应对攻击。
6. 更新和维护:定期更新和维护系统软件和应用程序,以修复已知的漏洞和弱点。
同时,及时应用安全补丁和更新,以确保系统的安全性。
7. 流量分析:使用网络流量分析工具来监测和分析系统的流量模式。
DoS 攻击及解决方案简介:DoS(Denial of Service)攻击是一种恶意行为,旨在通过超载目标系统的资源,使其无法正常提供服务。
攻击者通常利用网络连接、服务器或者应用程序的弱点,发送大量请求或者占用大量系统资源,导致系统崩溃或者无法响应合法用户的请求。
本文将详细介绍DoS攻击的类型和常见的解决方案。
一、DoS攻击类型1. 带宽消耗型攻击:攻击者通过向目标系统发送大量的网络流量,占用其带宽资源,导致其他合法用户无法正常访问。
常见的带宽消耗型攻击包括洪泛攻击(Flood Attack)和反射攻击(Reflection Attack)。
2. 资源消耗型攻击:攻击者通过发送大量的请求或者占用系统资源,使目标系统的CPU、内存、磁盘空间等资源耗尽,导致系统无法正常运行。
常见的资源消耗型攻击包括SYN Flood攻击、Ping of Death攻击和Slowloris攻击。
3. 协议攻击:攻击者利用协议的漏洞或者不正确的实现,向目标系统发送特定的恶意请求,导致系统崩溃或者无法正常运行。
常见的协议攻击包括TCP/IP协议栈攻击和HTTP协议攻击。
二、DoS攻击解决方案1. 流量过滤:部署防火墙、入侵检测系统(IDS)和入侵谨防系统(IPS)等网络安全设备,通过过滤恶意流量,阻挠DoS攻击对目标系统的影响。
这些设备可以根据流量的源IP地址、协议类型、端口号等进行过滤,将恶意流量拦截在网络边界。
2. 带宽扩展:增加网络带宽可以提高系统对DoS攻击的反抗能力。
通过与网络服务提供商(ISP)合作,增加带宽容量,可以分散攻击流量,减轻攻击对目标系统的影响。
3. 负载均衡:部署负载均衡器可以将流量分发到多个服务器上,均衡系统负载,提高系统的可用性和抗攻击能力。
当某个服务器受到DoS攻击时,负载均衡器可以将流量重新分配到其他正常的服务器上,保证系统的正常运行。
4. 弹性计算:利用云计算平台的弹性计算能力,可以根据系统负载的变化,自动调整计算资源的分配。
DOS攻击原理与防御策略研究DOS(Denial of Service)攻击是指通过某些手段使目标计算机或网络资源的正常服务失效,使得正常用户无法正常使用或访问该资源的一种攻击行为。
DOS攻击是网络攻击中最常见的一种,其原理是通过向目标计算机或网络资源发送大量请求或占用其带宽、网络连接等资源,使其无法响应合法用户的请求,进而达到瘫痪网络交通的目的。
DOS攻击的种类和来源繁多,攻击者可以利用各种手段对目标进行攻击,如发起大规模的网络泛洪攻击、利用网络代理和傀儡机发起分布式拒绝服务(DDoS)攻击等,其攻击的目标可以是某个特定的IP地址或某个网站或应用程序,甚至可以同时攻击多个目标。
在防御DOS攻击方面,以下是一些有效的策略:1.使用防火墙:防火墙是第一道防线,可以帮助过滤掉一些来自恶意攻击者的流量,如访问频繁的大型文件,异常的连接请求等,防火墙也可通过控制访问速度和流量限制来避免脱离控制。
2.压缩和缓存:压缩和缓存是一种有效的手段,可以将Web应用程序的响应存储在缓存中,以避免对Web服务器和带宽的过度压力。
同时采用压缩技术可以有效缓解软件和服务器的负载,改善系统性能。
3.多服务器部署:将Web应用程序部署在多个服务器上,可以有效地减轻单一服务器的压力,同时建立负载平衡机制,确保服务器在需要时可以平稳地承担更多的任务。
4.攻击监控:通过检测流量和监控网络行为,可以及时检测到并防范DOS攻击,例如一些专业的DOS攻击监控软件、网络安全设备等。
5.合理分配资源:分配合理的系统资源,包括处理器、内存、存储、网络等,以便最大程度地减少系统的负载,避免由于各种原因出现系统故障和服务不可用,同时加密网络连接、使用安全协议和认证策略等,都可以有效降低DOS攻击的威胁。
总之,DOS攻击作为一种恶意攻击手段,正在不断演变和进化,需要系统管理员和安全专家采取积极有效的方法应对。
仅凭一种安全防御手段是无法完全保证Web应用程序的安全的,需要采取多种防范方法,形成多层防御体系,加强对网络安全的监控,及时发现和解决可能存在的安全隐患,确保网络资源的安全和稳定性。
DoS 攻击及解决方案概述:DoS(Denial of Service)攻击是一种恶意行为,旨在使目标系统无法正常提供服务。
攻击者通过发送大量的请求或占用系统资源,导致系统过载,从而使合法用户无法访问服务。
本文将详细介绍DoS攻击的类型、影响和常见的解决方案。
一、DoS攻击类型:1. SYN Flood攻击:攻击者发送大量的伪造TCP连接请求,使目标系统耗尽资源。
2. UDP Flood攻击:攻击者发送大量的UDP数据包,占用目标系统的带宽和资源。
3. ICMP Flood攻击:攻击者发送大量的ICMP Echo请求(ping请求),使目标系统无法响应其他合法请求。
4. HTTP Flood攻击:攻击者发送大量的HTTP请求,使目标服务器过载,无法处理合法用户的请求。
5. Slowloris攻击:攻击者发送大量的半连接请求,占用目标服务器资源,使其无法响应其他请求。
二、DoS攻击的影响:1. 服务不可用:DoS攻击会使目标系统无法提供正常的服务,导致合法用户无法访问网站、应用程序或其他服务。
2. 数据丢失:攻击者可能通过DoS攻击导致目标系统崩溃或重启,造成数据丢失。
3. 延迟和响应时间增加:攻击者通过占用目标系统的资源,使其响应时间变慢,导致用户体验下降。
4. 信誉损失:DoS攻击可能导致企业声誉受损,客户流失,甚至法律问题。
三、DoS攻击的解决方案:1. 流量过滤:使用防火墙或入侵防御系统(IDS/IPS)来过滤和丢弃恶意流量,阻止攻击请求进入目标系统。
2. 资源扩展:增加带宽、服务器和网络设备的容量,以便能够承受更大的流量和请求负载。
3. 负载均衡:使用负载均衡器将流量分散到多个服务器上,以减轻单个服务器的负载压力。
4. SYN Cookie:启用SYN Cookie机制,对TCP连接请求进行验证,以防止SYN Flood攻击。
5. 流量限制:设置流量限制策略,限制每个IP地址或每个用户的连接数,防止过多的连接请求。
一.Dos攻击1.1什么是Dos攻击?DoS(Denial Of Service),拒绝服务的缩写,是指故意攻击网络协议实现的缺陷或直接通过野蛮手段耗尽被攻击对象的资源,目的是让目标计算机或网络无法提供正常的服务,使目标系统停止响应甚至崩溃。
这些服务资源包括网络带宽,文件系统空间容量,开放的进程或者允许的连接。
这种攻击会导致资源的匮乏,无论计算机的处理速度多快、内存容量多大、网络带宽的速度多快都无法避免这种攻击带来的后果。
例如剪断大楼的电话线路造成用户无法通话。
而以网络来说,由于频宽、网络设备和服务器主机等处理的能力都有其限制,因此当黑客产生过量的网络封包使得设备处理不及,即可让正常的使用者无法正常使用该服务。
例如黑客试图用大量封包攻击一般频宽相对小得多的拨接或 ADSL 使用者,则受害者就会发现他要连的网站连不上或是反应十分缓慢。
要知道任何事物都有一个极限,所以总能找到一个方法使请求的值大于该极限值,因此就会故意导致所提供的服务资源匮乏,表面上好象是服务资源无法满足需求。
所以千万不要自认为拥有了足够宽的带宽和足够快的服务器就有了一个不怕DoS攻击的高性能网站,拒绝服务攻击会使所有的资源变得非常渺小。
1.2如何进行Dos攻击及其原理DoS 攻击方法中,又可以分为下列几种:(1).TCP Syn Flooding由于TCP协议连接三次握手的需要,在每个TCP建立连接时,都要发送一个带SYN标记的数据包,如果在服务器端发送应答包后,客户端不发出确认,服务器会等待到数据超时,如果大量的带SYN标记的数据包发到服务器端后都没有应答,会使服务器端的TCP资源迅速枯竭,导致正常的连接不能进入,甚至会导致服务器的系统崩溃。
这就是TCP SYN Flooding 攻击的过程。
(2).Smurf黑客采用 ICMP(Internet Control Message Protocol RFC792)技术进行攻击。
常用的ICMP有 PING 。
一.实验目的通过练习使用DoS/DDoS攻击工具对目标主机进行攻击;理解Dos/DDoS攻击的原理及其实施过程;掌握检测和防范DoS/DDoS攻击的措施。
二.实验原理拒绝服务攻击是一种非常有效的攻击技术,它利用协议或系统的缺陷,采用欺骗的策略进行网络攻击,最终目的是使目标主机因为资源全部被占用而不能处理合法用户提出的请求,即对外表现为拒绝提供服务。
1、DoS攻击DoS攻击在众多网络攻击技术中是一种简单有效并且具有很大危害性的攻击方法。
它通过各种手段消耗网络带宽和系统资源,或者攻击系统缺陷,使系统的正常服务陷于瘫痪状态,不能对正常用户进行服务,从而实现拒绝正常用户的访问服务。
2、DDoS攻击DDoS攻击是基于DoS攻击的一种特殊形式。
攻击者将多台受控制的计算机联合起来向目标计算机发起DoS攻击,它是一种大规模协作的攻击方式,主要瞄准比较大的商业站点,具有较大的破坏性。
DDoS攻击由攻击者、主控端和代理端组成。
攻击者是整个DDoS攻击发起的源头,它事先已经取得了多台主控端计算机的控制权,主控端极端基分别控制着多台代理端计算机。
在主控端计算机上运行着特殊的控制进程,可以接受攻击者发来的控制指令,操作代理端计算机对目标计算机发起DDoS攻击。
DDoS攻击之前,首先扫描并入侵有安全漏洞的计算机并取得其控制权,然后在每台被入侵的计算机中安装具有攻击功能的远程遥控程序,用于等待攻击者发出的入侵命令。
这些工作是自动、高速完成的,完成后攻击者会消除它的入侵痕迹,使系统的正常用户一般不会有所察觉。
攻击者之后会继续利用已控制的计算机扫描和入侵更多的计算机。
重复执行以上步骤,将会控制越来越多的计算机。
三、实验环境攻击者win7 64位ip:172.22.3.71,被攻击者虚拟机vm构造,与宿主机采用桥接,在同一网段,ip为172.22.49.184四、实验步骤及分析结果1.UDP Flood攻击练习原理:UDPFlood是日渐猖厥的流量型DoS攻击,原理也很简单。
DOS攻击原理与防御策略研究DOS(Denial of Service)攻击是一种破坏目标系统服务可用性的网络攻击。
攻击者通过向目标系统发送大量的请求,占用系统资源,导致系统无法正常对外提供服务。
本文将对DOS攻击的原理进行研究,并提出相应的防御策略。
一、DOS攻击的原理1. SYN Flood攻击:攻击者通过发送大量的虚假的TCP连接请求(SYN包),占用系统资源,并耗尽系统的连接队列资源,导致正常用户的连接请求得不到响应。
2. ICMP Flood攻击:攻击者通过发送大量的虚假的ICMP(Internet Control Message Protocol)请求,占用系统的网络带宽和处理能力,导致系统无法正常提供服务。
3. UDP Flood攻击:攻击者通过发送大量的虚假的UDP(User Datagram Protocol)请求,占用系统的网络带宽和进程资源,导致系统服务不可用。
4. HTTP Flood攻击:攻击者通过发送大量的HTTP(HyperText Transfer Protocol)请求,占用系统的网络带宽和处理能力,导致系统无法处理正常用户的请求。
二、DOS攻击的防御策略针对DOS攻击,可以采取以下防御策略:1. 限制连接数:通过设置系统的最大连接数来限制单个IP地址的连接数,当一个IP地址的连接数达到预设的数值时,系统将拒绝其余的连接请求。
这样可以有效防止SYN Flood攻击。
2.流量过滤:通过设置防火墙或入侵检测系统,对流量进行过滤和验证。
可以通过限制一些IP地址的访问频率或启用流量分析来检测和过滤DOS攻击流量。
3.强化网络设备:通过升级网络设备的性能和带宽,提高系统的抗攻击能力。
可以选择高性能的路由器、交换机和负载均衡器等设备,以增加系统吞吐量和连接处理能力。
4. 使用DDoS防护服务:DDoS(Distributed Denial of Service)防护服务可以通过分布式的多个节点来分担攻击流量,从而保护目标系统的可用性。
DOS攻击原理及Linux环境下的防御方案
摘要:在系统上有许多类型的侵袭,我们一般把侵袭分为三种基本类型:入侵、拒绝服务(DOS)和盗窃信息。
网络诞生以来遭受攻击事件不断发生,全球许多著名网站都遭到不名身份的黑客攻击,本文针对几种常见的DOS攻击提出在LINUX环境下的一些防御看法。
1、DOS攻击概念
DoS是Denial of Service的简称,即拒绝服务,造成DoS的攻击行为被称为DoS攻击,其目的是使计算机或网络无法提供正常的服务。
最常见的DoS攻击有计算机网络带宽攻击和连通性攻击。
带宽攻击指以极大的通信量冲击网络,使得所有可用网络资源都被消耗殆尽,最后导致合法的用户请求就无法通过。
连通性攻击指用大量的连接请求冲击计算机,使得所有可用的操作系统资源都被消耗殆尽,最终计算机无法再处理合法用户的请求。
如:
(1)试图FLOOD服务器,阻止合法的网络通讯
(2)破坏两个机器间的连接,阻止访问服务
(3)阻止特殊用户访问服务
(4)破坏服务器的服务或者导致服务器死机
随着电子商业在电子经济中扮演越来越重要的角色,随着信息战在军事领域应用的日益广泛,持续的DoS攻击既可能使某些机构破产,也可能使我们在信息战中不战而败。
可以毫不夸张地说,电子恐怖活动的时代已经来临。
所以了解和防御网络攻击至关重要。
2、 DOS的几种常见攻击及防御对策
下面我们看看几种常见的DONS攻击方式及在LINUX环境中我们如何采取防御措施。
2.1 LAND 攻击
概述: LAND攻击是网络上流行的攻击方式。
它的攻击方案是将TCP的请求连接数据包的IP源地址和目的地址指定成一样的。
我们知道,TCP连接要经过“三次握手”,只有连接确认之后才能进行数据的传输。
它将源和目的地址指定成一样的以后,会将系统陷入一个死循环中,从而导致目标机陷入死锁状态。
防御: 适当配置防火墙设备或过滤路由器的过滤规则就可以防止这种攻击行为(一般是丢弃该数据包),并对这种攻击进行审计(记录事件发生的时间,源主机和目标主机的MAC地址和IP地址)。
判断该项攻击的方法其实很简单,只需要判断IP的源与目的地址是否一致,以下是防御LAND攻语言:if((tcph->syn)&&(sport==dport)&&(sip==dip))//判断源和目地地址是否相等
{ printk("maybe land attack \n");//报警
}
……………//继续将包匹配下一条规则
2.2 SYN FLOOD攻击及防范
概述:SYN Flood是当前最流行的DoS(拒绝服务攻击)与DDoS(分布式拒绝服务攻击)的方式之一,它是一种利用TCP协议缺陷,发送大量伪造的TCP连接请 求,从而使得被攻击方资源耗尽(CPU满负荷或内存不足)的攻击方式。
漏洞在于TCP协议连接三次握手过程中,当每个TCP建立连接时,都要发送一个带 SYN标记的数据包,如果在服务器端发送应答包后,客户端不发出确认,服务器会等待到数据超时,如果大量的带SYN标记的数据包发到服务器端后都没有应 答,会使服务器端的TCP资源迅速枯竭,导致正常的连接不能进入,甚至会导致服务器的系统崩溃。
(图一 TCP Syn攻击示意图)
问题就出在TCP连接的三次握手 中,假设一个用户向服务器发送了SYN报文后突然死机或掉线,那么服务器在发出SYN+ACK应答报文后是无法收到客户端的ACK报文的(第三次握手无法 完成),这种情况下服务器端一般会重试(再次发送SYN+ACK给客户端)并等待一段时间后丢弃这个未完成的连接,这段时间的长度我们称为SYN Timeout,一般来说这个时间是分钟的数量级(大约为30秒-2分钟);一个用户出现异常导致服务器的一个线程等待1分钟并不是什么很大的问题,但如 果有一个恶意的攻击者大量模拟这种情况,服务器端将为了维护一个非常大的半连接列表而消耗非 常多的资源----数以万计的半连接,即使是简单的保存并遍历也会消耗非常多的CPU时间和内存,何况还要不断对这个列表中的IP 进行SYN+ACK的重 试。
实际上如果服务器的TCP/IP栈不够强大,最后的结果往往是堆栈溢出崩溃---即使服务器端的系统足够强大,服务器端也将忙于处理攻击者伪造的 TCP连接请求而无暇理睬客户的正常请求(毕竟客户端的正常请求比率非常之小),此时从正常客户的角度看来,服务器失去响应。
一般来说,如果一个系统(或主机)负荷突然升高甚至失去响应,使用Netstat 命令能看到大量SYN_RCVD的半连接(数量>500或占总连接数的10%以上),可以认定,这个系统(或主机)遭到了SYN Flood攻击。
防御:
第一种是缩短SYN Timeout时间。
由于SYN Flood攻击的效果取决于服务器上保持的SYN半连接数,这个值=SYN攻击的频度x SYN Timeout,所以通过缩短从接收到SYN报文到确定这个报文无效并丢弃改连接的时间。
第二种方法是设置SYN Cookie,就是给每一个请求连接的IP地址分配一个Cookie,如果短时间内连续受到某个IP的重复SYN报文,就认定是受到了攻击,以后从这个IP地址来的包会被丢弃。
可是上述的两种方法只能对付比较原始的SYN Flood攻击,缩短SYN Timeout时间仅在对方攻击频度不高的情况下生效,SYN Cookie更依赖于对方使用真实的IP地址,如果攻击者以数万/秒的速度发送SYN报文,同时利用SOCK_RAW随机改写IP报文中的源地址,以上的 方法将毫无用武之地。
2.3 Smurf攻击及防范
概览:Smurf攻击并不十分可怕;它仅仅是利用IP路由漏洞的攻击方法。
攻击者向网络广 播地址发送ICMP包,并将回复地址设置成受害网络的广播地址,通过使用ICMP应答请求数据包来淹没受害主机的方式进行,最终导致该网络的所有主机都对 次ICMP应答请求作出答复,导致网络阻塞。
更加复杂的Smurf攻击攻击将源地址改为第三方受害者,最终导致第三方崩溃。
防御:为了防止黑客利用你的网络攻击他人,关闭外部路由器或防火墙的广播地址特性。
为防止被攻击,在防火墙上设置规则,丢弃掉ICMP包。
(1)配置路由器禁止IP广播包进网, 命令为:no ip directed-broadcast
(2)配置网络上所有计算机的操作系统,禁止对目标地址为广播地址的ICMP包响应。
我们可以在LINUX的IPTABLE模块加入利用下面命令实现:
iptables –A –I eth0 -s 172.30.4.0/16–P icmp –j DROP
(3)通过在路由器上使用输出过滤,你就可以滤掉这样的包,从而阻止从你的网络中发起的Smurf攻击。
在路由器上增加这类过滤规则的命令是:
Access-list 100 permit IP {你的网络号} {你的网络子网掩码} any
Access-list 100 deny IP any any
(4)被攻击目标与ISP协商,有ISP暂时阻止这些流量。
2.4 IP欺骗原理和防范
IP欺骗也是针对TCP/IP协议的缺陷。
我们先来看看IP欺骗的过程
(图二:IP伪装示意图)
我们先做以下假定:首先,目标主机已经选定。
其次,信任模式已被发现,并找到了一个被目标主机信任的主机。
黑客为了进行IP欺骗,进行以下工作:使得被信任的主机丧失工作能力,同时采样目标主机发出的TCP 序列号,猜测出它的数据序列号。
然后,伪装成被信任的主机,同时建立起与目标主机基于地址验证的应用连接。
如果成功,黑客可以使用一种简单的命令放置一个 系统后门,以进行非授权操作。
要通过包过滤防火墙的过滤规则来阻挡IP欺骗的攻击,几乎是不可能的,因而我们设计了强大的身份验证来抵御这种攻击。
有一种设计方案:当一个IP数据包从一个网络内部机器到另一内部机器,但这个数据包却通过外部网络通向内部网络的入口进入,同时,我们通过包过滤和分析IP报头,可以知道该数据包有两个源地址。
其中一 个是伪IP源地址。
这样我们就毫不犹豫地断定我们受到了IP欺骗的攻击。
在处理时,我们立即丢弃该数据包,并把记录写入日志文件中。
关于这一点,请看类C语言:
If (IP 数据包入站){
If (iphdr->SrcAddr 属于本地网络&&
Iphdr->DstAddr属于本地网络){
丢弃IP数据包;
作日志纪录;
}
else{使用出站或转发规则过滤数据包;}
事实上LINUX内核本身支持防范IP欺骗得功能,我们可以用下面的命令:
ech0 1>/proc/sys/net/ipv4/conf/eth0/rp_filter
3、 结束语
当网络中应用新的安全技术后,恶意用户的攻击技术也深入改造,变异。
此时就需要网络管理人员或
用户的细心发现计算机是否有异常情况,如反应变慢、非 法连接数据、莫名程序及莫名用户等。
为了能自动化防守计算机,相关人氏建议在安全策略上要做到精、细、准,在软件应用上要调节安全度,并提
写相关日志文 件,安装必备的防火墙,做好前置工作,才能以逸待劳!。