欢迎访问海洋网动态IP云主机中心!


IT运维工程师需知的DDoS攻击防御收集

发布时间:2020/6/19 15:59:00 阅读次数:

一.为什么进行DDoS攻击 ?

随着互联网带宽的增加和各种DDOS黑客工具的不断发布,实现DDOS拒绝服务攻击变得越来越容易,DDOS攻击事件不断增加。由于各种因素,如商业竞争,网络在线勒索等,使许多商业网站、游戏网站、IDC托管机房和其他网络聊天服务提供商一直饱受DDOS攻击,直接导致客户投诉、法律纠纷和业务损失等一系列问题。因此,如何解决DDOS攻击已成为网络服务商的当务之急。ddos2.jpg

二. DDOS是什么?

DDOS是分布式拒绝服务的英文缩写,什么是拒绝服务呢?可以理解为,任何阻止合法用户访问正常网络服务的行为都被认为是拒绝服务攻击。虽然它也是一种拒绝服务攻击,但DDOS和DOS仍然是不同的,DDOS的攻击策略侧重于通过许多“僵尸主机”(被攻击者入侵的主机或间接可用的主机)向受害主机发送大量看似合法的网络数据包,导致网络拥塞或服务器资源耗尽,并导致拒绝服务。一旦分布式拒绝服务攻击实施,攻击网络数据包将像洪水一样涌入受害者主机,从而淹没用户的合法性网络数据包,导致用户无法正常访问服务器的网络资源,所以拒绝服务攻击也称为“洪水袭击”。常见的DDOS攻击有SYN Flood、ACK Flood、UDP Flood、ICMP Flood、TCP Flood、Connections Flood、Script Flood、Proxy Flood等;DOS侧重于利用主机的某个特定漏洞导致网络栈失效、系统崩溃、主机死亡,无法提供正常的网络服务功能,从而导致拒绝服务。常见的DOS攻击包括TearDrop, Land, Jolt, IGMP Nuker, Boink, Smurf, Bonk, OOB等。就这两种类型的拒绝服务攻击而言,其主要危害主要是DDOS攻击,且难以防范。至于DOS攻击,你可以通过给主机服务器打补丁或安装防火墙软件来防止。如何处理DDOS攻击我们在后文介绍。

三.你受到DDOS攻击了吗?

DDOS主要有两种表现形式,一是流量攻击,主要是对网络带宽的攻击,即大量的攻击包导致网络带宽被阻塞,合法的网络包被虚假的攻击包淹没后无法传到主机;另一种是资源耗尽攻击,主要是对服务器主机的攻击,即由于攻击包数量较多,主机内存耗尽或内核和应用程序占用CPU,导致无法提供网络服务。

如何判断网站是否受到流量攻击?可以通过Ping命令进行测试。如果你发现Ping超时或数据包丢失严重,那么你很可能正在遭受流量攻击。如果连接到与主机相同的交换机的服务器也不能被访问,基本上可以确定它遭受了流量攻击。当然,这个测试的前提是你和服务器主机之间的ICMP协议没有被路由器和防火墙屏蔽。否则,可以使用Telnet主机服务器的网络服务端口进行测试,效果是一样的。不过 ,有一件事是肯定的,如果你通常ping主机服务器和接在同一交换机上的主机服务器是正常的,突然ping失败或严重的数据包丢失,一旦你可以排除网络故障因素,那么你必然遭受了流量攻击。流量攻击的另一个典型的现象是,一旦受到袭击,用远程终端连接到网站服务器将会失败。

相对于流量攻击,资源耗尽攻击更容易判断。如果平时Ping网站主机和网站访问正常,突然发现网站访问非常缓慢或不可访问,而Ping也可以Ping通,那么很可能遭受资源耗尽攻击。此时,如果使用Netstat -na命令观察大量存在SYN_RECEIVED、TIME_WAIT、FIN_WAIT_1和其他状态,并且ESTABLISHED很少,则可以确定它肯定遭受了资源耗尽攻击。资源枯竭攻击的另一种现象是Ping自己的网站主机不通或者数据包丢失严重,但是Ping和主机在同一交换机上的服务器正常,原因是网站主机受到攻击后,系统内核或部分应用程序的CPU利用率达到100%,无法响应Ping命令。事实上,还有一些带宽,否则Ping无法连接到同一交换机上的主机。

锟斤拷尸.jpg

 目前有三种流行的DDOS攻击:

1.SYN/ACK Flood攻击:该攻击方法是经典且最有效的DDOS攻击方法,主要通过向受害主机发送大量伪造源IP和源端口的SYN或ACK数据包来杀死各种系统的网络服务。其结果是,主机的缓存资源耗尽,或者它们忙于发送响应包,从而导致拒绝服务。由于消息来源都是伪造的,很难追查。缺点是难以实现,并且需要高带宽的僵尸主机支持。少量这样的攻击会导致主机服务器无法访问,但是它可以被ping。在服务器上使用Netstat -na命令可以观察到大量SYN_RECEIVED状态的存在。大量这样的攻击会导致ping失败和TCP/IP栈失效,系统会固化,即不响应键盘和鼠标。大多数常见的防火墙无法抵抗此类攻击。

