【温馨提醒】本文内容源于互联网收集整理,不代表Red3观点!若有咨询“UDP反射放大攻击”等有关国外服务器、云主机租用、托管、配置、价格问题,请咨询Red3客服,为您答疑解惑!

数据字节

放大攻击原理

很多协议在响应包处理时,要远大于请求包,一个字节的请求十个字的响应,十个字节的请求一百个字的响应,这就是UDP反射放大攻击最根本的原理。

而且,最重要的一点,UDP是不稳定的,不需要请求建立连接的

那么我就有点想法了

使用SOCKRAW,伪造UDP头和IP头,是否让目标流量返回给目标自己呢?事实上 我可以一点流量都接收不到,而目标在收到请求后需要放大还要将响应返回给自己。

另外一种用法,我搜集到了很多这种服务器,我伪造UDP头和IP头,伪造为我要攻击的目标,那么这些服务器在接收到我发送的数据后,所有的响应信息全部都会返回到目标IP去,这样也可以达到攻击的效果。

正因为UDP协议是可以伪造的,所以企业在溯源时很难找到攻击者是谁。

如今DDoS产业已经泛滥,技术成本极低,黑产链已经相当的完善和成熟,各个人员的分工,资源获取,集中管控,需求中介,简易化操作工具,方便快速的发起攻击,已经成为黑产界最喜爱的方式之一。

发送原始UDP封包 实现

/*

使用IP头包含选项

创建原始套接字之后,再打开IP_HDRINCL 选项,即可在IP头中封装自己的协议,而不是仅仅使用系统预定义的协议。

一般可以使用这种方法来发送UDP和TCP数据

IP数据报格式:

Version域:这4位指定了数据报的IP版本。对IPV4来说此域值为4.

IHL(IP header length 的缩写):因为IP头长度不是固定的,所以需要这4位来确定IP数据报中数据部分的开始位置。大多数IP数据报不包含此选项,所以通常IP数据报有20个字节的头长度。

Type of service:包含在IPV4头中,用来区分不同类型的IP数据报

Total length:这是IP数据报的总长度,IP头加数据。这个域是16位长,所以IP数据报大小的理论最大值是65535字节。然而数据报的长度很少有超过1500字节的。

Identification域:用来表示已发送的IPV4封包。通常,系统每发送一次封包就增加一次这个值。

Falgs和Fragment offset域:当IPV4分包被分割为较小的包时使用这2个域。DF代表不要分割(dont fragment),这是一个给路由器的命令,告诉他们不要分割此数据报,因为目标主机没有能力将它们恢复回来(例如:机器在启动时)。MF代表更多的分割(More Fragments)。

Time to live域:包含TTL域是为了确保数据报不会永远呆在网络里打圈。每当数据报被路由器处理时,这个域就会减1,如果减到0,此数据报就会被丢弃。

Protocol域:当IP数据报到达目的地时才使用此域,它指定了IP数据报的数据部分将要传递给哪个传输层协议,例如,值6表示数据部分要被传递给TCP,值17表示数据部分要被传递给UDP。

Header checksum 域:头校验和帮助路由器检测接收到的IP数据报中的位错误。

Source address 和 Destianation address域:指定此数据报的源IP地址和目的IP地址。

Options域:选项域是一个长度可变的域,它包含了可选的信息。最大值是40字节。