为什么 WordPress 恶意软件扫描程序毫无价值
已发表: 2023-07-18Snicco、WeWatchYourWebsite、Automattic 支持的 GridPane 和 PatchStack 的最新研究表明,在受感染环境中作为插件运行的 WordPress 恶意软件扫描程序存在根本性缺陷。 恶意软件扫描仪充其量只是针对已受损站点的清理工具。 它们不是坚固的防线,而且现在正在被恶意软件主动击败。 将恶意软件检测留给优质主机。 将安全策略重点放在登录身份验证强化、用户管理、适当的权限委派和警惕的版本管理上。
2000 年及后期:恶意软件扫描程序已经不再有用
WordPress 的恶意软件检测插件可以追溯到 2011 年左右,当时 SQL 注入攻击很常见且有效。 当时使用 WordPress 的任何人都会记得一个广泛使用的图像编辑库,名为 TimThumb。 它遭受了零日漏洞攻击,给数百万个网站带来了可怕的后果。
WordPress 安全插件就是在这种紧急情况下诞生的——作为一种反应。 今天的一些安全插件看起来仍然像 Norton Security 和 McAfee Anti-Virus。 这些是 20-30 年前流行的 Windows 安全应用程序。 但正如约翰·迈克菲在离开他创建的公司后所说,他的防病毒扫描仪已经变成了“臃肿软件”。 在他看来,这是“世界上最糟糕的软件”。
今天,根据几位 WordPress 安全研究人员的最新发现,可以对 WordPress 恶意软件扫描程序得出类似的结论。
安全错觉:WordPress 恶意软件扫描程序经受考验
在名为“恶意软件疯狂:为什么您所知道的有关 WordPress 恶意软件扫描程序的一切都是错误的”系列的第一部分中,WordPress 安全研究员 Calvin Alkan(安全公司 Snicco 的创始人)分享了他的一些工作。 Alkan 与 Patrick Gallagher(GridPane 首席执行官兼联合创始人)和 Thomas Raef(WeWatchYourWebsite.com 所有者)合作,看看是否可以击败恶意软件扫描程序。 毫不奇怪,事实证明他们可以被击败——而且非常容易。 Patchstack 对 Alkan 的结果进行了独立确认。
本地扫描仪:电话来自屋内
在测试中,阿尔坎和他的合作者首先查看了本地扫描仪。 Wordfence、WPMU Defender、All-In-One Security (AIOS) 的免费版本和 NinjaScanner 在与其安装的 WordPress 站点相同的服务器上完成所有工作。 这意味着恶意软件扫描程序使用与 WordPress 和感染它的恶意软件相同的 PHP 进程。 没有什么可以阻止恶意软件与扫描仪主动交互。 该恶意软件可以禁用它检测到的任何安全插件,将其本身列入白名单(2018 年报告),或操纵扫描仪,使它们无法检测到入侵。
接下来,阿尔坎和他的合作伙伴制作了有效的概念验证来击败恶意软件扫描程序。 (他们还主动与安全研究人员和供应商私下分享他们的漏洞利用工具包。)根据 Patchstack 首席执行官 Oliver Sild 的说法,漏洞利用工具包仅包含几行代码。
Alkan 还发现,“使用 PHP 动态构建自身”的“渲染”恶意软件无法被本地恶意软件扫描程序检测到。 最后,本地扫描仪未能检测到“进程内”恶意软件。 这种类型的恶意软件“执行一次,然后从系统中删除自身,不留下任何存在的痕迹”。
远程扫描仪:被篡改证据和清理犯罪现场所击败
在远程服务器上执行分析的扫描仪包括 Malcare、Virusdie、All-In-One Security (AIOS) Pro、Sucuri 和 JetPack Scan。 这些较新的远程扫描方法具有多个优点,包括减少占用空间以及对本地服务器性能的影响。 本地扫描程序使用您站点的服务器资源来完成其工作,这会产生性能成本。 远程恶意软件分析也不会受到操纵,因为它不会与活动恶意软件感染发生在同一 PHP 进程中。
远程扫描仪容易受到恶意软件的攻击,这些恶意软件会操纵发送回远程服务器进行分析的数据。 Alkan 构建了另一个概念验证,证明远程扫描仪可以通过这种方式被击败 - 通过隐藏恶意软件感染的“证据”。 Oliver Sild 也证实了这一结果:
“从概念上讲,可以通过将本地插件作为欺骗目标来实现数据篡改。 我们收到了一个概念验证,清楚地证明了这一点。”
稍微不同的恶意软件策略可能涉及“清理犯罪现场”并且不留下任何感染痕迹可供扫描。 阿尔坎认为这是可能的,但没有提供概念证明。
请务必注意,当您尝试检测恶意软件感染时,用于查找未经授权的更改的文件完整性扫描可能会很有帮助。 这种类型的扫描将本地文件与受保护的远程代码存储库进行比较,以检测 WordPress 核心或插件和主题文件中的非官方更改。 不幸的是,如果该过程被恶意软件篡改,则更改检测可能会失败。
不仅仅是假设:恶意软件已经在野外禁用 WordPress 安全扫描程序
继 Alkan 的漏洞利用工具包之后,Snicco 报告中最大的披露来自 We Watch Your Website 的首席执行官 Thomas Raef,该公司检测并清理被黑的 WordPress 网站:
“在过去 60 天内,有 52,848 个网站因在感染前安装了 WordFence 而遭到黑客攻击。 在 14% 的情况下(7,399),安装的恶意软件篡改了 WordFence 文件。 其他受欢迎的服务的比例甚至更高; MalCare 占 22%,VirusDie 占 24%。”
有关“We Watch Your Website”分析的详细说明,请参阅 Thomas Raef 的报告“我们如何在 60 天内识别近 150K 个被黑客入侵的 WordPress 网站”。
恶意软件扫描插件的游戏就结束了。 它告诉我们,WordPress 恶意软件扫描是纯粹的安全剧场——“采取安全措施的做法被认为可以提供安全性提高的感觉,但几乎不采取任何行动来实现这一目标。”
毫无疑问,这种情况也已经持续了很长时间。
安全行业资深人士、Kadence 营销总监 Kathy Zant 告诉 Alkan:
“在大约 18 个月的时间里,我在 WordPress 中为一家知名公司清理 WordPress 网站,在我任职期间从 2,000 多个网站中删除了恶意软件。 我看到的最早的时间范围[恶意软件击败恶意软件扫描]是在 2017 年中后期。[...]我确信它仍然存在。 而且很可能还有其他变体执行类似的操作,甚至更糟糕。”
这是坏消息:恶意软件扫描程序不可信。 好消息是他们从未提供过真正的防守。 如果你失去的只是一种安全感的幻觉,那么这实际上是迈向获得真正安全感的一步。
如何正确保护您的 WordPress 网站
继 Snicco 等报告之后,最大的问题是:“WordPress 网站如何才能获得对其安全性的高度信心?”
Alkan 认为,安全方法必须针对每个服务器堆栈进行定制,而主机执行的服务器端恶意软件扫描是网站所有者唯一有价值的扫描类型。
“WordPress 安全插件应该只做那些最好在应用程序/PHP 层完成的事情,”他强调道。
Alkan 表示,强大的用户登录安全性(例如双因素身份验证和密码以及会话安全性)是 WordPress 插件可以提供帮助的领域(例如 iThemes Security 等插件)。 这一直是我们开发团队的指导理念——安全插件最适合强化站点并减少攻击面。
强化 WordPress 网站防御的其他重要方法包括遵循最小权限原则的仔细用户管理:永远不要向用户授予不必要的权力。 对于特权用户来说,他们需要更高的安全标准——2FA、密钥、可信设备以及从未出现在已知漏洞中的强密码。
当今的攻击趋势是通过密码填充、网络钓鱼和鱼叉式网络钓鱼来智能地针对中小型企业。 这些攻击媒介利用弱登录身份验证和人为错误。 他们使用暴力和巧妙的社会工程策略来破坏个人用户帐户。 有了被黑的用户帐户,攻击者就可以造成很大的破坏。 如果他们还发现有漏洞的插件可供利用,他们可能会造成更大的伤害。 一旦进入您的系统,攻击者就可以创建后门以便随时溜回来。
强调恶意软件扫描的安全插件并不能阻止它们。
用于保护 WordPress 的最佳 WordPress 安全插件
目前,超过 40% 的网站均由 WordPress 提供支持,这使其成为网络犯罪分子熟悉的大型目标。 iThemes Security Pro 插件消除了 WordPress 安全性中的猜测,使您可以轻松保护您的 WordPress 网站。 这就像拥有一名全职安全专家,持续为您监控和保护您的 WordPress 网站。
Dan Knauss 是 StellarWP 的技术内容通才。 他是一名作家、教师和自由职业者,自 2004 年以来一直从事开源工作,自 2004 年以来一直从事开源工作。