`
zhengdl126
  • 浏览: 2538976 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类

拒绝服务攻击DDOS

 
阅读更多

 

=========================

 

DNS攻击(发出大量异常DNS解析请求,拖垮DNS Server)和CC攻击(用大量肉鸡仿照正常访问者发出超量登录请求,拖垮Web Server,间接拖垮DB Server,因为登录请求会引起DB查询)

 

 

=========================  UDP  (阿拉丁udp洪水攻击器)   

 

查看upd连接

#tcpdump upd port 80 -vvv -i eth0

 

 

UDP=水攻击,或者叫UDP Flood,主要是利用大量UDP报文,冲击目标IP地址,有时候可能会把目标服务器打瘫,但是更多时候是把服务器的带宽堵死了。

 

 

UDP洪水攻击是DDoS洪水攻击的一种,DDoS洪水还包括用其他类型报文的攻击,例如TCP Flood(包括Syn flood/ACK Flood等)、ICMP Flood、IGMP Flood。

 

 

 

 

UDP攻击主要分为2种

1.发送垃圾数据攻击

2.自己构造虚假IP进行攻击

 

 

 

Linux网关系统性能急剧下降,甚至影响正常操作,系统CPU占用高达99%以上,用户进程.中softirqd进程占用最大,Linux.网关通过tcpdump抓公网网卡eth0发现每秒钟平均.250.0个udp数据包的接收,而且目标ip都是我的网关公网ip,源地址极其分散,没有规律性,.明显的DDOS

 

 

流量攻击靠带宽,或者抗D的机房。

 

 

=========================

 

 

拒绝服务攻击即攻击者想办法让目标机器停止提供服务或资源访问。这些资源包括磁盘空间、内存、进程甚至网络带宽,从而阻止正常用户的访问。其实对网络带宽进行的消耗性攻击只是拒绝服务攻击的一小部分,只要能够对目标造成麻烦,使某些服务被暂停甚至主机死机,都属于拒绝服务攻击。拒绝服务攻击问题也一直得不到合理的解决,究其原因是因为这是由于网络协议本身的安全缺陷造成的,从而拒绝服务攻击也成为了攻击者的终极手法。

 

 

 

攻击者进行拒绝服务攻击,实际上让服务器实现两种效果:一是迫使服务器的缓冲区满,不接收新的请求;二是使用IP欺骗,迫使服务器把合法用户的连接复位,影响合法用户的连接。

接下来了解一下几种常见的拒绝服务攻击的原理:

1.SYN Foold

SYN Flood是当前最流行的DoS(拒绝服务攻击)与DDoS(Distributed Denial Of Service分布式拒绝服务攻击)的方式之一,这是一种利用TCP协议缺陷,发送大量伪造的TCP连接请求,使被攻击方资源耗尽(CPU满负荷或内存不足)的攻击方式。

SYN Flood攻击的过程在TCP协议中被称为三次握手(Three-way Handshake),而SYN Flood拒绝服务攻击就是通过三次握手而实现的。



(1) 攻击者向被攻击服务器发送一个包含SYN标志的TCP报文,SYN(Synchronize)即同步报文。同步报文会指明客户端使用的端口以及TCP连接的初始序号。这时同被攻击服务器建立了第一次握手。

(2) 受害服务器在收到攻击者的SYN报文后,将返回一个SYN+ACK的报文,表示攻击者的请求被接受,同时TCP序号被加一,ACK(Acknowledgement)即确认,这样就同被攻击服务器建立了第二次握手。

(3) 攻击者也返回一个确认报文ACK给受害服务器,同样TCP序列号被加一,到此一个TCP连接完成,三次握手完成。

具体原理是:TCP连接的三次握手中,假设一个用户向服务器发送了SYN报文后突然死机或掉线,那么服务器在发出SYN+ACK应答报文后是无法收到客户端的ACK报文的(第三次握手无法完成),这种情况下服务器端一般会重试(再次发送SYN+ACK给客户端)并等待一段时间后丢弃这个未完成的连接。这段时间的长度我们称为SYN Timeout,一般来说这个时间是分钟的数量级(大约为30秒~2分钟);一个用户出现异常导致服务器的一个线程等待1分钟并不是什么很大的问题,但如果有一个恶意的攻击者大量模拟这种情况(伪造IP地址),服务器端将为了维护一个非常大的半连接列表而消耗非常多的资源。即使是简单的保存并遍历也会消耗非常多的CPU时间和内存,何况还要不断对这个列表中的IP进行SYN+ACK的重试。实际上如果服务器的TCP/IP栈不够强大,最后的结果往往是堆栈溢出崩溃—— 既使服务器端的系统足够强大,服务器端也将忙于处理攻击者伪造的TCP连接请求而无暇理睬客户的正常请求(毕竟客户端的正常请求比率非常之小),此时从正常客户的角度看来,服务器失去响应,这种情况就称作:服务器端受到了SYN Flood攻击(SYN洪水攻击)。

2.IP欺骗DOS攻击

这种攻击利用RST位来实现。假设现在有一个合法用户(61.61.61.61)已经同服务器建立了正常的连接,攻击者构造攻击的TCP数据,伪装自己的IP为61.61.61.61,并向服务器发送一个带有RST位的TCP数据段。服务器接收到这样的数据后,认为从61.61.61.61发送的连接有错误,就会清空缓冲区中建立好的连接。这时,如果合法用户61.61.61.61再发送合法数据,服务器就已经没有这样的连接了,该用户就必须从新开始建立连接。攻击时,攻击者会伪造大量的IP地址,向目标发送RST数据,使服务器不对合法用户服务,从而实现了对受害服务器的拒绝服务攻击。

3. UDP洪水攻击

攻击者利用简单的TCP/IP服务,如Chargen和Echo来传送毫无用处的占满带宽的数据。通过伪造与某一主机的Chargen服务之间的一次的UDP连接,回复地址指向开着Echo服务的一台主机,这样就生成在两台主机之间存在很多的无用数据流,这些无用数据流就会导致带宽的服务攻击。

4. Ping洪流攻击

由于在早期的阶段,路由器对包的最大尺寸都有限制。许多操作系统对TCP/IP栈的实现在ICMP包上都是规定64KB,并且在对包的标题头进行读取之后,要根据该标题头里包含的信息来为有效载荷生成缓冲区。当产生畸形的,声称自己的尺寸超过ICMP上限的包也就是加载的尺寸超过64K上限时,就会出现内存分配错误,导致TCP/IP堆栈崩溃,致使接受方死机。

5. 泪滴(teardrop)攻击

泪滴攻击是利用在TCP/IP堆栈中实现信任IP碎片中的包的标题头所包含的信息来实现自己的攻击。IP分段含有指明该分段所包含的是原包的哪一段的信息,某些TCP/IP(包括servicepack 4以前的NT)在收到含有重叠偏移的伪造分段时将崩溃。

6. Land攻击

Land攻击原理是:用一个特别打造的SYN包,它的原地址和目标地址都被设置成某一个服务器地址。此举将导致接受服务器向它自己的地址发送SYN-ACK消息,结果这个地址又发回ACK消息并创建一个空连接。被攻击的服务器每接收一个这样的连接都将保留,直到超时,对Land攻击反应不同,许多UNIX实现将崩溃,NT变的极其缓慢(大约持续5分钟)。

7. Smurf攻击

一个简单的Smurf攻击原理就是:通过使用将回复地址设置成受害网络的广播地址的ICMP应答请求(ping)数据包来淹没受害主机的方式进行。最终导致该网络的所有主机都对此ICMP应答请求作出答复,导致网络阻塞。它比ping of death洪水的流量高出1或2个数量级。更加复杂的Smurf将源地址改为第三方的受害者,最终导致第三方崩溃。

8.Fraggle攻击

原理:Fraggle攻击实际上就是对Smurf攻击作了简单的修改,使用的是UDP应答消息而非ICMP。

 

 

 

 

 

============CC攻击 :web应用层

 

 

 

 

CC = Challenge Collapsar,其前身名为Fatboy攻击,Collapsar(黑洞) 是绿盟科技的一款抗DDOS产品品牌,在对抗拒绝服务攻击的领域内具有比较高的影响力和口碑。 因此,此攻击更名为Challenge Collapsar,表示要向黑洞发起挑战。

 

 

CC攻击,从运维角度上分析,经常被认为是无解的,因为从通用安全防护而言,想阻止cc攻击几无可能;但是开发工程师多思考,多设想潜在的危险,还是可以做很多有效的防护的

 

 

 

 CC攻击的原理并不复杂,其主要思路是基于应用层的弱点进行攻击;传统的拒绝服务攻击,如Syn flood 主要是基于协议层和服务层的弱点开展攻击,早期的抗拒绝服务攻击产品也是基于此进行防护。而应用层的弱点,取决于各自应用平台的开发能力,因此难以具有通用性的防护方案,这也是CC攻击没有很好的防护产品,非常容易得手的原因。

 

 

 

 简单举例,一个论坛系统,如果存在较多的分页,当一个蜘蛛程序,多并发高频次的进行大量翻页抓取时,已经产生了一种CC攻击。

 

 

 

 

性能不够优良的数据查询,不良的程序执行结构,比较消耗资源的功能,都可能成为CC攻击的目标,而执行方法可能是单机发起,也可能是通过肉鸡发起,还有可能通过高流量站点嵌入脚本(iframe嵌入或js嵌入)发起,基于高流量网站嵌入攻击代码的CC攻击,在目前互联网环境上来讲,更加无解。

 

 

 

优化代码

  尽可能使用缓存来存储重复的查询内容,减少重复的数据查询资源开销。

  减少复杂框架的调用,减少不必要的数据请求和处理逻辑。

  程序执行中,及时释放资源,比如及时关闭mysql连接,及时关闭memcache连接等,减少空连接消耗。

限制手段

  对一些负载较高的程序增加前置条件判断,可行的判断方法如下

  必须具有网站签发的session信息才可以使用(可简单阻止程序发起的集中请求)

  必须具有正确的referer(可有效防止嵌入式代码的攻击)

  禁止一些客户端类型的请求(比如一些典型的不良蜘蛛特征)

  同一session多少秒内只能执行一次

完善日志

  尽可能完整保留访问日志。

  有日志分析程序,能够尽快判断出异常访问,比如单一ip密集访问;比如特定url同比请求激增。

 

 

 

 

 

分享到:
评论

相关推荐

    分布式拒绝服务攻击(DDoS)原理及防范

    ### 分布式拒绝服务攻击(DDoS)原理及防范 #### DDoS攻击概述 分布式拒绝服务(Distributed Denial of Service,简称DDoS)攻击是一种网络攻击方式,旨在通过利用多个计算机系统作为攻击平台,对一个或多个目标发动...

    拒绝服务器攻击检测器

    这种攻击可能由单一设备发起,也可能由多台受控设备(僵尸网络)协同进行,后者称为分布式拒绝服务攻击(Distributed Denial of Service, DDoS)。"拒绝服务器攻击检测器"是针对这类威胁设计的防护工具,其主要功能...

    论文研究-DDoS攻击下Adhoc网络队列管理算法研究与仿真.pdf

    针对分布式拒绝服务攻击DDoS对于Ad hoc网络性能的影响进行了研究。在介绍三种经典网络队列管理算法——Drop-Tail、RED和REM的基础上, 利用网络仿真软件NS2, 分析比较了Ad hoc网络在遭受DDoS攻击时三种队列管理算法的...

    如何防御DDoS攻击的六大绝招

    分布式拒绝服务攻击(DDoS)是一种特殊形式的拒绝服务攻击。它是利用多台已经被攻击者所控制的机器对某一台单机发起攻击,在带宽相对的情况下,被攻击的主机很容易失去反应能力。作为一种分布、协作的大规模攻击方式,...

    计算机病毒与防护:拒绝服务攻击.ppt

    分布式拒绝服务攻击:Distributed Denial of Service(DDos)指借助于客户/服务器模式,将多个计算机联合起来作为攻击平台,对一个或多个目标发动Dos攻击,从而成倍地提高拒绝服务攻击的威力。 DoS攻击的分类 * * *...

    分布式拒绝服务攻击(DDoS)及防御对策.pdf

    分布式拒绝服务攻击(DDoS)是一种针对互联网服务和资源的攻击手段,其目的是通过发送大量请求使目标服务器或网络资源不可用,影响其正常的服务提供。DDoS攻击通常利用控制网络上的多台计算机(即僵尸网络),这些...

    网站猎人压力测试

    可以测试不同上网方式、在不同地区、访问Web不同页面、在不同并发访问密度情况下...声明:Web-CT只是为了测试目的,任何作为拒绝服务DoS和利用分布式测试功能实现分布式拒绝服务攻击DDoS都是违法的,后果由使用者自负。

    拒绝服务攻击对策及网络追踪的研究

    拒绝服务攻击(DoS)与分布式拒绝服务攻击(DDoS) **定义:** 拒绝服务攻击(Denial of Service,DoS)是一种网络攻击方式,其目标是使合法用户无法访问正常的服务或资源。通过向目标服务器发送大量无效请求,...

    DOS拒绝服务攻击源代码

    5. **分布式拒绝服务攻击(DDoS)**:与DOS不同,DDoS是通过控制多台“肉鸡”(被感染的计算机)同时发起攻击,增加攻击的威力和难以追踪性。 6. **防护策略**:包括但不限于防火墙过滤、限速策略、负载均衡、流量...

    论文研究-分布式拒绝服务攻击及防范研究.pdf

    拒绝服务攻击(Denial of Service,DoS)是网络上最常见的一种攻击方式,其攻击类型繁多、影响广泛,其中的分布式拒绝服务攻击(Distributed Denial of Service,DDoS)更是严重威胁网络安全,受到这种攻击的损失是无法...

    DDoS.rar_ddos_denial_denial of service_dos attack_拒绝服务攻击

    相信大家都一定不会对这两个这个词感到陌生,是的,拒绝服务攻击(Denial of Service),以及分布式拒绝服务攻击(Distributed Denial of Service)。

    ddos攻击原理这种攻击手法为 DDoS,即分布式拒绝服务攻击(Distributed denial of service )。

    进入2000年以来,网络遭受攻击事件不断发生,全球许多著名网站如...取而代之的是,在一定时间内,彻底使被攻击的网络丧失正常服务功能,这种攻击手法为 DDoS,即分布式拒绝服务攻击(Distributed denial of service )。

    基于软件定义物联网的分布式拒绝服务攻击检测方法.pdf

    然而,物联网设备的大规模部署也带来了安全风险,尤其是分布式拒绝服务攻击(DDoS)的风险。DDoS攻击是一种常见的网络攻击方式,攻击者通过控制大量受感染的设备向目标发送海量网络请求,导致目标网络或服务无法正常...

    https协议拒绝服务测试攻击测试工具

    目前一般的防火墙对大流量的拒绝服务可以起到一定的防御效果,但小流量的拒绝服务攻击是很难防御的,此方法属于小流量拒绝服务攻击。 你有1M的带宽可以“单挑”任意服务器。 但你应该明白一个道理,看到cpu占用100%...

    分布式拒绝服务攻击(DDoS)原理与防范完整版[借鉴].pdf

    分布式拒绝服务攻击(DDoS)原理与防范完整版[借鉴].pdf

    基于代理服务器的分布式拒绝服务攻击系统设计与实现.pdf

    1. Web服务器的拒绝服务攻击(DoS)问题:文件中提到传统的拒绝服务攻击存在组织形式不合理、流量特征明显等不足。这表明攻击者通常采取简单直接的方式对Web服务器进行攻击,导致攻击容易被发现和防御。为了解决这个...

    分布式拒绝服务攻击预警系统的设计与实现

    分布式拒绝服务攻击(Distributed Denial of Service, DDoS)自1999年首次被提及以来,迅速成为网络安全领域的一大挑战。不同于传统的单一来源攻击,DDoS攻击利用分布在网络各处的多个“僵尸”主机同时向目标发起...

    中新金盾抗拒绝服务(DOS/DDOS)系统技术白皮书

    拒绝服务攻击(DOS/DDOS)是近年来愈演愈烈的一种攻击手段,其主要目的是造成目标主机的TCP/IP协议层拥塞、或者导致应用层异常终止而形成拒绝服务现象。中新金盾防火墙针对基于Internet的信息平台,需要对不可控网络...

Global site tag (gtag.js) - Google Analytics