唯一识别计算机,防止黑客攻击

2024-04-26 10:30:56 发布

您现在位置:Python中文网/ 问答频道 /正文

我完全认识到这个问题的答案可能是“不”

我正在编写一个客户机-服务器程序的客户机部分,该程序将在数千台计算机上运行,并定期向服务器报告系统设置和配置。当计算机第一次启动时,当前客户机代码独立地生成一个UUID值,并使用该ID向服务器报告以唯一地标识自己。即使IP地址和其他相关数据发生更改,服务器也会使用此ID号来标识机器。你知道吗

虽然每个会话都是通过TLS进行保护的,但黑客可以很容易地识别协议,并向服务器发送数千个新的UUID值的垃圾邮件,从而诱使服务器认为网络上有成倍数量的新机器-这最终会填满数据库并触发DoS条件。你知道吗

关于如何唯一地识别一个服务器/工作站,即使是黑客也无法创建“幻影”机器,有什么想法吗?你知道吗

有什么想法吗?同样,我完全理解答案很可能是“不”。 使用TPM芯片不是一种选择,主要是因为不是所有的机器、架构或操作系统都允许这种选择。你知道吗


Tags: 数据答案代码程序服务器机器id客户机
1条回答
网友
1楼 · 发布于 2024-04-26 10:30:56

可能有更简单、更有效的方法来对服务器进行DOS/DDOS攻击。记住,当你决定在这方面花费很多精力的时候。你知道吗

以下是一些可能(部分)有效的想法。你知道吗

  • 速率限制UUID的创建。。。全球地。如果您这样做,并监视离数据库已满的点有多近,您就可以保持在潜在DOS向量的前面。

  • 严格限制任何给定客户端IP地址创建的UUID的速率。但是,你需要小心。在许多/大多数情况下,由于HTTP代理、NATing等原因,您将看不到真正的客户机IP地址。

实际上,有很多方法可以对请求进行限制。你知道吗

  • 您可以对请求进行计数,并在给定间隔内的计数超过给定阈值时拒绝它们。你知道吗
  • 您可以记录自上次请求以来的时间,并在间隔太小时拒绝请求。(这是前一个的退化版本。)
  • 您可以简单地缓慢地为请求提供服务;例如,将请求放入队列并以固定速率处理它们。你知道吗

但是,您还需要注意的是,您的防御措施不会创建替代的DDOS机制;例如,用UUID请求攻击服务器,以防止真正的用户获得UUID。你知道吗

相关问题 更多 >