2.TCP全连接攻击:这种攻击旨在绕过传统防火墙的检查。一般来说,大多数传统的防火墙都能够过滤TearDrop、Land等DOS攻击,但是对于正常的TCP连接,它们会忽略。其实有许多网络服务程序(如IIS、Apache和其他web服务器)只可以接受有限数量的TCP连接。一旦有大量的TCP连接,即使它们是正常的,也会导致网站访问非常缓慢甚至无法访问。全连接攻击是通过许多僵尸程序不断地与受害服务器建立大量的TCP连接,直到服务器的内存和其他资源耗尽并拖过,导致拒绝服务。这种攻击的优点是它可以绕过一般的防火墙,缺点是需要找到大量僵尸主机,而且由于僵尸主机的IP是暴露的,因此很容易追踪。

3.刷Script脚本攻击:这种攻击主要针对具有ASP、JSP、php、CGI等脚本的网站系统,调用MSSQLServer、MySQLServer、Oracle等数据库。它的特点是与服务器建立正常的TCP连接,并不断向脚本程序提交消耗大量数据库资源的查询、列表和其他调用,是一种典型的以小博大的攻击。一般来说,提交一个GET或POST命令给客户机的消耗和带宽消耗几乎可以忽略不计,而服务器可能需要从数万条记录中查找一条记录来处理此请求。这个过程的资源消耗非常大。普通数据库服务器很少支持同时执行数百条查询指令,但这对客户机来说很容易,因此攻击者只需通过Proxy代理向主机服务器提交大量的查询指令。查询指令在几分钟内消耗服务器资源并导致服务拒绝。常见的现象是网站速度慢, ASP程序失效,PHP连接数据库失败,主数据库程序占用CPU偏高。这种攻击的特点是可以完全绕过普通的防火墙保护,并且很容易找到一些Proxy代理来实施攻击。缺点是应对只有静态页面的网站时效果会大大降低,并且一些Proxy会暴露攻击者的IP地址。

 第四,如何抵制DDOS?

处理DDOS是一个系统工程,依赖某种系统或产品来阻止DDOS是不现实的。可以肯定的是,目前完全消除DDOS是不可能的,但是通过适当的措施可以抵抗90%的DDOS攻击。是的,基于成本的攻击和防御,如果抵制DDOS的能力是增强通过适当的措施,这意味着攻击者的攻击成本增加,那么绝大多数的攻击者将无法继续放弃相当于成功防御分布式拒绝服务攻击。以下是来抵制DDOS的经验和建议,与大家分享!

1.采用高性能网络设备

首先要保证网络设备不能成为瓶颈,所以在选择路由器、交换机、硬件防火墙等设备时,尽量使用知名度高、信誉好的产品。此外,如果与网络提供商有特殊的关系或协议就更好了。当大量攻击发生时,要求他们在网络接触处进行流量限制以对抗某些类型的DDOS攻击是非常有效的。

2.尽量避免使用NAT

是否一个路由器或硬件墙设备,尽量避免使用网络地址翻译NAT,因为这项技术的使用将大大减少网络通信能力,事实上,原因很简单,因为NAT需要来回翻译地址,转换过程需要网络数据包的校验和计算,所以很多CPU时间是浪费,但有时你必须使用NAT,那么没有好方法。

3.足够的网络带宽保证

网络带宽直接决定了抵御攻击的能力。如果带宽只有10M,无论采取什么措施,都难以抵御当前的SYNFlood攻击。目前,必须选择至少100M的共享带宽,最好的当然是挂在1000M处。脊梁打开了。但是,应该注意的是,如果主机上的网卡是1000M,并不意味着它的网络带宽是千兆。如果你把它连接到一个100M开关上,它的实际带宽将不超过100M,然后它将被连接到100M。带宽并不意味着有100mb的带宽,因为网络服务提供商可能会限制交换机的实际带宽为10M。这一点必须理解。

4.升级主机服务器硬件

在保证网络带宽的前提下,请尝试改进硬件配置。有效地打击每秒100000 SYN攻击数据包,服务器配置应该至少:P4 2.4 g / DDR512M / SCSI-HD,主要作用是CPU和内存,如果你有志强双CPU,使用它,必须选择DDR内存高速内存,硬盘应该选择SCSI,不要只是狂热的IDE价格不够便宜,否则它将支付高性能网络卡的价格是必须使用3 com或英特尔和其他知名品牌。如果是Realtek,在你自己的电脑上使用它。

5.使网站成为一个静态页面

很多事实证明,让网站尽可能的静态,不仅可以大大提高抵抗攻击的能力,而且会给黑客带来很多麻烦。至少到现在为止,HTML溢出还没有出现,看看吧!新浪、搜狐、网易等门户网站以静态页面为主。如果需要动态脚本调用,那么将其转移到单独的主机,以避免主服务器受到攻击。当然,它是适当的,它仍然有可能做一个数据库调用脚本。此外,最好在需要调用数据库的脚本中拒绝访问代理,因为经验表明使用代理访问您的网站80%是恶意的。

6.增强操作系统的TCP/IP堆栈

作为服务器操作系统,Win2000和Win2003具有一定的抵抗DDOS攻击的能力,但它们在默认情况下没有启用。如果它们被启用,它们可以抵抗大约10,000个SYN攻击包。如果没有启用,他们只能抵抗数百次。

7.安装专业的反ddos防火墙

8.其他防御措施

以上七条针对DDOS的建议适用于绝大多数拥有自己主机的用户。但是,如果以上措施仍然不能解决DDOS问题,就会有点麻烦。这可能需要更多的投资,增加服务器数量,使用DNS轮询或负载均衡技术,甚至需要购买七层交换机设备,使抵御DDOS攻击的能力翻倍。只要投资够深,总有攻击者放弃的时候,那你就成功了!