如何模拟来自互联网的 DDoS 攻击?

信息安全 攻击 审计 ddos
2021-09-08 13:09:50

安全测试背后的想法很简单。你想知道黑客能做什么——你聘请一位像黑客一样行事的安全专家,看看他能走多远。你想知道一个邪恶的管理员能做什么——你的安全专家获得管理员权限并以这种方式完成他的工作。

我知道还有其他可能更好的方法来执行审计,但这些都是常用的方法。不幸的是,当威胁不是一个人或一组黑客,而是一个分布式僵尸网络时,它会变得很困难,它会向您发送或多或少的智能请求。你如何测试这样的场景?假设我已经准备好基础设施,并且我相信我的系统可以承受来自 DDoS 攻击的一定压力。现在我想验证我的期望并从 Internet 执行 DDoS 测试。

我在哪里可以合法获得 DDoS 模拟器?我不想从非法僵尸网络购买资源,我只想与该领域的专家合作。是否有公司为您执行此类测试,或者您至少可以租用功能强大到足以模拟 DDoS 攻击的系统?我知道通知所有相关方(如提供商等)等法律问题——这个问题的重点是如何进行这样的测试。也不是在寻找可以做到这一点的公司列表,我感兴趣的是该领域的最新技术以及市场上可用的服务。

4个回答

我认为您寻求使用数据包生成器和相应数量的系统生成数据包以匹配您寻求的负载。使用随机的有效 IP 地址作为数据包源地址,当您需要过滤时,您会发现自己非常恼火。

您可以完成所有这些操作,而无需通过 ISP 的链接发送任何信息。如果您以带宽而不是服务最大化的方式受到 DDOS 攻击,那么您的 ISP 将需要在流量到达您的链接之前将其阻塞。

您不是在寻找能够做到这一点的公司,而是对可用的服务感兴趣?你能澄清一下吗?

您真正要求的是在这种特殊情况下进行负载测试。服务器可以承受多少用户(尽可能多地访问)?这一切都在什么阈值上崩溃?基本上,您从少数“用户”开始,然后逐渐增加,直到网站放弃。

每当我们运行这样的测试时,我们都会使用托管在 Amazon 中的 Visual Studio 负载测试代理,这让我们很好地了解系统会响应。当然,Visual Studio 有很多替代品——这正是我们所使用的。

我已经对 voip 应用程序进行了负载测试,包括模拟 DDoS,但从未在测试实验室之外通过任何流量。

另一个答案提到了数据包生成器。您可以购买或租用设备来执行此操作(例如 smartbits),或者您可以编写代码来生成您需要的流量。穷人的 web 负载测试器就像一个 linux 盒子(或少数几个)一样简单,配置了一堆不同的网络接口(模拟多个流量源)和几个 curl(或其他)脚本来访问你的 web 应用程序。您可以随心所欲地变得复杂——您的数据包生成器可以是一个多线程应用程序,它发出原始数据包(请参阅libnet)以改变数据包的来源和类型。通过添加框来增加负载(或者,如果您的框受带宽限制而不是 CPU 限制,则添加 NIC)。

相当多的 ISP 提供此功能作为其负载测试功能的一部分。DDoS 保护公司也倾向于提供负载测试即服务。