gpt4 book ai didi

security - 如何正确防止 SSDP 反射/放大攻击?

转载 作者:行者123 更新时间:2023-12-04 08:42:40 66 4
gpt4 key购买 nike

我正在实现一个应该响应 SSDP 的设备M-SEARCH查询。

我是设备供应商,我无法控制这些设备的部署位置。

有一种已知的 DDoS 攻击使用 SSDP 搜索放大,即攻击者从虚假地址发送搜索请求,而编码不良的 SSDP 服务器会响应该虚假地址。假地址最终会受到打击。

我应该怎么做才能防止我的设备被用于此类攻击?

  • 仅设置 TTL=2 并依靠路由器丢弃数据包
  • 只响应来自自己子网的请求
  • 为有效的查询源子网添加配置选项
  • 猜猜“本地”和“全局”的 IP 地址是什么
  • 添加响应 throttle ,希望最好
  • 你的建议?

  • Wrt 1. TTL 应该根据 SSDP 规范进行配置;即使响应非常低,仍然会从本地网络泄漏。如果网络上有一个桥接 VPN,响应会泄漏得很远。

    Wrt 2. 我可以想象可以访问多个子网的公司网络(例如,一个子网用于无线客户端,另一个用于台式机,另一个用于服务器),因此我的设备必须可以跨子网搜索(尽管每个规范受 TTL 约束)。

    Wrt 3.配置和维护麻烦。

    Wrt 4.有可靠的方法吗? IPv6 怎么样?那些有例如的网络呢?/28 片全局地址?

    Wrt 5. 来自无数设备的涓涓细流仍然相当于洪流......

    引用: https://blog.sucuri.net/2014/09/quick-analysis-of-a-ddos-attack-using-ssdp.html

    最佳答案

    另一种选择是根本不回复单播请求。不过,我不能给你一个明确说明这是允许的消息来源。 One of the drafts当然读起来好像它是,如果它也是有意义的:它毕竟是一个发现协议(protocol)。
    由于在任何合理的默认配置中默认不会路由多播,并且 239.0.0.0/8 是 organization-local ,
    您可以放心地假设到达多播地址的请求是真实的。 (当然,除非您自己的网络中有攻击者,但这是一个不同的问题。)
    在 Linux 上,可以使用 IP_PKTINFO 检查传入的 UDP 数据包。套接字选项来验证它实际上是发送到多播地址:
    https://stackoverflow.com/a/5309155/705086
    http://www.linuxquestions.org/questions/programming-9/how-to-get-destination-address-of-udp-packet-600103/

    关于security - 如何正确防止 SSDP 反射/放大攻击?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32581994/

    66 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com