Dos攻击的方式及解决方案
1-死亡之ping
ping实用程序使用的ICMP包很大(如65535字节),远远大于普通大小(32字节)时,它就会被分片,分割为网络可以处理的大小。服务器处理大量ICMP包时会消耗大量系统资源,最终资源耗尽,导致瘫痪。
解决办法:可以禁止使用ping,或者防火墙配置ICMP协议的访问规则。
2-着陆攻击 Land Attack
请求TCP连接发送SYN包时,SYN包具有相同源地址与目的地址,均设置为服务器地址。这样,服务器回送SYN/ACK包时,发现目的地址就是自己,导致服务器不断向自己发送SYN/ACK包,最终造成系统崩溃。
解决办法:在给服务器之前加一道防线,设定规则抓包分析,如果发现源地址与目的地址相同则丢弃。
3-TCP SYN Flood
该攻击利用了TCP连接中的安全缺陷。客户机向服务器发送SYN包时,服务器会向客户机发送SYN/ACK包。然后,客户机向服务器ACK包建立TCP连接。如果最后一步客户机不向服务器发送ACK包,则服务器一直等待,处于SYN received状态。不断重复这一过程,服务器的缓冲将被全部耗尽,从而瘫痪。
可以购买高防服务,服务中常见的SYN Flood防御算法有:
• SYN Cookies[1]
原理是根据SYN包计算出一个cookie值,判断为合法才发送给服务端进行处理。虽然SYN-Cookie避免了内存空间被爆掉,但是却引来了CPU时间被爆掉的机会,这又是一种时间-空间之间的权衡!如果攻击者发送大量的ACK包过来,那么被攻击机器将会花费大量的CPU时间在计算Cookie上,造成正常的逻辑无法被执行,同时即便是大量的SYN包也可以将CPU爆满。
• SYN Proxy
原理就是在给源站之前部署一个代理,发送到服务端的请求,如果完成了三次握手就原封不动的转发给源站,如果没有,则不提交请求给源站了。需要注意的是TCP使用的序号要进行重新设置才能正常发送。
• SYN Reset
原理是防火墙模拟服务端回复错误的ACK,当客户端收到错误的ACK会返回一个reset,那么这样防火墙就知道客户端是一个正常的请求。下一次客户端再请求时就可以进行放行。
4-Slowloris Attack
黑客向服务器发送非正常的HTTP请求头,服务器认为请求部分没有结束,保持连接不释放,继续等待完整请求。随着这种开放状态的连接数量增加,服务器连接数会很快达到上限,从而无法处理新的请求。
正常的HTTP头以/r/n/r/n结束。web服务器通过查找/r/n/r/n判断HTTP头结束,然后继续后面的服务请求处理工作。Slowloris攻击使用的HTTP头只以/r/n结尾,所以web服务器认为HTTP还没有结束,保持连接。攻击开始后数分钟内,web服务器就会陷入瘫痪,无法继续对外提供服务。
解决办法:
- 升级硬件配置,增加允许的最大连接数;
- 限制来自同一IP的连接个数;
- 安装防火墙,拦截有错误的HTTP头。
5-Tear Drop攻击
传送大数据包时,会先对数据包进行分片,这些分片达到目的地时再重新组装。分片数据包含分片的偏移量,可以通过操纵偏移量,使其大于实际值,造成重叠偏移。这会引发服务器溢出问题,使服务器陷入瘫痪。
解决办法:
将收到的分片报文放入缓存中,根据源地址IP和目的IP进行分组,相同源和目的IP的为一组,然后对每组IP报文的分片进行检查,如果偏移量正确则传送给服务端,否则丢弃。如果缓存满了,则直接丢弃后续分片报文。
6-Smurf 攻击
类似于着陆攻击,利用ICMP包的特性,发送ICMP包之前,先将ICMP包的源地址改为目标服务器地址。这样,每个接收到ICMP请求的主机都会做出答复,导致服务器被大量ICMP响应吞没,网络发生阻塞,从而拒绝为正常请求服务。
常见解决方法包括:
- 如果是在内网发起:配置路由器禁止IP广播包进网。
在路由器上禁止ICMPECHOREPLY包进入,几乎在所有的情况下,这种功能是不必要的。应该在网络的所有路由器上都禁止这个功能,而不仅仅在与外部网络连接的路由器上禁止。例如,网络上有5个路由器连接着10个LAN,则应该在这5个路由器上都禁止IP广播包通过。
配置网络上所有计算机的操作系统,禁止对目标地址为广播地址的ICMP包响应。虽然对路由器进行了禁止网外ICMP广播包的进入,但是攻击者可能已经攻破了网络内部的某台主机,攻击者仍然可以使用网络上这台被他控制的主机发起Smurf攻击。
- 如果是外网发起:与ISP协商
对被攻击的目标而言,要防止接收到大量的ICMPECHOREPLY包的攻击没有一个简单的解决办法。虽然可以对被攻击网络的路由器进行配置,禁止ICMPECHOREPLY包进入,但这并不能阻止网络路由器到其ISP 之间的网络拥塞。
ISP也就是网络服务提供商,国内基本上就是三大运营商:电信、联通、移动。部分可以提供这类抗D服务。或者购买专业的抗D厂商(这些厂商也购买了运营商的服务),好处就是厂商会摊薄成本,因为购买一次性投入大,如果大家共享使用,就可以按需付费,减少支出成本。
国外有的是自建网络,比如云厂商会有自己的网络,那么他们可以控制网络上的策略,也是购买抗D服务进行配置即可。
7-HTTP洪水攻击
黑客操控大量僵尸主机,利用这些僵尸主机大量调用正常服务,使服务瘫痪。这种使用大量主机发送攻击的成功率更高。也被称为ddos攻击。
解决办法:很难针对这种ddos攻击进行有效防御,需要接入高防机房,结合威胁情报进行过滤。
8- DNS Query Flood
通过向被攻击的服务器发送海量的域名解析请求,并且这些域名都是不存在的,被攻击的DNS服务器在接收到域名解析后,首先会在服务器上查找是否存在,没有的时候会向上层DNS服务递归查询域名信息。大量不存在的域名解析请求会给服务器带来很大的负载,造成DNS服务器域名解析超时。DNS服务器崩溃后,依赖DNS服务器的其他web应用也就无法正常提供服务了。
解决办法:在流量入口网关处建立已有域名白名单,首先跟名单中的域名比对,如果一致,则放行,不一致则拦截。域名白名单人力维护不现实,如果有资产管理系统可以结合应用起来,通过同步资产管理系统的域名,自动更新域名白名单。
Dos攻击的方式及解决方案相关推荐
- kali中怎么dos攻击
Kali-Dos洪水攻击之Hping3 在计算机行业,拒绝服务(DoS)或分布式拒绝服务(DDoS)攻击是指不法分子企图让某机器或网络资源无法被预期的用户所使用.虽然执行DoS攻击的方式.动机和目标不 ...
- DoS的SYN泛洪攻击,原理及解决方案,学到就是赚到!
DoS的相关概念 DoS: 也就是我们所说到的拒绝服务,一切能够引起DoS行为的攻击都被称为DoS攻击,该攻击的效果是使得计算机或者网络无法提供正常的服务. DoS攻击: 指的是造成DoS的攻击行为, ...
- HTTP POST慢速DOS攻击初探
1. 关于HTTP POST慢速DOS攻击 HTTP Post慢速DOS攻击第一次在技术社区被正式披露是今年的OWASP大会上,由Wong Onn Chee 和 Tom Brennan共同演示了使用这 ...
- 【Dos】常见的Dos攻击
文章目录 1.Dos攻击 2.常见的Dos攻击 2.1 TCP SYN泛洪 2.2 UDP泛洪 2.3 ping泛洪 2.4 缓冲区溢出 2.5 ICMP路由重定向炸弹 2.6 分片炸弹 1.Dos攻 ...
- 我丈母娘家的小店竟然被Dos攻击了
作为一个闷骚IT男,我虽然内心戏十足,但关键时刻却常常因为紧张讲话逻辑不清. 比如,每次去女朋友家,在未来丈母娘前我的表现都堪称"灾难级". 要不是女朋友对我这个技术男是" ...
- DOS攻击之详解--转载
源地址没有找到,间接引用地址:http://wushank.blog.51cto.com/3489095/1156004 DoS到底是什么?接触PC机较早的同志会直接想到微软磁盘操作系统的DOS--D ...
- TCP协议三次握手连接四次握手断开和DOS攻击
转载: http://hi.baidu.com/xgdcisco/blog/item/60da65f70fd8145d342acc28.html: http://blog.csdn.net/losty ...
- dos攻击mysql_浅谈DOS与DDOS攻击
DOS(Denial of Service)攻击,即拒绝服务攻击,其目的是使计算机或网络无法提供正常的服务.最常见的DoS攻击有计算机网络带宽攻击和连通性攻击. DDOS(DDoS:Distribut ...
- dos攻击与ddos攻击的区别
①DOS攻击: DOS:中文名称是拒绝服务,一切能引起DOS行为的攻击都被称为dos攻击.该攻击的效果是使得计算机或网络无法提供正常的服务.常见的DOS攻击有针对计算机网络带宽和连通性的攻击. DOS ...
- 对比DoS攻击与DDoS攻击
DoS攻击概述 DoS是 Denial of Service 的简称,即拒绝服务,造成拒绝服务的攻击行为被称为DoS攻击. 拒绝服务攻击是指一个用户占据了大量资源的共享资源,使系统没有剩余的资源给其他 ...
最新文章
- 如何替换所有出现的字符串?
- Delphi制作图像特殊显示效果
- ThinkPHP 目录结构
- 解除ABAP程序编辑锁的方法
- Linux学习:shell命令(文件权限、用户、用户组)
- TreeView 小技巧
- 小米盒子4用u盘导入html文件格式,最新图文教程:小米盒子怎么用U盘安装第三方应用...
- pip设置国内镜像_virtualenv安装、使用、pip国内镜像替换---windows 0117-2020
- [python]getopt模块的使用介绍
- Linux环境安装配置JDK
- 老肖有话说:如期而至的Swarm新工具Crane开源解读
- Android Multimedia框架总结(十九)Camera2框架C/S模型之CameraService启动及与Client连接过程
- 风变编程python课_聊一聊风变编程Python线上课程
- 机器学习入门-强烈推荐-经典好文
- 权变理论计算机管理理论,权变理论是什么意思?权变管理理论的介绍与应用
- 46 同位语和同位语从句(以及) to/at/for/with 用法搭配
- css3上箭头怎么写,纯css作箭头
- 七堂思维成长课-读后感
- CSS day_04(6.15)背景颜色图片、修饰元素、浮动
- 客户端加密服务器端解密文件,RSA(客户端加密/服务器解密)