我正在尝试重新设计一个具有一些继承安全漏洞的小型在线门户。最值得注意的是,由于网络架构和负载平衡器,应用程序无法访问请求的 IP 地址。通常我会坚持对来自每个唯一地址的请求数量进行限制,但考虑到某些人可以访问的疯狂范围,这可能不是最终的最佳解决方案。
我可以限制平衡器上每个地址的打开连接数,但它仍然让我对蛮力开放。
显然,我在尝试 n 次后犹豫是否要锁定帐户,因为这会给任何合法用户带来不便,但这似乎是实现这一点的极少数方法之一。
简要地考虑为每个用户分配一个唯一的 id 并将它们短暂地反弹到 HTTP 连接以捕获 X-Forwarded-For 标头然后将它们跳过回 HTTPS 但似乎这可能是一个糟糕的选择并且 MITM 可以拦截这很容易劫持会话。IT 人员到底是如何处理这种限制的?
附加:似乎正在使用的负载平衡器将允许您限制每秒的连接数。这将有所帮助,但仍可能导致在一段时间内收到数量可疑的无效请求。然而,现在似乎时间是我们可以使用的一个因素。