在过去,很多防火墙对于DDoS攻击的检测一般是基于一个预先设定的流量阈值,超过一定的阈值,则会产生告警事件,做的细一些的可能会针对不同的流量特征设置不同的告警曲线,这样当某种攻击突然出现的时候,比如SYN flood,此时网络中SYN的报文会超过阈值,说明发生了SYN flood攻击。

但是当网络中的报文速率本身是这条曲线的时候,曲线自身就一直在震荡,在这样的曲线上如何检测异常?如何根据阈值检测攻击?真正的攻击又是哪一个点?

这个攻击几乎肉眼无法分辨。如果不是那个时间点真的出了攻击,也很难从曲线上找出来。要放大了才能看出来。

所有上述的攻击,人的肉眼可以发现出来,基本上都是因为人在观察曲线的时候对于曲线的平滑和不平滑的交界处非常敏感。攻击检测算法第一位的需求是要把人肉眼可以观察出来的波动,锯齿,突刺都检测出来。

除了上面的这些检测方法之外,还有一类,就是从整体上看历史流量情况,然后根据这个时刻的流量峰值来判断。

这种方法对历史流量进行学习,生成业务访问的流量模型,并将业务当前流量和模型作比较,出现明显偏差时就判断为DDoS攻击。这种方法对于流量比较稳定的业务比较有效。但是在我们实际的互联网业务中,发现检测效果非常的低,特别是云计算环境,每天的业务都不一样,因此检测效率较低。

看起来,要实现一个高精度的检测系统,无外乎几个条件:
1、采集目标IP的网络流量
2、对关注的指标进行存储,并描绘成曲线
3、对曲线进行攻击检测,在必要的时候告警通知运维人员

如果要对其进行量化的话则主要是两个指标:
1、误报率:在所有产生的告警中,有多少代表了真正的攻击
2、敏感度:在所有真正的攻击中,有多少被检测系统发现

为了降低误清洗率,我们又进一步的在alibeaver中提出了一种基于流量成分的检测算法,并且结合毫秒级的分光设备,实现了快速的ddos攻击检测。

实际的算法可能有N多的公式、函数和流程,我不是一个理论工作者,这里只用一个简单的例子来说明:
如下可以看到一个HTTP业务的正常情况和受攻击时的入方向流量成分。正常时的抓包:其中在协议层面上,SYN、ack、Fin、Rst、icmp等报文的比例在一定的范围之内。不管流量多大,只要业务不发生变化,其实总的比例都差不多。

而我们观察一次该业务被攻击时候的抓包,可以发现攻击发生的时候,某些成分的比例会急剧上升,也许有人会挑战我,攻击者也可以完全的模拟正常业务的请求来跟服务器进行交互,这样你的检测算法也就没用了,但是事实上是,这样做攻击者需要真正的真实IP,而且真实的交互会更快的暴露自己,虽然也没法做到像正常业务交互那样真实。

结论:这是一个典型的SYNflood攻击。通过对比正常情况和受攻击时的入口流量成分,可以看到攻击发生的时候网络中各个协议的占比发生了明显的变化。

摘自:https://xianzhi.aliyun.com/forum/mobile/read/77.html

