dos/ddos攻击与防范_ddos和dos

dos/ddos攻击与防范_ddos和dos拒绝服务攻击

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

关于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服务
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/188247.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • jenkins allure_allure测试报告

    jenkins allure_allure测试报告前言jenkins集成了allure插件,安装插件后运行pytest+allure的脚本即可在jenkins上查看allure报告了。allure安装在运行代码的服务器本机,我这里是用的dock

    2022年7月29日
    19
  • java发送邮件-模板

    java发送邮件-模板今天写完了一个关于使用模板发送邮件的代码,作为例子保存着,希望以后用得着,也希望能够帮助到需要帮助的人以163网易邮箱为例,使用java发送邮件,发送以邮件时使用模板(.ftl文件转换为html)发送邮件内容,并附带上附件,可抄送给多个人。项目的结构目录如下邮箱配置文件mail.properties参数如下#mailsendersettings#forexample:smtp.1

    2022年5月15日
    30
  • 身为程序猿——谷歌浏览器的这些骚操作你真的废吗!【熬夜整理&建议收藏】[通俗易懂]

    前言——几日前,我那上初中的妹妹突然发VX问我说她想复制网上里搜到的一些朋友圈文案拿去发朋友圈,但是问题是复制不了!听到这个问题我嘿嘿一笑(心想:难道网上还有我爬虫爬不到的数据吗?难道妹妹没听过江湖流传的一个传说——可见即可爬吗!),我嗖的一声从床上弹坐起来,坐到电脑前,打开我的谷歌浏览器输入妹妹的网址——果然:又是这熟悉的弹窗,又是这该死的VIP才能享受的特权,不过——这些对于我们爬虫人来说都是小问题,我打开我的pycharm,啪啪一顿猛敲,一会一个百度文库的小爬虫就写好了,输入网址,下载OK

    2022年4月18日
    49
  • RAID10磁盘阵列损坏修复操作

    RAID10磁盘阵列损坏修复操作-f模拟硬盘损坏mdadm/dev/md0-f/dev/sdb1、查看损坏磁盘阵列的情况2、将损坏的硬盘设备移除3、插上新的硬盘(在真机上操作,虚拟机之间将损坏的硬盘删除,然后在添加新的硬盘即可)4、卸载挂载操作5、将新的硬盘添加到RAID10磁盘阵列中6、查看修复成功后的磁盘阵列信息(因为新添加的需要等待一段时间等待系统重新创建)7、重新挂载1、查看损坏后的磁盘阵列信息2、将损坏的硬盘从磁盘阵列中移除mdadm/dev/md0-r损坏的硬盘设备名mdadm-D/

    2022年6月3日
    38
  • 我的相册新增元旦照片二十余张(共享万岁)

    我的相册新增元旦照片二十余张(共享万岁)Chinaphotoshop.Net 2006年年历样张(以前用C#写的) 世界之窗1

    2022年7月17日
    21
  • MATLAB切比雪夫带通滤波器

    MATLAB切比雪夫带通滤波器原始信号由5Hz,50Hz,110Hz三种频率的正弦信号构成,并含有直流分量。原始信号为:y=sin(5*2*pi*x)+sin(50*2*pi*x)+sin(110*2*pi*x)+0.5;​图1 原始信号 ​使用通带为[10,100]Hz的切比雪夫滤波器,滤波后的信号时域曲线为:图2 滤波信号​对原始信号和滤波信号作傅里叶变换,观察频谱的变化(左图为原始信号…

    2022年5月4日
    152

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号