我完全认识到这个问题的答案可能是“不”。
我正在编写客户端服务器程序的客户端部分,该程序将在可能数千台计算机上运行,并将定期使用系统设置和配置向服务器报告。当计算机首次启动时,当前客户端代码独立地生成UUID值,并使用该ID向服务器报告以唯一标识自身。即使IP地址和其他相关数据发生变化,服务器也会使用此ID号来识别计算机。
虽然每个会话都通过TLS保护,但黑客可以轻松识别协议并向服务器发送数千个新的UUID值,诱使服务器认为网络上有一定数量的新机器 - 这最终会填满启动数据库并触发DoS条件。
关于如何唯一识别服务器/工作站的任何想法,即使是黑客也无法创建“幻影”机器?
有什么想法吗?同样,我完全理解答案很可能是“不”。 使用TPM芯片不是一种选择,主要是因为并非所有机器,架构或操作系统都允许使用此选项。
答案 0 :(得分:0)
对于DOS / DDOS服务器,可能有更简单,更有效的方法。当你决定在家里付出很多努力时,请牢记这一点。
以下是一些可能(部分)有效的想法。
速率限制全局创建UUID。如果你这样做,并监控你与数据库已满的距离,你可以保持领先于那个潜在的DOS向量。
严格限制任何给定客户端IP地址创建的UUID。但是,你需要小心这一点。在许多/大多数情况下,由于HTTP代理,NATing等原因,您无法看到真实的客户端IP地址。
实际上有很多方法可以对限额请求进行评级。
但是,您还需要注意,您的防御措施不会创建替代DDOS机制;例如使用UUID请求锤击服务器以防止真实用户获取UUID。