微信号:phpgod

介绍:本公众号对PHP开发技术进行全面透析,所含内容适合各个阶段的PHP developer阅读和收藏,既然关注了就一定会有收获.

DDOS攻击原理分析

2016-12-29 21:37 猿哥


本文背景   

     近期公司核心业务经常被CC攻击(DDOS攻击的一种),关于DDOS攻击,猿哥还处于小白层面上的认识,这可不行,知识和技术需要努力学习实践并积累下来的,于是就有了这篇精简的DDOS攻击原理介绍。

DDOS攻击原理

    拒绝服务攻击即攻击者想办法让目标机器停止提供服务或资源访问。这些资源包括磁盘空间、内存、进程甚至网络带宽,从而阻止正常用户的访问。其实对网络带宽进行的消耗性攻击只是拒绝服务攻击的一小部分,只要能够对目标造成麻烦,使某些服务被暂停甚至主机死机,都属于拒绝服务攻击。拒绝服务攻击问题也一直得不到合理的解决,究其原因是因为这是由于网络协议本身的安全缺陷造成的,从而拒绝服务攻击也成为了攻击者的终极手法。攻击者进行拒绝服务攻击,实际上让服务器实现两种效果:一是迫使服务器的缓冲区满,不接收新的请求;二是使用IP欺骗,迫使服务器把合法用户的连接复位,影响合法用户的连接。

  DDOS(分布式拒绝服务):凡是能导致合法用户不能够访问正常网络服务的行为都算是拒绝服务攻击。 也就是说拒绝服务攻击的目的非常明确,就是要阻止合法用户对正常网络资源的访问,从而达成攻击者不可告人的目的。
  虽然同样是拒绝服务攻击,但是DDOS 和DOS 还是有所不同,DDOS的攻击策略侧重于通过很多“僵尸主机”(被攻击者入侵过或可间接利用的主机)向受害主机发送大量看似合法的网络包, 从而造成网络阻塞或服务器资源耗尽而导致拒绝服务, 分布式拒绝服务攻击一旦被实施, 攻击网络包就会犹如洪水般涌向受害主机, 从而把合法用户的网络包淹没, 导致合法用户无法正常访问服务器的网络资源, 因此, 拒绝服务攻击又被称之为 “洪水式攻击” ,常见的 DDOS 攻击手段有 SYN Flood、ACK Flood、UDP Flood、ICMP Flood、TCP Flood、Connections Flood、Script Flood、Proxy Flood 等;而 DOS 则侧重于通过对主机特定漏洞的利用攻击导致网络栈失效、系统崩溃、 主机死机而无法提供正常的网络服务功能, 从而造成拒绝服务, 常见的 DOS 攻击手段有 T earDrop、 Land、 Jolt、 IGMP Nuker、 Boink、 Smurf、 Bonk、OOB 等。就这两种拒绝服务攻击而言,危害较大的主要是 DDOS 攻击,原因是很难防范,至于 DOS 攻击,通过给主机服务器打补丁或安装防火墙软件就可以很好地防范DDOS 的表现形式主要有两种,一种为流量攻击,主要是针对网络带宽的攻击,即大量攻击包导致网络带宽被阻塞, 合法网络包被虚假的攻击包淹没而无法到达主机; 另一种为资源耗尽攻击,主要是针对服务器主机的攻击,即通过大量攻击包导致主机的内存被耗尽或CPU 被内核及应用程序占完,造成的无法提供网络服务。

 如何判断网站是否遭受了流量攻击可通过 Ping 命令来测试,若发现 Ping 超时或丢包严重(假定平时是正常的),则可能遭受了流量攻击,此时若发现和你的主机接在同一交换机上的服务器也访问不了, 基本可以确定是遭受了流量攻击。 当然, 这样测试的前提是你到服务器主机之间的 ICMP 协议没有被路由器和防火墙等设备屏蔽, 否则可采取 T elnet 主机服务器的网络服务端口来测试,效果是一样的。不过有一点可以肯定,假如平时 Ping 你的主机服务器和接在同一交换机上的主机服务器都是正常的,突然都 Ping 不通了或者是严重丢包,那么假如可以排除网络故障因素的话则肯定是遭受了流量攻击,再一个流量攻击的典型现象是,一旦遭受流量攻击,会发现用远程终端连接网站服务器会失败。
  相对于流量攻击而言, 资源耗尽攻击要容易判断一些, 假如平时 Ping 网站主机和访问网站都是正常的,发现突然网站访问非常缓慢或无法访问了,而 Ping 还可以 Ping 通,则很可能遭受了资源耗尽攻击 ,此时若在服务器上用Nistat -na命令观察到有大量的SYN_RECEIVED、TIME_W AIT、FIN_W AIT_1 等状态存在,而EST BLISHED 很少,则可判定肯定是遭受了资源耗尽攻击。还有一种属于资源耗尽攻击的现象是,Ping 自己的网站主机 Ping 不通或者是丢包严重,而 Ping 与自己的主机在同一交换机上的服务器则正常,造成这种原因是网站主机遭受攻击后导致系统内核或某些应用程序 CPU 利用率达到 100%无法回应 Ping 命令,其实带宽还是有的,否则就 Ping 不通接在同一交换机上的主机了。

扩展阅读

1.一个免费DDOS攻击测试工具集

http://www.freebuf.com/sectool/36545.html

2.那个动不动就黑了我们服务器的DDoS到底为何物

http://www.leiphone.com/news/201503/Ke6wjIO5opVpUdz0.html

3.知乎DDOS话题

https://www.zhihu.com/topic/19591790/hot

关注微信公众号:PHP技术大全

PHPer升级为大神并不难!


 
PHP技术大全 更多文章 51CTO专题文章之DDoS攻击原理及防护方法论 谈谈PHP的Reload操作
猜您喜欢 实录∣李峰谈学习分布式系统的进阶之路 2015年O2O市场的11个预测,哪个更有前景? 【宝典】这些月薪过万的面试准备你做好了吗? IT圈装逼速成指南 国内、国外Hadoop的应用现状