文章目录

  • 关于DOS攻击
  • 相关攻击案例
  • 如何防御

关于DOS攻击

  • DOS攻击也叫做拒绝服务攻击
  • 其原理是
    • 模拟正常用户访问,但访问量巨大
    • 大量占用服务器资源,服务器负载和网络带宽等资源总是有限的
    • 当攻击发生的时候,服务器就会影响正常用户的访问,就无法为其提供服务
    • 在用户看来是服务器的服务挂了,其实是服务器在应付攻击者发来的巨量请求
  • 其类型有
    • 1 ) 根据TCP协议的半连接:TCP半连接
    • 正常是三次握手,攻击者只发起一次,服务器只能被迫等待攻击者的下次连接
    • 当攻击发生时,服务器产生了很多半连接来占用资源
    • 2 ) HTTP连接, 看起来就是一个正常的请求,它真的是在请求你的服务
    • 但是你服务的容量是有限的,无法应付过多的请求
    • 3 ) DNS攻击,如果服务器防御能力很强,能把很多非法的请求拒之门外
    • 那么攻击者可能会转而攻击你的DNS域名解析服务器,一般DNS访问负载很小
    • 一般而言访问负载不会那么的大,攻击DNS是非常有效的攻击手段
  • 在DOS的基础上还会有一种攻击叫做DDOS
    • 大规模分布式拒绝服务攻击
    • DOS一般会只有少量几台机器发起攻击
    • DDOS可能会有大量的机器进行攻击,其流量可达几十到上百G
      • 这些流量是分布的,通过肉鸡和代理
      • 极难防御,无法分辨哪些是正常流量哪些是攻击流量
      • 如果通过一些特别高级的知识来区分,但是也没有有效防御的手段

相关攻击案例

  • 游戏上架前受到大规模攻击,游戏私服互相DDOS攻击
  • 攻击不下来,改换成攻击DNS服务器,导致DNS服务器下线
    • 数十万网站DNS解析瘫痪,因为很难响应,一些软件后台疯狂断网重连进行中
    • 为DNS更添加了一些流量,雪上加霜,导致国内多省断网
  • 这是一件非常恶性的事件

如何防御

  • 其实防御难度极大,但仍旧可以做一些事情,比如

    • 硬件防火墙,尝试过滤一些流量
    • 交换机和路由器相应的流量过滤机制
    • 流量清洗:笼统说法,包括防火墙和路由器,交换机都可能会做
      • 具体是进行流量分析,找到特征分别攻击流量和正常流量
    • 高防IP(商业服务): 云服务厂商提供的服务
      • 当受到攻击的时候,它会给你一个ip,让你的域名指向这个ip
      • 用户和攻击者都会访问这个ip, 这个ip后面对应的是大规模的流量清洗服务
      • 会把攻击流量拦截留下正常的流量,同时云服务厂商提供非常大的带宽
      • 这样更能应对DDOS攻击
  • 其实这些防御办法都是有限的防御方案,在开发的时候我们也应该进行预防
    • 1 ) 重视轻逻辑和拆分重逻辑
    • 服务器的承载能力越高,能够承受的攻击也就越大
    • 这样,我们可以在开发的时候避免重逻辑的业务
    • 也就是,当用户访问的时候应该能够快速完成这个逻辑
    • 当逻辑做到足够轻的时候,能够承载的访问能力也就越大,被攻陷可能性就会小很多
    • 如果存在一些耗时严重的逻辑,可以把业务拆分,通过排队机制来处理,常见的是使用异步框架
    • 2 ) 当遇到失败的情况时,应该快速失败,快速返回,减少重试的次数
    • 因为负载越高的时候,加大尝试次数,就越有可能导致失败
    • 3 ) 防雪崩的机制
    • 比如重试越多,失败越多,这样只能恶性循环
    • 从机制上来说就是,快速失败,快速返回
    • 清楚了解系统的负载,当请求数快要达到极限的时候,就要拦截一些请求,就不会崩掉
    • 4 ) 有损服务
    • 允许业务不正常,允许不完美,当一个服务崩掉不影响其他服务
    • 5 ) 通过CDN服务
    • 将一些静态的文件分发到CDN上去,减少服务器负载
    • 对动态请求,CDN表现还不是很理想,如果有的话,尽可能使用CDN服务

