利用 SSDP 协议生成 100 Gbps DDoS 流量的真相探秘「建议收藏」

利用 SSDP 协议生成 100 Gbps DDoS 流量的真相探秘「建议收藏」原文地址https://www.4hou.com/technology/5979.html上个月我们分享过一些反射型DDoS攻击数据,SSDP攻击的平均大小是12Gbps,我们记录的最大的反射式DDoS攻击是:1.30Mpps(每秒数百万个数据包)2.80Gbps(每秒数十亿位)3.使用940k反射器的IP几天前,我们注意到了一个不寻常的SSDP超级放大情况的发生…

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

Jetbrains全系列IDE稳定放心使用

原文地址 https://www.4hou.com/technology/5979.html

上个月我们分享过一些反射型DDoS攻击数据,SSDP攻击的平均大小是12 Gbps,我们记录的最大的反射式DDoS攻击是:

1. 30 Mpps(每秒数百万个数据包)

2. 80 Gbps(每秒数十亿位)

3. 使用940k反射器的IP

几天前,我们注意到了一个不寻常的SSDP超级放大情况的发生,因为SSDP的放大因素可能会导致网络设备成为DDoS攻击的目标。所以这是值得深入调查的,因为这导致了利用 SSDP 协议生成 100 Gbps DDoS 流量的临界值。

攻击期间每秒数据包的数据如下图所示:

利用 SSDP 协议生成 100 Gbps DDoS 流量的真相探秘

带宽使用情况如下所示:

利用 SSDP 协议生成 100 Gbps DDoS 流量的真相探秘

这个基于IP数据包的洪水攻击持续了38分钟,根据我们采样的netflow数据,它使用了930k反射器服务器。我们估计,在38分钟内,每个反射器往Cloudflare发送了112k包。

反射器服务器遍布全球,在阿根廷、俄罗斯和中国都有大量业务。以下是每个国家或地区的IP分布图:

利用 SSDP 协议生成 100 Gbps DDoS 流量的真相探秘

可以看出,ASN上的反射器IP分布非常典型的,它几乎完全遵循了世界上最大的住宅ISP(residential ISP)规律:

利用 SSDP 协议生成 100 Gbps DDoS 流量的真相探秘

什么是SSDP攻击?

智能设备普遍采用UPnP(即插即用)协议作为网络通讯协议, 而UPnP设备的发现是通过源端口为1900的SSDP(简单服务发现协议)进行相互感知。

利用SSDP协议进行反射攻击的原理与利用DNS服务、NTP服务类似,都是伪造成被攻击者的IP地址向互联网上大量的智能设备发起SSDP请求,接收到请求的智能设备根据源IP地址将响应数据包返回给受害者

当新设备(如笔记本电脑)加入网络时,可以向本地网络查询特定设备,如互联网网关,音频系统,电视机或打印机。

虽然UPnP的安全标准很低,但这是一个关于M-SEARCH框架的规范的代码片段。

当控制点被添加到网络时,UPnP发现协议允许控制点在网络上搜索感兴趣的设备。它通过在保留的地址和端口(239.255.255.250:1900)上组播具有等于设备或服务的类型或标识符的模式或目标的搜索消息来实现。

要通过网络搜索找到,设备应向发送请求的源IP地址和端口向组播地址发送单播UDP响应。如果M-SEARCH请求的ST标头字段是“ssdp:all”,“upnp:rootdevice”,“uuid:”,后跟一个与设备发布的UUID完全匹配的UUID,或者如果M-SEARCH请求匹配设备支持的设备类型或服务类型都能对M-SEARCH框架进行回应。

这在实践中非常起作用,例如,Chrome浏览器经常要求搜索一个智能电视:

利用 SSDP 协议生成 100 Gbps DDoS 流量的真相探秘

该帧(frame)会发送到组播IP地址,寻找该地址并支持这种特定的ST(搜索目标)多屏幕类型的其他设备。

除了对特定设备类型的查询外,还有两种通用的ST查询类型:

1. upnp:rootdevice:搜索根设备

2. ssdp:all:搜索所有UPnP设备和服务

要模拟这些查询,你可以运行此python脚本:

利用 SSDP 协议生成 100 Gbps DDoS 流量的真相探秘

以下是在我的家庭网络上,显示的两个设备:

利用 SSDP 协议生成 100 Gbps DDoS 流量的真相探秘

防火墙的因素

通过上述了解,可以知道,实际上有两种提供M-SEARCH框架的方法:

1. 我们以上提出的组播地址

2. 直接通过普通单播地址启用UPnP/SSDP主机

后一种方法最有效,我们可以专门针对我现在使用的打印机IP地址为例进行说明:

利用 SSDP 协议生成 100 Gbps DDoS 流量的真相探秘

从上图中可以很明显的看到, SSDP协议不检查查询方是否与设备在同一个网络中,它将通过公共互联网提供的M-SEARCH进行回应。所有这一切都是由防火墙中的一个微小的错误配置引发的, 端口1900 UDP对外部开放,并且UDP扩展的目标将可用。

由于配置错误的目标,我们的脚本将很乐意在互联网上工作:

利用 SSDP 协议生成 100 Gbps DDoS 流量的真相探秘

放大因素

真正的攻击是由ssdp造成的,因为所有ST类型都是通过它完成的,而正是SSDP的放大因素可能会导致网络设备成为DDoS攻击的目标:

利用 SSDP 协议生成 100 Gbps DDoS 流量的真相探秘

在这种特殊情况下,单个SSDP M-SEARCH数据包会触发8个响应数据包,tcpdump视图如下:

利用 SSDP 协议生成 100 Gbps DDoS 流量的真相探秘

