避免被暴力攻击

信息安全 Web应用程序 攻击 蛮力 攻击预防 网络
2021-09-12 20:52:31

上周,我们公司的网站遭到了一次奇怪的暴力破解,这次攻击实际上导致了一个管理员帐户的黑客攻击。

我们的网站是一个 wordpress 网站。攻击者在 wp-login 页面(wordpress 身份验证页面)上不断执行 POST 请求(一天 24 小时不间断)。不过速度并不快,每分钟有 4 个请求,并且每个新的 4 个请求都是使用不同的 IP 和不同的用户代理发出的。

我已经安装了一些安全工具并设置了规则,以便每 3 次错误尝试都会使用户被防火墙阻止,并使用户密码难以猜测。

这足以应对这种攻击还是我应该做些什么?

2个回答

有一些东西,选项,设置等;您可以设置它以改进应用程序和底层服务器强化。以下是我认为在易于实施和有效性之间取得良好平衡的建议。

限制连接

根据您选择的特定选项,最大的即时影响可能不会导致配置太困难,即限制谁可以连接到应用程序。

黑名单当然是一种选择,但正如您所描述的,攻击者不断更改 IP 地址。我建议你不要这样做。

白名单将是一个更好的建议,并且只允许某些 IP 访问应用程序。这将阻止攻击。

您可以将其与 VPN 结合使用,这意味着那些在家工作的人(很可能是动态 IP)可以轻松连接到应用程序,而无需让某人授予他们访问权限。

安全密码

如果这种缓慢的攻击无论如何都导致帐户被破坏,那么您确实需要质疑您的密码策略。这个网站上有很多提供密码建议的参考资料,我不会在这里深入。

如果您的密码物有所值(哈哈),那么这种攻击不应该让您分阶段。

更改默认用户名

如果可以的话,从管理员更改默认用户名,你会抛出很多人。我的意思是,我总是尝试的第一个用户是管理员。

不要!

  • 在 X 次尝试后不要禁用该帐户,您只是在请求 DoS。
  • 不要(或至少避免)将这么多IP 地址列入黑名单,它们可能是流行的 VPN 服务,许多人经常使用。

你已经做了两件好事:

  • 强制使用好的密码
  • 用户名的速率限制

但是你可以做更多的事情:

  • 更改登录页面的 URL 和默认用户名。当然,这是通过默默无闻的安全性,但它可以对抗懒惰的攻击者。
  • 限制哪些 IP:s 可以登录。如果您知道从哪里访问后端,您可以拥有一个白名单。或者您可以根据地理位置屏蔽某些国家/地区。
  • 使用验证码。当然,它们可以被绕过,但它增加了攻击者的工作量。
  • 如果锁定目标后的帐户开始导致登录问题,您可以让用户通过单击发送到其电子邮件的链接来绕过阻止。
  • 使用两因素身份验证。

其中一些很容易实现,而另一些则更难。有些限制了可用性(例如 IP 白名单),并且只有在您有一小部分用户时才可行。没有一个能永远解决问题的灵丹妙药。