什么是文件完整性监控以及为什么在 WordPress 网站上需要它?

已发表: 2019-05-22

您是否曾经不得不从恶意软件感染中清除您的 WordPress 网站? 你知道如何找出哪些代码被泄露了吗? 您是否知道您的开发人员或代理商是否在您的网站上留下了可能让您暴露的备份和剩余文件?

这篇文章解释了文件完整性监控 (FIM)如何帮助您回答这些问题。 我们将了解文件完整性监控插件如何帮助您更好地管理 WordPress 网站的文件。 及早发现问题非常重要——它可以让您减轻和限制攻击或问题的损害。

注意:文件完整性监控是通常称为文件更改扫描、文件更改监视器和类似术语的技术术语。

什么是文件完整性监控和扫描?

文件完整性扫描或监控是指比较文件指纹以确定它是否已更改的过程。 文件完整性检查软件通过创建加密哈希或系统上文件的指纹来工作。 当文件的内容发生变化时,其指纹也会发生变化。 一旦注意到文件指纹的变化,文件完整性扫描器就会通知管理员。

为什么需要对 WordPress 网站进行文件完整性检查?

繁忙的 WordPress 网站上经常发生文件更改。 当然,这些更改中的大多数都是需要的。 例如,当您添加新的媒体文件、安装或更新插件以及故意修改主题的代码时。 然而,其他更改可能远非良性或错误完成。

文件完整性扫描程序可帮助您跟踪 WordPress 网站的完整性。 换句话说,它可以帮助您保证您安装的新插件或主题没有修改您网站的文件。

主动和反应式文件完整性监控和扫描

主要有两种使用文件完整性监控 (FIM) 和扫描的主要方式:主动式和被动式。 这两种方法都在这篇文章中进行了解释。

主动安全措施

当主动使用文件完整性扫描时,它可以防止发生坏事。 以下是主动文件完整性监控检测并通知您错误的几种情况。 这使您能够在攻击者发现漏洞或站点出现问题之前修复问题。

  • 开发人员不小心复制了包含敏感信息的文本或其他类型的文件。 这些类型的文件很容易被恶意黑客找到并下载。
  • 数据库管理员在网站上留下 MySQL 数据库备份 (.sql)。 这将允许攻击者下载您的整个 WordPress 数据库。
  • 网站管理员制作 wp-config.php 的副本并将其命名为 wp-config.bak。 由于它不再是 PHP 文件,这将允许攻击者下载备份文件。
  • 有人使用 Vim 编辑器直接在服务器上编辑 PHP 文件,但没有正确退出编辑器。 这会留下一个 .swp 文件。 攻击者可以下载此类文件,因为 Web 服务器不会将其视为 PHP 代码。

反应式安全措施

许多人将被动安全措施与为时已晚联系在一起。 然而,实际上及时的反应性安全措施对于减轻攻击至关重要。 它们还有助于在事情变得更糟之前阻止损害。

以下是文件完整性扫描程序可用于快速深入了解可疑活动并在攻击发生期间之后对攻击采取行动的一些场景。

WordPress 攻击场景一

文件完整性监控插件检测到新的 PHP 文件。 它有一个不起眼的名字,并存储在/wp-content/uploads目录中。 经检查,WordPress 管理员无法将此文件归因于他或团队所做的更改。 该文件包含混淆代码,结果是一个web shell 。 管理员需要迅速采取行动。

首先,他制作了一份文件副本以供进一步分析。 然后将其删除以切断攻击者对 WordPress 站点的访问。 在调查了 Web 服务器日志后,管理员意识到该文件是由攻击者上传的,该攻击者滥用了其网站上文件上传表单中的漏洞。 掌握所有信息后,管理员可以与开发人员交谈以解决问题。

WordPress 攻击场景 2

WordPress 文件更改监视器插件会提醒管理员 WordPress 核心文件更改。 除非在 WordPress 更新期间,否则永远不会发生这种情况。 然而,这发生在另一个 WordPress 管理员安装了一个新插件之后。

经过调查,站长发现其他人也有类似的行为并报告了恶意插件:它旨在窃取 WordPress 凭据,并在用户登录时将其发送给攻击者。

站长立即删除了rouge插件并恢复了被篡改的文件。 他还使用插件重置所有 WordPress 用户的密码。

WordPress 攻击场景 3

文件完整性监控插件会通知管理员 WordPress 根目录中受密码保护的目录中的晦涩文件。 该目录存储包含敏感信息的静态文件,并使用 HTTP 身份验证使用强密码进行保护。