dos/ddos攻击与防范_ddos和dos相关推荐

  1. 利用kali进行DOS/DDOS攻击(局域网内)(DHCP原理 ARP原理)

    1.什么是DOS/DDOS攻击? DOS:拒绝服务攻击(Deny Of Service) DDOS:DDOS攻击(Distributed denial of service attack) 一般来说D ...

  2. php doss_php下ddos攻击与防范代码

    php下ddos攻击与防范代码,有需要的朋友可以参考下. 文件:index.php 复制代码 代码如下: $ip = $_SERVER['REMOTE_ADDR']; ?> PHP DoS, C ...

  3. 破坏之王:DDOS攻击与防范深度剖析

    原文链接 链接 1. 笔者序 这篇Blog记录了笔者对<破坏之王: DDoS攻击与防范深度剖析>的学习记录,贡献出来和大家一起学习. 为什么学这个,笔者的服务在2021年9月4日晚上遭受了 ...

  4. DDOS学习笔记(《破坏之王-DDOS攻击与防范深度剖析》)

           最近花了点时间把<破坏之王-DDOS攻击与防范深度剖析>看了一遍,坦白来说,这本书比较浅显,可以说是入门书,当然对于我这种对DDOS一知半解的人来说,也是一本不错的书,起码我 ...

  5. 《破坏之王—DDoS攻击与防范深度剖析》

    2019独角兽企业重金招聘Python工程师标准>>> <破坏之王-DDoS攻击与防范深度剖析> 在竞争激烈的互联网领域,总有一些组织和个人利用DDoS攻击进行破坏,从而 ...

  6. 破坏之王-DDoS攻击与防范深度剖析

    破坏之王-DDoS攻击与防范深度剖析 下载:链接:https://pan.baidu.com/s/1bzVT6YkZGGg7anpQWDknjA 提取码:j7ns 网际空间的发展带来了机遇,也带来了威 ...

  7. DDOS 攻击的防范教程

    作者: 阮一峰 日期: 2018年6月26日 原文地址:http://www.ruanyifeng.com/blog/2018/06/ddos.html 一个多月前,我的个人网站遭受 DDOS 攻击, ...

  8. DDoS攻击与防范策略

    DDoS(Distributed Denial of Service,分布式拒绝服务)攻击的主要目的是让指定目标无法提供正常服务,甚至从互联网上消失,是目前最强大.最难防御的攻击之一. 按照发起的方式 ...

  9. 破坏之王 ddos 攻击 与 防范 深度剖析

    ###DDos 攻击的来源 _____________________________________________________________ 知名僵尸网络: 感染度: 收益度: 知名度: 生 ...

最新文章

  1. 无法在证书存储区中找到清单签名证书的解决办法
  2. 混合粒子群算法原理通俗讲解
  3. C#——Ellipse(椭圆)类[继承Circle(圆)类][实现IComparable接口、IComparerrT接口]DEMO
  4. 一个小小的知识点,关于强制类型转换
  5. 字符流复制Java文件改进版
  6. VHDL电子密码锁设计
  7. QMarkDowner编译
  8. Mac 登陆Linux云服务器方法
  9. nginx动静分离配置_Nginx动静分离配置实例
  10. 震惊!程序员一夜赚1W,没想到他就做了这个..........
  11. 利用Adobe AIR本地扩展支持Android开发
  12. python基础教程是什么-Python基础教程(一)
  13. volatile 变量
  14. oracle之 监听器无法启动的几个原因总结
  15. python复制文件夹不阻塞_Python线程,线程不阻塞
  16. Axure字体图标元件库 (FontAwesome v5.15.3 Free版)
  17. 算法导论答案网Solutions to Introduction to Algorithms Third Edition_开源免费完整
  18. [编程开发工具-7]:四款功能强大的代码比较工具:Araxis Merge、Beyond compare、DiffMerge、WinMerge
  19. 分布式事务与RocketMq 事务消息
  20. 体验说 | 快速谷歌浏览器翻译插件的菜单栏工具

热门文章

  1. 详细介绍一下浏览器输入www.baidu.com后会发生什么
  2. C/C++ 调用Adobe Acrobat Reader DC实现PDF文件打印
  3. 关于无法连接到代理服务器简单解决方法
  4. 用API函数区分U盘和移动硬盘
  5. 大宝(sodme)的专栏
  6. 【django】如何在{%static%}标签里头引用标签变量
  7. 成为机器人工程师需要学习那些技术
  8. MindSpore体验--在Windows10中源码安装
  9. uwsgi php,Nginx+uWSGI
  10. python的glob模块_python glob模块