DDOS攻击:使用Thread.Sleep()进行防御?

时间:2011-06-19 06:21:15

标签: asp.net ddos

如果我在呈现HTTP响应时引入Thread.Sleep(x)延迟,x将根据给定IP的请求率发生变化:从请求率低时为零,并逐渐增加如果请求是一个接一个地跟随。

这是否可以成为防范DDOS的可行解决方案?

有哪些弱点?

5 个答案:

答案 0 :(得分:7)

不,它不能防止DDOS攻击。它可以防止CPU过载,但它在休眠时仍然占用线程,因此攻击者可以轻松占用Web服务器中所有已分配的线程,使其无响应。它实际上使得执行DDOS攻击变得更容易。

通过减少每秒可执行的尝试次数,可以使用睡眠来防止暴力攻击。 (缺点当然是它使DDOS攻击更具感染力。)

答案 1 :(得分:2)

它绝对不会阻止DDOS,因为应用程序前面的网络设备可能仍然不堪重负。

此外,“分布式拒绝服务”的分布式特性意味着您将从许多不同的IP获得过多的流量,而不是一个。

但无论如何,你在应用程序中所做的事情并没有绕过你的应用程序前面的任何东西而不被淹没。

答案 2 :(得分:2)

线程休眠仅用于帮助防止加密攻击。您可以使用它们来防范:

  • 攻击者使用不同挑战字符串的执行时间来确定实施中的逻辑。如果您确保所有响应都花费相同的时间,那么他们就无法使用该信息来确定算法的工作方式
  • 在重复失败的密码尝试以避免暴力攻击时增加执行时间

除了这些用途之外,线程休眠在安全性方面没有太多应用。它们占用资源(连接或会话状态),因此对于防御DoS攻击毫无价值。

答案 3 :(得分:0)

没有。 DDoS是一种攻击,它使用大量受感染的计算机来攻击目标。这将防止像DoSes这样的小型攻击,但不能防止分布式攻击。通常,您的Web服务器会崩溃,然后才会产生任何影响。

如果您遇到很多问题,我会推荐DDoS保护服务或主机。

答案 4 :(得分:0)

DDoS不能受代码保护,它更多的是保护您的服务器,通常DDoS会损害您的负载均衡器和防火墙,如果您有一些,如果不是DDoS会伤害您的服务器。

DDoS可以通过多个级别完成:UPD / TCP / HTTP等......

保护自己免受DDoS侵害的最佳方法是使用反向代理,这样如果你去你的网站就不会显示真正的IP,而且我们现在可以免费使用Cloud Flare。 https://www.cloudflare.com/

我写了一篇关于Cloud Flare如何保护你的小文章,因为我已经使用它们一年了,它们是迄今为止最好的,也是最便宜的。

http://www.yourwwwdesign.com/2012/07/23/best-practice-to-protect-your-site-from-ddos-for-free/

希望这有帮助!如果您需要更多帮助,请随时与我联系。