DDos攻击的一些领域知识——(流量模型针对稳定业务比较有效)不稳定业务采用流量成本的检测算法,攻击发生的时候网络中各个协议的占比发生了明显的变化的更多相关文章

  1. 从kill-chain的角度检测APT攻击

    前言 最近一直在考虑如何结合kill chain检测APT攻击.出发点是因为尽管APT是一种特殊.高级攻击手段,但是它还是会具有攻击的common feature,只要可以把握住共同特征,就能进行检测 ...

  2. MDNS DDoS 反射放大攻击——攻击者假冒被攻击者IP向网络发送DNS请求,域名为“_services._dns-sd._udp.local”,这将引起本地网络中所有提供服务的主机都向被攻击者IP发送DNS响应,列举网络中所有服务

    MDNS Reflection DDoS 2015年3月,有报告叙述了mDNS 成为反射式和放大式 DDoS 攻击中所用媒介的可能性,并详述了 mDNS 反射式攻击的原理和相应防御方式.Q3,Akam ...

  3. WPF在3D Cad模型中利用TextureCoordinates实现颜色渐变显示偏差值的变化

    原文:WPF在3D Cad模型中利用TextureCoordinates实现颜色渐变显示偏差值的变化 注:最近在做3D机械模型重建方面的软件,需要根据光栅传感器采集的数据绘制3D图形,并显示出色差以及 ...

  4. 第三十五个知识点:给针对ECDLP问题的Pollard rho,Pollard "Kangaroo",parallel Pollard rho攻击的一个粗略的描述

    第三十五个知识点:给针对ECDLP问题的Pollard rho,Pollard "Kangaroo",parallel Pollard rho攻击的一个粗略的描述 我们的目标是对任 ...

  5. 【模型推理】量化实现分享一:详解 min-max 对称量化算法实现

      欢迎关注我的公众号 [极智视界],回复001获取Google编程规范   O_o   >_<   o_O   O_o   ~_~   o_O   大家好,我是极智视界,本文剖析一下 m ...

  6. 基于Shading Model(对光照变化一定不变性)的运动目标检测算法

    光照模型(Shading Model)在很多论文中得到了广泛的应用,如robust and illumination invariant change detection based on linea ...

  7. 【计算机视觉】基于Shading Model(对光照变化一定不变性)的运动目标检测算法

    光照模型(Shading Model)在很多论文中得到了广泛的应用,如robust and illumination invariant change detection based on linea ...

  8. 【模型推理】量化实现分享二:详解 KL 对称量化算法实现

      欢迎关注我的公众号 [极智视界],回复001获取Google编程规范   O_o   >_<   o_O   O_o   ~_~   o_O   大家好,我是极智视界,本文剖析一下 K ...

  9. 【模型推理】量化实现分享三:详解 ACIQ 对称量化算法实现

      欢迎关注我的公众号 [极智视界],回复001获取Google编程规范   O_o   >_<   o_O   O_o   ~_~   o_O   大家好,我是极智视界,本文剖析一下AC ...

随机推荐

  1. 同域之下子iframe的DOM控制问题

    new_file.html <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> ...

  2. python爬虫:找房助手V1.0-爬取58同城租房信息

    1.用于爬取58上的租房信息,限成都,其他地方的,可以把网址改改: 2.这个爬虫有一点问题,就是没用多线程,因为我用了之后总是会报: 'module' object has no attribute ...

  3. java Web(4)

    Web 应用程序状态管理 通过隐藏表单域 hidden,cookie,session,重写URL来实现: cookie存在于客户端,浏览器关闭时失效 cookie原理:服务器在响应请求时将一些数据以“ ...

  4. web前端技术与原生技术的竞争, 及未来的发展

    用户界面领域: web技术与原生技术之争 除了浏览器中运行之外, html5的技术也在app领域和移动端的安卓, iOS, 以及桌面端的window, linux以及OS X展开了竞争. 同样属于用户 ...

  5. Maven常见异常及解决方法

    异常1: [ERROR] Failed to execute goal on project biz_zhuhai: Could not resolve dependencies for projec ...

  6. django分页功能,templatetags的应用

    django 将不会将得到的html代码自动转化 from django.utils.html import format_html html =''' <a href='http://www. ...

  7. H5-data属性的一个问题

    关于前端存数据的问题,前面写过一个博客:前端页面存取数据 看个例子: <!DOCTYPE html> <html lang="en"> <head&g ...

  8. Linux下文件查找命令find笔记

    在Linux命令下如果需要快速自己系统所需要处理的文件,可以通过find命令快速进行检索. 如果想在某个路径下查找相应的文件可以执行如下命令: find path -name filename # p ...

  9. 玩转python 各种数据类型的转换

    # -*- coding: utf-8 -*- # @Time : 2019/4/28 14:27 # @Author : wujf # @Email : 1028540310@qq.com # @F ...

  10. 15.id生成的两种方式