大量登录尝试失败 - cPanel Hulk Brute Force

大量登录尝试失败 - cPanel Hulk Brute Force

修改:请注意,这个问题专门针对通过 cPanel 和 WHM 管理的服务器,这使得它与涉嫌重复问题

过去一个月,我的个人网络服务器收到了数千条此类通知。请注意,我的服务器主要由 WHM/cPanel 管理,尽管我拥有 root ssh、ftp 和其他传统接入点。

这些攻击开始于尝试root,但后来发展到尝试用户帐户,我不确定他们是如何猜出正确的用户名(尽管是错误的密码)。

有没有办法可以防止此类攻击发生?

此外,这里列出了今天自动禁令的数量和一些 IP 地址源 - 过去一个月的攻击时间基本上是在东海岸时间早上 6:30 到晚上 11 点左右:

在此处输入图片描述

答案1

您这样说:

过去一个月,我的个人网络服务器收到了数千条这样的通知。

不要惊慌!只需root在系统上禁用该帐户即可。

欢迎来到现代互联网!不要把这些通知当做针对个人的,也不要把这些通知当做针对您的网络服务器的攻击信号。相反,这是任何以某种方式存在于网上的网络服务器的正常现象:僵尸网络大军不断扫描网络服务器以寻找弱点,然后有时因各种原因/黑客攻击而利用这些弱点。

如果您担心,解决此问题的最佳、最简单和最容易的方法就是禁用root服务器上的用户,然后将sudo权限分配给系统上的其他用户。只需这样做,您就可以解决问题,而无需安装任何其他软件。

是的,有些人会建议安装以下软件Fail2banroot在您的服务器上,虽然我不认为它是在线防御库中的一个坏工具,但如果您没有做一些基本的事情,例如禁用系统上的用户帐户,它可能会给您一种虚假的安全感。

在您的系统上执行此操作的最简单方法是首先将sudo权限分配给系统上除 之外的任何其他用户root。完成后,通过 SSH 以该用户身份登录并运行以下命令:

sudo passwd -l root

这将有效锁定用户的帐户。因此,让这些机器人从现在起root一直尝试通过该功能登录……禁用后,这些努力都是徒劳的。rootroot

话虽如此......也许你应该担心一下。

但你接着说;重点是我:

这些攻击始于root试图但后来又尝试使用用户账户我不确定他们是如何猜出正确的用户名(尽管密码是错误的)。

即使有几个用户名与系统上的用户相匹配,也不必担心随机命名的帐户是否会被“黑客入侵”。

所以你说他们正在尝试“用户帐户”,但是什么用户?他们是否与系统上的有效用户匹配?如果他们与系统上的有效用户不匹配,那么不要担心……即使你不时看到有人试图以tomcat或身份登录testuser。这些机器人只是在他们库中的数十/数百/数千个用户名中循环,看看他们可能能够进入哪个帐户……我不会为此失眠。

但如果“黑客”企图针对纯粹特定/已知账户?那你就要担心了。

但话虽如此,如果这些袭击是有针对性的仅有的到您系统上存在的用户,那么您可以假设黑客以某种方式获得了您的/etc/passwd文件的副本。首先 — 尽管该文件的历史名称passwd不包含用户密码,但包含的是基本用户信息。如果攻击者拥有该/etc/passwd文件,那么你的问题就大得多了

如果特定/已知帐户被“黑客入侵”,您的 Web 应用程序可能也被黑客入侵。

通常在 Web 服务器上,主要的攻击点是不是通过 SSH 或类似的东西,但通过 Web 应用程序/服务器本身。这意味着如果您的网站基于已知的 CMS 系统(如 WordPress 或 Joomla!),黑客会设法通过该 Web 应用程序进入您的系统,然后进入更深层次的系统,这相当于拥有 SSH 访问权限,但没有深度 SSH 访问权限。

也就是说,运行在 Apache 等软件上的 Web 服务器由非 root 用户www-data或类似人员管理。Web 应用程序被攻陷意味着黑客拥有与 Apache 相同的访问权限,但“写入”级别不会有太大的深度……但“读取”级别的访问权限仍然令人恐惧。

因此,完全可以想象,您服务器上的 Web 应用程序遭到了黑客攻击,Apache 用户级别的负载被投放到您的服务器上,他们以某种方式/etc/passwd通过这种被盗用的访问权限获取了文件。现在他们正试图通过该/etc/passwd文件中的用户名进入。

如果您的网络应用程序遭到黑客攻击该怎么办。

那么你应该害怕吗?如果情况确实如此,那么是的。但Fail2ban现在救不了你了。禁用root仍然可以在一定程度上拯救你。但如果你的 Web 应用程序受到威胁,则应该清理。SSH 尝试只是在已经感染了某种病毒的服务器上进行黑客攻击。

如何清理您的 Web 应用程序?没有简单的答案,但如果您使用的是 WordPress — 例如 — 请考虑重新安装 WordPress,然后通过备份重新安装您的站点自定义设置。

是的…… 正是这样的事情让备份和代码恢复管理变得如此重要。但目前这里没有人能解释你应该如何处理这个问题。这完全是另一个问题,根据你对 cPanel 的使用,可能需要外部技术人员的额外帮助。但必须提一下。

答案2

可以通过阻止可疑尝试(基于重复)并放弃对盒子的访问权限来阻止这种暴力攻击iptables

在这种情况下,有一个非常有用的工具叫做失败禁止。此工具基本上会检查一些日志文件,寻找您在配置失败中定义的模式,并且如果在 Y 秒内来自同一 IP 有 X 次尝试,则会阻止该 IP 一段时间,以便无法进一步尝试。

正如你所说,Dev-Ops 不是你的强项,有一个链接这很好地说明了所需的部分,因此它工作起来不会太混乱。因此,您只需找到记录暴力破解尝试的日志文件,定义一个新的监狱,这只是上述内容的组合,可能最“困难”的事情是获得一个与日志文件中的那些条目匹配的模式,这些条目基于正则表达式。如果您需要帮助,您可以使用其中一些行更新您的问题,我可以帮您合成一个匹配的正则表达式。

剩下的只是启动守护进程,不用再担心那些暴力破解尝试。

笔记:Fail2Ban 中已经定义了一些内置的jail,它们运行得相当好(就像 SSH 一样)。

相关内容