什么是ddos攻击?它的原理是什么?它的目的是什么?越详细越好!谢谢?
网站最头痛的就是被攻击,常见的服务器攻击方式主要有这几种:端口渗透、端口渗透、密码破解、ddos攻击。其中,ddos是目前最强大,也是最难防御的攻击方式之一。
那什么是ddos攻击呢?
攻击者向服务器伪造大量合法的请求,占用大量网络带宽,致使网站瘫痪,无法访问。其特点是,防御的成本远比攻击的成本高,一个黑客可以轻松发起10g、100g的攻击,而要防御10g、100g的成本却是十分高昂。
ddos攻击最初人们称之为dos(denial of service)攻击,它的攻击原理是:你有一台服务器,我有一台个人电脑,我就用我的个人电脑向你的服务器发送大量的垃圾信息,拥堵你的网络,并加大你处理数据的负担,降低服务器cpu和内存的工作效率。
不过,随着科技的进步,类似dos这样一对一的攻击很容易防御,于是ddos—分布式拒绝服务攻击诞生了。其原理和dos相同,不同之处在于ddos攻击是多对一进行攻击,甚至达到数万台个人电脑在同一时间用dos攻击的方式攻击一台服务器,最终导致被攻击的服务器瘫痪。
ddos常见三种攻击方式
syn/ack flood攻击:最为经典、有效的ddos攻击方式,可通杀各种系统的网络服务。主要是通过向受害主机发送大量伪造源ip和源端口的syn或ack包,导致主机的缓存资源被耗尽或忙于发送回应包而造成拒绝服务,由于源都是伪造的故追踪起来比较困难,缺点是实施起来有一定难度,需要高带宽的僵尸主机支持。
tcp全连接攻击:这种攻击是为了绕过常规防火墙的检查而设计的,一般情况下,常规防火墙大多具备过滤teardrop、land等dos攻击的能力,但对于正常的tcp连接是放过的,殊不知很多网络服务程序(如:iis、apache等web服务器)能接受的tcp连接数是有限的,一旦有大量的tcp连接,即便是正常的,也会导致网站访问非常缓慢甚至无法访问,tcp全连接攻击就是通过许多僵尸主机不断地与受害服务器建立大量的tcp连接,直到服务器的内存等资源被耗尽而被拖跨,从而造成拒绝服务,这种攻击的特点是可绕过一般防火墙的防护而达到攻击目的,缺点是需要找很多僵尸主机,并且由于僵尸主机的ip是暴露的,因此此种ddos攻击方式容易被追踪。
刷script脚本攻击:这种攻击主要是针对存在asp、jsp、php、cgi等脚本程序,并调用mssqlserver、mysqlserver、oracle等数据库的网站系统而设计的,特征是和服务器建立正常的tcp连接,并不断的向脚本程序提交查询、列表等大量耗费数据库资源的调用,典型的以小博大的攻击方法。
如何防御ddos攻击?
总体来说, 可以从硬件、单个主机、整个服务器系统三方面入手。
一、硬件
1. 增加带宽
带宽直接决定了承受攻击的能力,增加带宽硬防护是理论最优解,只要带宽大于攻击流量就不怕了,但成本非常高。
2、提升硬件配置
在有网络带宽保证的前提下,尽量提升cpu、内存、硬盘、网卡、路由器、交换机等硬件设施的配置,选用知名度高、 口碑好的产品。
3、 硬件防火墙
将服务器放到具有ddos硬件防火墙的机房。专业级防火墙通常具有对异常流量的清洗过滤功能,可对抗syn/ack攻击、tcp全连接攻击、刷脚本攻击等等流量型ddos攻击
二、单个主机
1、及时修复系统漏洞,升级安全补丁。
2、关闭不必要的服务和端口,减少不必要的系统加载项及自启动项,尽可能减少服务器中执行较少的进程,更改工作模式
3、iptables
4、严格控制账户权限,禁止root登录,密码登录,修改常用服务的默认端口
三、整个服务器系统
1. 负载均衡
使用负载均衡将请求被均衡分配到各个服务器上,减少单个服务器的负担。
2、cdn
cdn是构建在网络之上的内容分发网络,依靠部署在各地的边缘服务器,通过中心平台的分发、调度等功能模块,使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率,因此cdn加速也用到了负载均衡技术。相比高防硬件防火墙不可能扛下无限流量的限制,cdn则更加理智,多节点分担渗透流量,目前大部分的cdn节点都有200g 的流量防护功能,再加上硬防的防护,可以说能应付目绝大多数的ddos攻击了。
3. 分布式集群防御
分布式集群防御的特点是在每个节点服务器配置多个ip地址,并且每个节点能承受不低于10g的ddos攻击,如一个节点受攻击无法提供服务,系统将会根据优先级设置自动切换另一个节点,并将攻击者的数据包全部返回发送点,使攻击源成为瘫痪状态。
ddos攻击的原理?
一个比较完善的ddos攻击体系分成四大部分,分别是攻击者( attacker也可以称为master)、控制傀儡机( handler)、攻击傀儡机( demon,又可称agent)和受害着( victim)。
第2和第3部分,分别用做控制和实际发起攻击。
第2部分的控制机只发布令而不参与实际的攻击,第3部分攻击傀儡机上发出ddos的实际攻击包。
对第2和第3部分计算机,攻击者有控制权或者是部分的控制权,并把相应的ddos程序上传到这些平台上,这些程序与正常的程序一样运行并等待来自攻击者的指令,通常它还会利用各种手段隐藏自己不被别人发现。
在平时,这些傀儡机器并没有什么异常,只是一旦攻击者连接到它们进行控制,并发出指令的时候,攻击愧儡机就成为攻击者去发起攻击了。
了解有关dns服务器攻击有哪些?如何预防?
利用dns服务器进行ddos攻击
正常的dns服务器递归查询过程可能被利用成ddos攻击。假设攻击者已知被攻击机器的ip地址,然后攻击者使用该地址作为发送解析命令的源地址。这样当使用dns服务器递归查询后,dns服务器响应给最初用户,而这个用户正是被攻击者。那么如果攻击者控制了足够多的肉鸡,反复的进行如上操作,那么被攻击者就会受到来自于dns服务器的响应信息ddos攻击。
攻击者拥有着足够多的肉鸡群,那么就可以使被攻击者的网络被拖垮至发生中断。利用dns服务器攻击的重要挑战是,攻击者由于没有直接与被攻击主机进行通讯,隐匿了自己行踪,让受害者难以追查原始的攻击来。
dns缓存感染
攻击者使用dns请求,将数据放入一个具有漏洞的的dns服务器的缓存当中。这些缓存信息会在客户进行dns访问时返回给用户,从而把用户客户对正常域名的访问引导到入侵者所设置挂马、钓鱼等页面上,或者通过伪造的邮件和其他的server服务获取用户口令信息,导致客户遭遇进一步的侵害。
dns信息劫持
tcp/ip体系通过序列号等多种方式避免仿冒数据的插入,但入侵者如果通过监听客户端和dns服务器的对话,就可以猜测服务器响应给客户端的dns查询id。每个dns报文包括一个相关联的16位id号,dns服务器根据这个id号获取请求源位置。攻击者在dns服务器之前将虚假的响应交给用户,从而欺骗客户端去访问恶意的网站。假设当提交给某个域名服务器的域名解析请求的dns报文包数据被截获,然后按截获者的意图将一个虚假的ip地址作为应答信息返回给请求者。原始请求者就会把这个虚假的ip地址作为它所要请求的域名而进行访问,这样他就被欺骗到了别处而无妨连接想要访问的那个域名。
dns重定向
攻击者将dns名称查询重定向到恶意dns服务器上,被劫持域名的解析就完全在攻击者的控制之下。
arp欺骗
arp攻击就是通过伪造ip地址和mac地址实现arp欺骗,能够在网络中产生大量的arp通信量使网络阻塞,攻击者只要持续不断的发出伪造的arp响应包就能更改目标主机arp缓存中的ip-mac条目,造成网络中断或中间人攻击。arp攻击主要是存在于局域网网络中,局域网中若有一台计算机感染arp病毒,则感染该arp病毒的系统将会试图通过”arp欺骗”手段截获所在网络内其它计算机的通信信息,并因此造成网内其它计算机的通信故障。
arp欺骗通常是在用户局网中,造成用户访问域名的错误指向。如果idc机房也被arp病毒入侵后,则也可能出现攻击者采用arp包压制正常主机、或者压制dns服务器,以使访问导向错误指向的情况。
本机劫持
本机的计算机系统被木马或流氓软件感染后,也可能会出现部分域名的访问异常。如访问挂马或者钓鱼站点、无法访问等情况。本机dns劫持方式包括hosts文件篡改、本机dns劫持、spi链注入、bho插件等方式。
ddos攻击是利用什么进行攻击的?
ddos 攻击是利用中间代理的方式来进行攻击的。
这种攻击手法最常用的是 syn 即洪水攻击,它利用了 tcp 协议实现上的一个缺陷,通过向网络服务所在端口发送大量的伪造源地址的攻击报文,就可能造成目标服务器中的半开连接队列被占满,从而阻止其它合法用户进行访问。基本目前所有常见的 ddos 攻击都是使用这种原理来进行攻击的。