该目标公开了8倍数据包计数放大和26倍带宽放大,而这正是SSDP的典型使用特征。

IP欺骗因素

攻击的最后一步是欺骗易受攻击的服务器,以覆盖目标IP,为此攻击者需要欺骗他们的查询源IP地址。

我们对100 Gbps攻击样本中使用的反射器IP进行了分析后发现,在920k反射器IP中,只有350k(38%)仍然响应SSDP检测器。

在响应的反射器中,每个发送了平均7个数据包:

利用 SSDP 协议生成 100 Gbps DDoS 流量的真相探秘

响应的数据包平均有321字节,我们采样的请求包有110个字节。

根据我们对ssdp的分析,所有M-SEARCH攻击者都能够实现:

1. 7倍的包数放大

2. 20倍带宽放大

我们可以估计43 Mpps 或 112 Gbps攻击可以大致生成:

1. 6.1 Mpps的欺骗能力

2. 5.6 Gbps的欺骗带宽

换句话说,能够执行IP欺骗的单一连接好的10Gbps服务器可以提供超强的SSDP攻击。

更多SSDP服务器的因素

由于我们探测到易受攻击的SSDP服务器,因此可以收到最常见的服务器头值:

利用 SSDP 协议生成 100 Gbps DDoS 流量的真相探秘

我们看到的最常见的ST标头值如下:

利用 SSDP 协议生成 100 Gbps DDoS 流量的真相探秘

可以看出,易受攻击的IP似乎大多是无保护的家庭路由器。

开放的SSDP竟然是一个漏洞

允许家庭打印机的UDP端口1900接入互联网是十分危险的,自2013年1月至今,这个安全风险日益严重,所以通用即插即用的安全漏洞的防护就是禁止你的设备连网。

显然,SSDP的开发者没有考虑UDP的扩增潜力,按照我们的理解M-SEARCH仅在局域网中作为组播查询才有实际意义。

与DNS响应速率限制技术类似,单播M-SEARCH支持应该被弃用或至少限制速率。

M-SEARCH响应应该只发送到本地网络,通过网络路由的响应几乎没有意义和公开的描述漏洞。

如何预防超大DDoS 流量攻击

1. 网络管理员应确保入站UDP端口1900在防火墙上被阻止。

2. 不应该允许互联网服务供应商在其网络上执行IP欺骗, IP欺骗是攻击的根本原因,比如臭名昭着的BCP38。

3. 互联网服务提供商应允许他们的客户使用BGP流量来限制入站UDP源端口1900流量,以减轻大型SSDP攻击期间的拥塞。

4. 互联网提供商应在内部收集网络流量协议样本,需要netflow来识别攻击的真正来源。使用netflow可以轻松了解许多信息,比如“我的哪个客户向端口发送了6.4Mbps的流量?”这将足以跟踪DDoS攻击。

5. 开发人员应在仔细考虑UDP扩展问题的情况下推出自己的UDP协议。 UPnP应适当标准化和审查。

6. 终端用户应使用脚本扫描其网络以启用UPnP设备,这样做是为了考虑是否允许这些设备要接入互联网。

此外,还有一些在线检查网站。如果你想知道你的公共IP地址是否具有易受攻击的SSDP服务,请单击https://badupnp.benjojo.co.uk/查询。

令人遗憾的是,我们在分析中发现路由器保护最弱的国家竟是中国、俄罗斯和阿根廷。

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

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/183953.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • cropper.js 实现HTML5 裁剪图片并上传(裁剪上传头像。)「建议收藏」

    cropper.js 实现HTML5 裁剪图片并上传(裁剪上传头像。)「建议收藏」我的需求功能:在手机端实现上传头像,带裁剪框。cropper.js通过canvas实现图片裁剪,最后在通过canvas获取裁剪区域的图片base64串。cropper文档:官方文档是全英文的,好吧我看不懂。只能一个个试试效果,就有了下面的总结。官方文档<-点这1.container容器2.canvas图片3.crop裁剪框option相…

  • shell if语句

    shell if语句if语句的一般结构if条件表达式then

  • 数据库泄密 事件_sql数据库安全

    数据库泄密 事件_sql数据库安全最近,国外安全研究团队Cyble确定并验证了曾经一度风光无限的WeLeakData论坛的数据库泄漏。而该论坛,从名字就可以看出,其是自2019年以来运营最大的数据库泄漏和激活成功教程社区之一。…

  • redis 清除缓存

    redis 清除缓存

    2021年10月16日
  • redis雪崩和击穿_redis缓存雪崩

    redis雪崩和击穿_redis缓存雪崩缓存雪崩缓存雪崩是指在同一时间段大量的缓存key同时失效或者Redis服务宕机,导致大量请求到达数据库,带来巨大压力。解决方案:给不同的key的TTL添加随机值利用Redis集群提高服务的可用性给缓存业务添加将降级限流策略给业务添加多级缓存缓存击穿缓存击穿问题也叫热点key问题,就是一个被高并发并且缓存重建业务较复杂的key突然失效了,无数的请求访问会瞬间给数据库带来巨大的冲击;例如一个人查询数据库重建缓存数据,在缓存数据还没有写入数据库的时候其它的人也对进行重复

  • linux zip文件解压命令详解[通俗易懂]

    linux zip文件解压命令详解[通俗易懂]1、把/home目录下面的mydata目录压缩为mydata.zipzip-rmydata.zipmydata#压缩mydata目录2、把/home目录下面的mydata.zip解压到mydatabak目录里面unzipmydata.zip-dmydatabak3、把/home目录下面的abc文件夹和123.txt压缩成为abc123.zipzip-rabc12

发表回复

您的电子邮箱地址不会被公开。

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