经过一番调查,网站管理员意识到该文件是通过配置错误的 FTP 服务器上传的,该服务器允许匿名写入访问。 管理员立即修复了 FTP 服务器的配置并禁用了匿名身份验证。

您需要关注哪些 WordPress 文件?

网站文件和文件夹扫描 与 WordPress 活动日志类似,使用文件完整性扫描插件,您需要知道要查找的内容才能使其生效。 跟踪每个文件更改,您将收到源源不断的警报。 跟踪太少,您将失去文件更改监视器插件的所有好处。

要记住的另一个重要因素是,并非所有文件更改都是恶意或有问题的活动的指标。 例如,如果备份插件将 SQL 文件写入禁止未经授权的用户访问的目录,则没有问题。 以下是区分 WordPress 目录中的良性和恶意更改的一些指示。

/wp-content/uploads/ WordPress 目录

WordPress网站往往非常活跃。 因此,通过监控每个创建或修改的文件可能会导致源源不断的警报。 在几乎所有情况下,从/wp-content/uploads/目录中排除静态文件都是有意义的。

静态文件包括图像、视频和音频等媒体文件,以及演示文稿、电子表格和 PDF 等文档。 忽略这些文件是安全的,但不包括上传目录。 你真的很想知道这个目录中是否上传了PHP文件等可执行文件。

/wp-content/cache/ WordPress 目录

这个目录是一个棘手的目录。 它由 WordPress 缓存插件使用。 根据缓存插件的配置,您可能会在/wp-content/cache/的子目录中看到各种文件,包括合法的 PHP 文件。 这些是由您的缓存插件添加的,尤其是在您启用对象缓存的情况下。 如果是这种情况,请研究行为或您的缓存插件以及它们存储的文件并根据您的发现配置文件完整性扫描程序。 如果您不使用任何缓存插件,或者您的插件不存储 PHP 和其他源代码文件,那么监控此目录会容易得多。

/wp-content/plugins 和 /wp-content/themes/ WordPress 目录

当您添加、删除或更新插件时,您将在/wp-content/plugins/ WordPress 目录中看到更改。 如果您对团队进行更改,您会注意到/wp-content/themes/目录中的文件更改。

这并不意味着这些目录中发生的所有更改总是良性的。 但是,作为一般经验法则,这两个目录中的文件更改仅应作为 WordPress 某些管理操作的结果发生。

注意:我们的 WordPress 网站文件更改监视器插件具有独特的功能。 它识别 WordPress 核心、插件和主题更改。 因此,它不会发送有关数百个文件更改的错误警报。 它会提醒您文件更改是站点更改的结果,允许您查看更改。

WordPress 根目录

WordPress 根目录是 Web 服务器上实际安装的 WordPress。 这是一个需要注意的重要位置。 通常,此处所做的文件更改为您提供了一个很好的调查信号,除非这些更改是由您完成的。

WordPress 核心文件

WordPress 核心文件是构成 WordPress Web 应用程序的实际文件。 核心文件的修改应因 WordPress 更新而发生。 它们绝不应该在任何其他条件下发生。

因此,除非您手动编辑 WordPress Core 文件(避免这样做,有更好的方法来自定义 WordPress),否则这应该是一个高质量的信号,表明有问题发生了。

如何监控我的 WordPress 网站的文件更改?

虽然可以通过许多非 WordPress 特定工具来实现文件完整性扫描,但许多工具通常需要相当长的学习曲线才能运行、配置和操作。

相反,一个更简单的方法,如果不是更好的微调结果,那就是使用 WordPress 的网站文件更改监视器插件。 该插件具有识别 WordPress 核心、插件和主题更新、安装和删除的独家智能技术。 所以它不会报告误报引发误报! 有关误报和我们的智能技术的更多信息,请参阅文件完整性监控中的误报。

该插件可识别站点结构更改。 因此,当发生更改时,插件会通知您站点结构发生更改,而不是通知您在 WordPress 站点上添加或修改的数百个文件。 它为您自动完成工作,不会引发任何误报,您也不必手动过滤结果。

适用于 WordPress 的网站文件更改监视器插件

立即下载适用于 WordPress 的免费网站文件更改监视器,以更好地管理和提高您网站的安全性。

如果我已经使用了 WordPress 安全插件怎么办?

如果您已经使用了 WordPress 安全插件,那就太好了,请继续这样做。 但是,文件完整性监控不是安全插件的重点。 通过使用专为文件完整性监控而设计的 WordPress 插件,同时考虑到性能,您仍然可以获得使用通用 WordPress 安全插件的所有好处,以及文件完整性监控为您提供的所有有价值的见解。