机器人的 HTTP GET 请求有多相似?

信息安全 http ddos 僵尸网络
2021-08-19 16:27:19

让我们假设一个僵尸网络正在通过 HTTP GET 泛洪攻击一个网站。要找到机器人,唯一的方法似乎是在考虑 URL 和标头字段的情况下找到 HTTP GET 请求的相似之处,因为请求是由某些脚本发送的。这是真的?机器人可以制作 URL 以包含一些带有随机字段的参数。标头是:HOST、Referer、User-Agent、Accept、...

这种相似性度量的想法有效吗?

3个回答

如果僵尸网络生成的请求与合法流量具有可区分的模式,那么您可以在防火墙或 Web 服务器中手动编写规则来阻止这些请求。更先进的产品可以找出这些模式并自动阻止它们。

http://code.google.com/p/mod-dosblock/是一个 Apache 模块,它允许您编写有关 HTTP 标头和这些请求的速率的规则,从而帮助防止拒绝服务。

拒绝服务工具的​​质量,意味着它模拟合法流量的能力,将使检测更容易或不可能。

是的,这通常是缓解应用程序 DDoS 攻击的方式。

一些 Anti-DDoS 服务将仅依赖于签名,但高质量的 DDoS 保护提供商将使用基于签名和基于行为的识别方法的组合,并将它们与挑战(JS 执行、Cookie 等)相结合,以识别和阻止恶意机器人流量并防止误报。

我必须在这里添加的唯一一件事是,如果您想让它正常工作,您将需要使用代理 - 最好不止一个。

显然,使用您的主服务器进行过滤显然是不明智的,因为 DDoS 攻击甚至会在过滤过程之前(和期间)耗尽资源。

可以在多个级别上减轻攻击。如果攻击来自已知的 bot 成员,防火墙可以阻止这些。如果攻击模式是可确定的,那么它可以被入侵防御系统或应用程序本身阻止。请注意,由 IPS/应用程序确定的 IP 可以反馈到防火墙以将违规者添加到阻止列表中。如果无法确定攻击模式并且不知道坏 IP,则可能需要进行某种 while 列表以允许某些已知的有效流量子集通过。

请注意,ISP 出售 ddos​​ 缓解服务并使用除上述技术之外的更复杂的技术,因为他们可以观察受害者服务器的“上游”流量,并可以比较不同的受害者和机器人,因此他们的专用“清理器”有更多工作要做。因此,一种方法是购买其中一项服务。最好先验地这样做 - 当您已经受到攻击时,费用往往会更高。