您的位置: 网站首页> 大家问> 当前文章
拒绝服务攻击都有哪些方式?
老董2023-07-06182围观,108赞
拒绝服务攻击即是攻击者想办法让目标机器停止提供服务,是黑客常用的攻击手段之一。拒绝服务攻击有以下方式:
1 SYN Foold攻击:是利用TCP协议的特性发动的,通过发送大量伪造的带有SYN标志位的TCP报文使目标服务器连接耗尽,达到拒绝服务的目的。通过不停的循环讲伪造好的数据包发送到目的服务器。可以看到目标主机建立了很多虚假的半开连接,这耗费了目标主机大量的连接资源。可以想象如果成千上万台“肉鸡”对一台服务器发动synflood攻击威力将是非常强大。
2 ACK FLOOD攻击:是利用TCP三次握手的缺陷实现的攻击,攻击主机伪造海量的虚假ack包发送给目标主机,目标主机每收到一个带有ack标志位的数据包时,都会去自己的TCP连接表中查看有没有与ack的发送者建立连接,如果有则发送三次握手的第三段ack+seq完成三次握手,成功建立TCP连接。如果没有则发送ack+rst断开连接。但是在这个过程中会消耗一定的CPU计算资源。
3 CC攻击:CC攻击的原理是通过代理服务器或者大量“肉鸡”模拟多个用户访问目标网站的动态页面,制造大量的后台数据库查询动作,消耗目标CPU资源,造成拒绝服务。CC攻击全称ChallengeCollapsar,中文意思是挑战黑洞,因为以前的抗DDOS攻击的安全设备叫黑洞,顾名思义挑战黑洞就是说黑洞拿这种攻击没办法,新一代的抗DDOS设备已经改名为ADS(Anti-DDoS System),基本上已经可以完美的抵御CC攻击了。
4 UDP FLOOD攻击:UDP攻击,又称UDP洪水攻击或UDP淹没攻击顾名思义是利用UDP协议进行攻击的,UDP FLOOD攻击可以是小数据包冲击设备也可以是大数据包阻塞链路占尽带宽。不过两种方式的实现很相似,差别就在UDP的数据部分带有多少数据。相比TCP协议的攻击UDP的攻击更直接更好理解,有一定规模之后更难防御,因为UDP攻击的特点就是打出很高的流量。
5 反射DDOS:很多协议的请求包要远小于回复包,以一个字节的数据换十个字节的数据回来这就是一种放大,但是这单纯的放大攻击的是自己,所以说想要攻击别人就要在发送请求包时把源地址写成要攻击的人的地址,这样回复的大字节报文就去要攻击的人那里了。这里放大主要利用的是NTP的monlist(listpeers也行)、DNS的AXFR(ANY也行)、SNMP的getbulkrequest。monlist是返回最近600个与当前NTP服务器通信过的IP地址;AXFR是区域传送(有地方叫域传送),比如freebuf.com下的所有域名返回给请求者;SNMPV2版本中新加的getbulkrequest用于一次请求大量的信息,减少管理站与被管理设备的交互次数。
6 Websocket攻击:websocket是HTML5一种新的协议,它实现了浏览器与服务器全双工通信(full-duple)。目前主流的浏览器都能很好地支持websocket,而且用它实现DOS攻击也并不是很难,只要在js代码中写入相应的代码,当人们打开这个网页时浏览器会自动执行js代码去请求连接要攻击的IP地址。
7 临时透镜攻击:这种攻击是一种典型的通过时间延时进行流量放大攻击的方法。如果攻击者可以控制多个时间段的多个数据包,让它们同时到达目标,这样就能使流量瞬间到达一个峰值,对目标造成很大危害。这个攻击方式道理不难理解,但是实现起来可是不容易,要让相同源和目的IP的IP报文走不同的路径到达目的地,这一点就是要实现临时透镜攻击的关键所在。
8 慢速DDOS攻击:一说起慢速攻击,就要谈谈它的成名历史了。HTTP Post慢速DoS攻击第一次在技术社区被正式披露是2012年的OWASP大会上,由Wong Onn Chee和Tom Brennan共同演示了使用这一技术攻击的威力。对任何一个开放了HTTP访问的服务器HTTP服务器,先建立了一个连接,指定一个比较大的content-length,然后以非常低的速度发包,比如1-10s发一个字节,然后维持住这个连接不断开。如果客户端持续建立这样的连接,那么服务器上可用的连接将一点一点被占满,从而导致拒绝服务。
9 ReDoS攻击:ReDoS(Regular expression Denial of Service)正则表达式拒绝服务攻击。开发人员使用了正则表达式来对用户输入的数据进行有效性校验,当编写校验的正则表达式存在缺陷或者不严谨时,攻击者可以构造特殊的字符串来大量消耗服务器的系统资源,造成服务器的服务中断或停止。正则表达式引擎分成两类,一类称为DFA(确定性有限状态自动机),另一类称为NFA(非确定性有限状态自动机)。两类引擎要顺利工作,都必须有一个正则式和一个文本串,一个捏在手里,一个吃下去。DFA捏着文本串去比较正则式,看到一个子正则式,就把可能的匹配串全标注出来,然后再看正则式的下一个部分,根据新的匹配结果更新标注。而NFA是捏着正则式去比文本,吃掉一个字符,就把它跟正则式比较,然后接着往下干。一旦不匹配,就把刚吃的这个字符吐出来,一个一个吐,直到回到上一次匹配的地方。
本文就此结束,感谢IT人士的关注拒绝服务攻击都有哪些方式?,本文合作企业直达:更多推荐。
很赞哦!
python编程网提示:转载请注明来源www.python66.com。
有宝贵意见可添加站长微信(底部),获取技术资料请到公众号(底部)。同行交流请加群
上一篇:防止ARP欺骗的办法是什么?
下一篇:如何避免拒绝服务攻击?
文章评论
-
拒绝服务攻击都有哪些方式?文章写得不错,值得赞赏