如何对DigitalOceanDroplet的WordPress中的蛮力攻击进行故障排除和修复
介绍
虽然通过托管服务运行 WordPress 安装可能是启动网站的一种便捷方式,但它并非没有有时可能难以排除的安全漏洞。 当这些漏洞被利用时,就会发生蛮力攻击,即快速猜测和访问登录名或密码等个人信息的网络攻击。 暴力攻击可以放置在任何漏洞中,有时可能源自您的网站。
当在 DigitalOcean 上面临来自 Droplet 的蛮力攻击时,必须迅速消除威胁。 虽然有多种方法可以识别和删除易受攻击的受损文件,但本教程旨在为您提供一些步骤,以帮助您检测、解决和保护您在 DigitalOcean Droplets 上的 WordPress 安装,使其免受未来漏洞的影响。
第 1 步 - 确定蛮力攻击的来源
解决从您的 Droplet 发起的暴力攻击问题的第一步是确定负责恶意流量的恶意软件。 有许多可用的工具和选项,但 ClamAV ( http://www.clamav.net/ ) 是最初尝试识别和删除恶意软件的好工具。
大多数 Linux 发行版的包管理系统中都有 ClamAV,通常您需要安装 ClamAV 然后运行它。
- 对于 Ubuntu、Debian 和大多数基于 Debian 的发行版,您可以运行:
sudo apt-get install clamav clamav-daemon
- 对于 CentOS 8,您需要启用 EPEL ( https://fedoraproject.org/wiki/EPEL ) 存储库,这是 Fedora 项目支持的软件包的官方存储库,然后安装 ClamAV。
您可以使用单个命令执行此操作:
dnf --enablerepo=epel -y install clamav clamav-update
安装 ClamAV 后,您可以使用以下命令扫描系统:
clamscan --infected --recursive /path/to/wordpress/sites
将突出显示的路径替换为您的 WordPress 站点的正确路径。 --recursive
参数将确保命令配置为通过子目录递归,并且我们在此示例中使用的路径指向所有 WordPress 安装所在的根文件夹。 这样,您可以使用一个命令扫描所有 WordPress 网站。 然后 ClamAV 将返回它发现的所有可疑文件的列表,但不会采取任何行动。 在调查了 ClamAV 检测到的可疑文件并确认可以安全删除它们而不会对系统造成进一步损坏后,您可能需要使用 --remove
选项重新运行该命令以删除受感染的文件。
笔记:
--remove
will delete any files it finds suspicious with no input from you, so it is NOT RECOMMENDED to run with --remove
as your first scan until you can confirm the results.
如果 ClamAV 没有发现任何恶意软件,您将需要手动调查并找到恶意软件。 虽然有几种方法可以做到这一点,但一个好的起点是根据文件的时间戳信息查找和识别任何最近上传的文件。
为此,请使用“查找”命令:
find /path/to/wordpress/site -mtime -DAYS
要使用此命令,请将 /path/to/wordpress/site
替换为 WordPress 站点的文件路径,将 -DAYS
替换为返回的天数。 例如,如果你想回顾 1 天,那就是 -1
; 回顾 10 天,将是 -10
。
花时间调查您不知道的任何已上传或修改的文件。
第 2 步 — 更新您的 WordPress 安装
识别恶意软件后,防止恶意攻击再次发生的下一步是更新您的 WordPress 安装。 为 WordPress 和任何已安装的主题或插件打补丁是明智的,以确保如果妥协是在插件或主题的安装目录中,您已经删除并重新安装了该插件或主题。 您可能能够删除所有恶意文件,但在大多数情况下,首选干净安装受感染的组件。
在大多数情况下,您可以在 WordPress 的管理 UI 中执行这些更新,而无需使用任何其他工具。 WordPress 还提供了一个自动更新选项,鼓励您启用该选项,以减少您的网站可能容易受到新发现的安全问题的影响的时间。
防止恶意攻击的另一条有用建议是更新所有组件,即使是那些标记为非活动的组件。 在某些情况下,即使是禁用的插件和主题也可能是可访问的,并且如果不保持更新,则可能会受到损害。 如果您确定不需要主题或插件,最好的做法是将其全部删除。
在某些情况下,作者可能会放弃主题或插件,当您安装了最新版本时,插件或主题可能存在尚未修复的问题。 在这种情况下,您可能需要考虑其他选项来替换当前已更新但仍是妥协来源的废弃组件。
第 3 步 — 保护您的 WordPress 安装免受恶意攻击
一旦您删除了任何恶意文件并确保所有组件都已更新,就该保护您的 WordPress 安装了。 我们建议的下一步是更改有权访问管理 UI 的用户的所有密码,尤其是那些拥有完全管理员权限或能够上传或修改文件内容的用户。
如果您不知道当前配置,检查您的文件系统权限也是保护 WordPress 安装的重要步骤,因为错误的权限可能会允许您不想要的文件读取和写入访问权限。 WordPress here 很好地概述了设置应该是什么以及如何更新它们。
作为保护您的 Droplet 安装的一个步骤,您还可以安装一个插件来限制登录尝试失败的次数,从而显着降低暴力攻击的风险。 wp-limit-login-attempts 插件是一个流行的选择。
最后,考虑使用 WordPress 安全插件,例如 Jetpack 或 Wordfence。 这些插件有助于积极打击入侵企图并提供最后一层安全保护,以确保您的网站仅用于您想要的用途。
使用 Jetpack 或 Wordfence 等服务器端插件的替代方法是调查 Cloudflare 的缓存和 Web 应用程序防火墙 (WAF) 服务是否适合您的特定用例。 要了解有关此选项的更多信息,请查看 CloudFlare 的文档 。
结论
当暴力攻击源自您的 Droplet 时,导航故障排除选项可能很麻烦,但在本教程中,我们分享了一些步骤来帮助您检测、解决和保护您跨 Droplets 的 WordPress 安装。 For more security-related information to help manage Droplets, check out our [Recommended Security Measures article] (recommended-security-measures-to-protect-your-servers).