十大 WordPress 安全建议
已发表: 2023-02-15您可以采取哪些前十个步骤来保护您的 WordPress 网站? 哪些安全加固措施对您网站的安全影响最大? 安全性一直是 WordPress 社区中的热门话题,像这样的问题之所以重要是有充分理由的。 WordPress 为几乎一半的互联网提供支持,其领先地位使其成为黑客的首要目标。
每天都有成千上万的 WordPress 网站成为网络攻击的受害者。 这在 WordPress 站点总数中只是九牛一毛,但如果它发生在你身上呢? 那是巨大的。 一些网站所有者因数据丢失、数据盗窃和欺诈而遭受长期后果。 糟糕的安全政策和风险管理会引发这样的灾难。 作为 WordPress 网站所有者,拥有可靠的安全策略意味着什么? 主要风险是什么,您如何管理它们?
关键是建立安全的基础,然后通过一致的安全实践继续构建它们。 本指南将教您如何做到这一点并立即保护您的 WordPress 网站。
在本指南中,我们将深入探讨 WordPress 安全性。 您将了解针对 WordPress 的最危险的网络攻击。 您将学习如何最大限度地降低成为他们受害者的风险。 我们将为您提供我们的十大 WordPress 安全建议,并解释如何实施它们。 然后您将能够抵御当今最复杂和恶意的攻击。
WordPress 安全吗? 是的!
简而言之,是的,核心 WordPress 平台是安全的。
作为一个成熟的、有二十年历史的开源软件项目,WordPress 是最久经考验的安全建站框架之一。
开发人员和安全专家社区维护着 WordPress 核心。 此外,代码库是公开可用的。 这意味着安全研究人员可以自由地对其进行分析。 在公众监督下,通过新版本初始测试阶段的任何错误往往会很快被发现。 WordPress 定期接收更新并迅速修补在 WordPress 核心中发现的任何漏洞。 这种不断的调整提高了平台的整体安全性和质量。
是什么让 WordPress 网站不安全?
当人们使用 WordPress 构建网站时,安全性可能不是他们最关心的问题。 粗心的定制加上糟糕的安全实践(或根本没有)给整个 WordPress 生态系统带来了重大的安全风险。
不运行更新的站点所有者
WordPress 开发人员的定期更新和支持使 WordPress 高度安全。 然而,WordPress 的受欢迎程度与使用插件和主题对其进行自定义的便捷性有很大关系。 这些第三方附加组件可能会或可能不会像 WordPress 核心一样得到很好的支持和测试。 当新版本推出时,它们也需要更新。 对于具有 12-24 个插件的 WordPress 站点,每周可能会有几个新的更新可用。 不修补已知漏洞并且不执行定期更新会大大增加您的 WordPress 网站被黑客攻击的可能性。
WordPress 核心也全年接收更新。 通常会有四个主要版本。 安全和维护版本也将在需要时出现。 截至 2023 年,大约 60% 的 WordPress 网站使用最新 (6.1) 版本的 WordPress 核心。 40% 的人不这样做,这对他们的安全不利。 自 2022 年 12 月起,不再支持 WordPress 3.7 – 4.0 版,并且可能不会收到安全补丁。
不更新 PHP 的站点所有者和主机
一个更令人担忧的统计数据是,许多 WordPress 站点使用低于 7.4 的 PHP 版本。 PHP 是主机服务器环境的一部分。 它是 WordPress 运行的语言。 2023 年初,55% 的 WordPress 网站托管在 PHP 7.4 上。 这是 PHP 7 分支的最后一个主要版本。 这是目前 WordPress 官方支持的最高版本的 PHP,虽然许多 WordPress 主机提供 PHP 8。管理良好的 WordPress 主机将保持 PHP 7 的安全性,但它已经达到官方支持的生命周期结束。 随着时间的推移,WordPress 插件将越来越需要 PHP 8。 跟不上 WordPress 和 PHP 开发步伐的网站被黑客攻击的风险更高。
为什么 WordPress 安全很重要
WordPress 网站安全很重要! 如果您没有一致的安全实践,现在始终是开始认真对待它的最佳时机。 网络攻击的复杂性和数量的增加使网站安全变得极其重要,尤其是对于 WordPress 网站所有者而言。 攻击者不会简单地选择要入侵的网站。 现代网络攻击是高度自动化的,可以同时攻击数以千计的 WordPress 站点。 WordPress 的受欢迎程度和未更新站点的数量使其成为一个庞大而容易的目标。
无论您是经营博客、商业网站还是在线商店,您都需要确保客户及其数据的安全。 数据泄露会使您的业务面临风险,并严重损害您的声誉。 不良的安全措施可能导致严重的经济损失。
最近的一项研究表明,大多数中小型企业 (SMB) 认为他们不是黑客攻击的目标,但他们错了。 攻击正在增加,并且专门针对他们。 平均而言,遭遇数字安全漏洞的小公司最终支付的费用超过 100,000 美元。
五个最常见的 WordPress 安全问题
WordPress 在 2022 年面临的利用内部站点漏洞的最常见威胁是跨站点脚本 (XSS) 和跨站点请求伪造 (CSRF) 攻击,以及 SQL 注入 (SQLi)。 对被黑客入侵和受感染的网站造成的常见有效负载或损害包括后门程序和恶意重定向。 最后,最常见的攻击根本不涉及软件漏洞。 这些是暴力登录尝试、密码填充、卡片略读、梳理和分布式拒绝服务 (DDoS) 攻击。
让我们来看看这些威胁并深入研究防止它们渗透您的 WordPress 网站的解决方案。
密码填充、暴力登录和 DDOS 攻击
蛮力攻击和 DDoS 攻击是高度分布式的机器人驱动的网络攻击。 他们试图通过让托管网站的服务器因 Web 请求过载而侵入网站或使其离线。 两种类型的攻击通常都涉及由攻击者控制的机器人网络(也称为僵尸网络)。
暴力登录攻击,也称为密码猜测攻击,使用计算机网络(通常是被黑客入侵的计算机)来测试数千种字母、数字和符号的随机组合,以发现目标站点的有效登录名和密码。
密码填充是一种暴力攻击,它使用在其他地方窃取的实际密码来访问您的站点。 如果您或您网站的用户在另一个遭到破坏的网站上使用了相同的登录凭据,则密码填充可能会在您的网站上成功。
当攻击者每分钟尝试数千次登录时,可能会产生 DDoS 攻击的效果。 DDoSes 在您的服务器上抛出如此多的请求,以至于服务器超载。 有时,DDoS 攻击只是为了以这种方式使网站离线。
当谈到 WordPress 和 WooCommerce 时,梳理攻击是一个很好的例子,它试图将窃取的信用卡帐号塞入电子商务网站以进行欺诈性购买。 梳理攻击也可能具有 DDoS 效果。
跨站点脚本和请求伪造
跨站点脚本和跨站点请求伪造,也称为 XSS 和 CSRF,是试图在您的网站上运行恶意脚本以利用访问者计算机的网络攻击。 使用您的站点,这些攻击会代表您的用户从站点发送未经授权的请求。 目的是欺骗您网站的访问者并窃取他们的敏感信息或金钱。 跨站点脚本和请求伪造被认为是针对 WordPress 网站的两种最危险的网络攻击。
影响 WordPress 的跨站点脚本攻击最突出的例子之一涉及注入 WooCommerce 商店的基于 JavaScript 的卡片分离器。 从攻击者网站加载的窃取卡片恶意软件会注入访问者的浏览器中。 购买完成后,此恶意代码将尝试从结帐页面窃取关键的支付信息。
后门和 Web Shell
后门程序和 Web shell 是两种相关的恶意软件类型,它们通常在最初的违规行为中作为有效负载上传到被黑网站。 两者都会造成更深层次的损害:恶意软件感染。 两者都是恶意黑客用来深入挖掘您的服务器和 Web 应用程序或对其他站点进行欺诈和进一步攻击的工具。
后门是注入网站的软件,允许攻击者通过绕过正常的身份验证方法来未经授权访问其关键区域。 反过来,Web shell 是恶意文件管理实用程序,黑客使用它来将更多恶意负载上传到受感染的网站。
后门通常可以绕过网站所有者甚至防病毒软件。 即使已采取所有必要的安全措施,后门也允许黑客在以后返回并重新感染或进一步利用网站。 同样,如果不删除 web shell,攻击者将继续控制网站。
恶意重定向
攻击者最常见的目标之一是用恶意软件感染您的访问者。 实现此目标的最常见方法之一是将毫无戒心的用户从攻击者已获得控制权的受信任网站重定向。
黑客可以将恶意重定向放置在被黑网站的任何位置,这会使它们难以定位和删除。 通常,网站所有者必须重新安装 WordPress(这很简单)或从备份中恢复他们的整个网站(这可能更具挑战性),以便在他们修补了使此攻击成为可能的漏洞后清除恶意重定向。
作为一种 SEO 垃圾邮件,制药黑客一直是影响 WordPress 网站的最臭名昭著的攻击之一。 攻击者在受感染的 WordPress 网站上填充流行药物的垃圾关键字,试图使其在搜索引擎中排名靠前,然后将访问者重定向到销售受管制药物的欺诈性门户网站。 大多数情况下,攻击者会在 Apache .htaccess file
中放置恶意重定向或为此目的创建看似无害的 .ico 文件。
SQL注入攻击
SQL 注入攻击,也称为 SQL 插入 (SQLi),是一种利用不充分的用户输入验证的数据注入攻击,允许攻击者以恶意方式操纵网站的数据库。 SQL 注入和跨站点脚本都利用所谓的输入漏洞,这些漏洞可能会影响 WordPress 网站的某些区域。 当插件接受用户提交的数据或内容但不筛选恶意代码时,就会出现输入漏洞。 该代码可能会在您的数据库上执行查询以窃取私人数据或损坏它。
十大 WordPress 安全建议
当谈到 WordPress 网站安全时,减少攻击面的谨慎方法是关键。 了解最常见的 WordPress 漏洞和网络攻击类型将帮助您显着提高网站安全性。 以下 10 条最重要的 WordPress 安全建议是保护任何 WordPress 站点所需的核心知识。 这些建议中的大多数都相对容易遵循,并且不需要任何付费的安全解决方案。
执行定期更新,不要安装任何来自未经验证来源的软件
最重要的 WordPress 安全建议之一是定期执行核心、主题和插件更新。 确保您安装的所有软件都来自经过验证的可信来源。 由于 WordPress 是用 PHP 编写的,因此请确保您使用的是最新主要版本中受支持的 PHP 版本。 目前,它是 PHP 7.4,仅对 PHP 8 提供 Beta 支持。
默认的 WordPress 功能很少能满足企业主的所有需求,因此他们通过安装更多插件和主题来扩展平台的功能。 第三方主题和插件增加了攻击面,使 WordPress 网站容易受到更多安全威胁。
主要问题可能来自使用非官方的盗版付费插件和主题。 这些总是来自高度可疑的来源。 使用过时版本的 WordPress 并且未能修补漏洞也极具风险。
使用像 iThemes Security Pro 这样的安全插件
保持网站安全的最佳方法是为核心、主题和插件启用自动更新。 iThemes Security Pro 可以轻松跟踪所有可用的软件更新并安装新版本的 WordPress 核心以及主题和插件。 如果您管理多个 WordPress 网站,iThemes Sync Pro 允许您从一个界面执行所有管理任务,并利用正常运行时间监控和 SEO 指标跟踪。
大多数 WordPress 托管解决方案,例如 Nexcess 提供的托管云 WordPress 托管计划,还会为您处理所有软件更新,甚至还附带内置工具,例如 Visual Comparison,以帮助您在更新之前跟踪任何潜在的插件冲突和其他问题。执行任何更新。 Nexcess 还为您提供高级 WordPress 解决方案目录。 它提供 Kadence WP 作为带有自定义块的内置块主题,以帮助您设计您梦想的网站,同时确保其安全性。
制定强大的备份策略
强大的备份策略对于 WordPress 的安全绝对是必不可少的。 对您的 WordPress 网站执行定期备份可以让您做好准备,以便在发生违规、更新失败或任何其他可能出现的问题时轻松恢复。
最好有至少十天甚至两周的完整 WordPress 备份,包括您的 WordPress 数据库、网站文件和任何其他相关内容。 除了每天和每小时的备份之外,保持每周和每月的备份也非常有益。
一定要遵循数据冗余的原则。 将 WordPress 网站的工作副本保存在多个地方。 这将帮助您恢复信息,以防万一备份存档发生任何问题
您可以使用托管服务提供商提供的备份解决方案(包括 cPanel 和 Acronis 备份)以每日、每周和每月为周期保存您网站的副本。 WordPress 备份插件可以帮助您创建更灵活的备份计划。 BackupBuddy 是世界一流的 WordPress 数据保护和恢复插件。 它可以帮助您创建强大的备份策略,并在您需要时轻松访问一键式还原。
定期执行漏洞和恶意软件扫描
漏洞扫描和文件完整性监控是您可以用来保护 WordPress 网站所有关键区域的最佳工具之一。 内置的 WordPress Site Health 界面是一个很好的入门工具。 如果您需要更多为您的网站量身定制的 WordPress 安全建议,iThemes Pro 站点扫描将为您提供有关 WordPress 网站安全性的综合报告。
预防是关键,但早期攻击检测和缓解也很重要。 大多数恶意软件的主要目的是尽可能长时间不被发现。 WordPress 网站被黑客攻击数周直到其所有者注意到的情况并不少见。 iThemes Security Pro 提供高级文件更改监控,可在您的 WordPress 网站文件中发生任何可疑活动时随时提醒您。
定期执行恶意软件扫描将有助于及早识别恶意软件感染。 这是在造成不可逆转的损害之前阻止坏人和清理您的 WordPress 网站的关键。 如果您正在寻找出色的免费恶意软件扫描程序,CloudLinux 的 ImunifyAV 已被证明是极其可靠且用户友好的。
确保文件权限安全并保护 wp-config.php
WordPress 文件权限会极大地影响 WordPress 网站的整体安全性。 不正确的权限设置会使整个系统面临严重风险,尤其是当您维护自己的服务器并在其上运行多个站点时。 安全地配置您的 WordPress 文件权限是绝对必要的。
WordPress 网站最易受攻击的区域之一是其主要配置文件: wp-config.php
。 存储在那里的关键数据,包括 WordPress 数据库连接信息,使wp-config.php
成为试图控制您网站的攻击的高优先级目标。
您现在可以实施的关键 WordPress 安全建议之一是将您网站的wp-config.php
文件的权限设置为至少 640。如果您不确定其他网站的文件应具有哪些文件权限,iThemes Security Pro 的文件权限检查工具将帮助您找出答案。
不安全的文件权限和糟糕的用户隔离促进了跨账户的妥协
黑客积极利用糟糕的用户隔离和不安全的文件权限来执行危险的跨帐户攻击。 这些被称为“符号链接黑客”或“匿名狐狸”WordPress 黑客。
通过使用一个被黑网站作为入口点,攻击者可以创建指向其他网站配置文件(例如wp-config.php
的跨帐户符号链接,以暴露敏感信息并控制给定服务器上的所有网站。 仅当您的wp-config.php
文件可被同一服务器上的其他用户读取时,这种攻击才有可能。
一些 WordPress 安全建议建议移动wp-config.php
,这可能会有所帮助,但这并不能真正解决所有风险。 确保文件权限安全,并确保所有网站在同一台服务器上相互隔离。 实现这一目标的最佳方法之一是使用 CloudLinux 操作系统提供的 CageFS。
配置 Web 应用程序防火墙
另一个关键的 WordPress 安全建议是使用 Web 应用程序防火墙,或者更好的是,使用多个防御系统,如基于主机和基于云的 WAF。 Web 应用程序防火墙作为抵御所有已知网络攻击的第一道防线,根据不断更新的规则集过滤掉任何恶意流量。
WAF 根据我们定义的规则设置的多种模式扫描所有网络流量以查找任何可疑请求。 这确保了对 DDoS 和暴力攻击以及 SQLi 和 XSS 的高级别保护。
Cloudflare WAF 等基于云的 WAF 可以减轻各种攻击,同时降低源服务器上的负载。 然后,发送到托管您的 WordPress 网站的服务器的请求将受到基于主机的 WAF(例如 ModSecurity)的另一轮检查。 这两种解决方案都是完全免费的,并且被认为是 WordPress 安全性的行业标准。
设置 HTTP 安全标头
HTTP 安全响应标头是提高 WordPress 网站安全性的最有价值的工具之一。 与 Web 应用程序防火墙类似,HTTP 响应标头可以阻止对您网站关键区域的访问,并防止任何可能危及您的客户及其数据的活动。
WordPress 最重要的 HTTP 安全标头包括:
- 内容安全策略 (CSP)。 一个强大的解决方案,可以帮助缓解跨站点脚本和点击劫持,以及其他针对 WordPress 网站的危险网络攻击。 使用 CSP 可以帮助您定义可以从您的网站加载内容的资源列表,以及您的网站可以从中加载内容的资源列表。
- 设置 Cookie 。 Set-Cookie 响应标头控制如何将 cookie 从服务器发送到用户浏览器。 配置 SameSite 属性可以帮助保护您的 WordPress 网站免受跨站点请求伪造和点击劫持。
- 严格的传输安全 (HSTS)。 HSTS 响应标头确保您的 WordPress 网站只能通过 HTTPS 访问,从而实现服务器和浏览器之间的端到端加密。
大多数时候,您可以在本地.htaccess
文件中为您的 WordPress 网站配置 HTTP 安全标头。 请注意,大多数 WordPress 托管服务提供商会为您设置 HTTP 响应标头,因此您可能需要咨询托管服务商的支持团队,以了解是否需要在本地重新定义任何规则。
在上传文件夹中禁用 PHP 执行并关闭目录索引
对于 WordPress,黑客倾向于将恶意软件隐藏在通常不存储任何可执行代码的文件夹中。 其中一个文件夹是wp-content
中的 uploads 目录。 在上传文件夹中禁用 PHP 执行是个好主意。 这有助于限制恶意软件感染的范围并加快恶意软件修复。
如果您有可用的 Apache HTTP,请在 wp-content/uploads 中创建一个.htaccess
文件并将以下规则添加到其中。 这将阻止从上传文件夹加载任何 PHP 脚本。 这是攻击者可能放置恶意代码的常见位置。
除了阻止 PHP 执行之外,在您的网站上禁用目录索引是我们 WordPress 安全建议列表中的另一个重要项目。 如果没有禁用目录索引,如果浏览器缺少index.php
或index.html
文件,它将加载请求目录中存在的文件列表。
攻击者广泛利用此功能,尤其是在涉及本指南前面概述的跨帐户符号链接攻击时。 您可以通过在.htaccess
中使用以下规则来全局或基于每个目录阻止目录索引:
更改您的 WordPress 数据库前缀和默认管理员用户名
除非您更改默认安装过程,否则 WordPress 将自动为其数据库使用标准wp-
前缀并创建默认admin
用户。 由于这是公共知识,暴力和数据注入攻击假定它。
删除默认管理员用户并将 WordPress 数据库前缀更改为类似于wp2789_
的内容。 您可以使用 phpMyAdmin 或通过 MySQL 命令行界面重命名所有数据库表来完成此操作。 确保之后更新wp-config.php
中的数据库前缀。
限制对 XMLRPC 和 WordPress 登录的访问
当涉及到暴力破解和 DDoS 攻击时, xmlrpc.php
和 WordPress 登录页面是 WordPress 网站中攻击者最常针对的两个区域。 如果对这两个接口的访问不受限制,您的 WordPress 站点可能会出现性能不佳和频繁停机的问题。 此外,黑客最终很有可能破解您的管理员帐户并对您的网站造成严重破坏。
XMLRPC 是一个应用程序编程接口 (API),它允许 WordPress 与其他系统进行通信,并且自该平台成立以来它一直是 WordPress 的一部分。 然而,由于 WordPress 严重依赖 REST API,因此很少使用 XMLRPC,通常可以完全禁用而不会产生任何负面影响。 您可以将以下规则添加到您网站的.htaccess file
中,或者为此将 xmlrpc.php 文件的权限简单地设置为零。
限制对 WordPress 管理面板的访问是我们的另一项关键 WordPress 安全建议。 虽然更改 WordPress 登录地址会使它更难被发现,但保护登录页面密码或定义可以访问它的 IP 地址的专用范围将有效消除攻击者未经授权访问 WordPress 后端的风险。
使用强密码并配置多重身份验证
使用强密码的重要性怎么强调都不为过。 然而,一些 WordPress 网站所有者往往忘记了 WordPress 管理面板并不是唯一的攻击媒介。 由于攻击者获得了对其网络托管控制面板帐户的访问权限,因此大量 WordPress 网站遭到黑客攻击。
对于许多主机,您的 WordPress 网站的帐户名称对应于在主机服务器上创建的实际用户。 它很容易被猜到或公开可见。 结合其密码,凭据对可能允许您通过 SSH 和 SFTP 连接到您的站点。 这是您访问主机控制面板的方式。 如果此帐户遭到破坏,攻击者不仅可以完全访问您的站点,还可以完全访问您的整个托管帐户、电子邮件,甚至您的域名或 DNS 记录。
为您的 WordPress 管理员用户和您网站的托管控制面板帐户采用强密码策略和多因素身份验证。 如果可能,完全禁用 SSH 的密码身份验证以支持基于密钥的身份验证方法。
iThemes Security Pro 使您能够使用带有生物识别登录的密码为您的 WordPress 管理面板设置无密码身份验证。 这与为您的托管帐户设置的多因素身份验证相结合,可确保完全防止暴力攻击并保护您的网站,即使您的登录凭据已被泄露。
使用 iThemes Security Pro 实施最佳 WordPress 安全建议
作为世界上最受欢迎的内容管理系统,WordPress 是各地黑客的高优先级目标。 为了利用数据泄露和分发恶意软件,攻击者采用了广泛的复杂技术,例如数据库注入、跨站点脚本和跨站点请求伪造。 除非您的 WordPress 网站受到保护免受这些常见安全威胁,否则它可能很容易成为攻击目标。
随着无数的 WordPress 安全建议四处流传,了解如何确保您的网站安全可能会很棘手,尤其是当有多种策略可以减轻每次网络攻击时。 使 WordPress 安全性更易于访问是 iThemes 所追求的目标。 让 iThemes Security Pro 和 BackupBuddy 成为您的私人安全助手! 他们提供了 50 多种方法来保护您的 WordPress 网站免受当今最危险的网络攻击。
保护和保护 WordPress 的最佳 WordPress 安全插件
WordPress 目前为超过 40% 的网站提供支持,因此它很容易成为怀有恶意的黑客的目标。 iThemes Security Pro 插件消除了 WordPress 安全性的猜测,使保护和保护您的 WordPress 网站变得容易。 这就像拥有一名全职安全专家,不断为您监控和保护您的 WordPress 网站。
Kiki 拥有信息系统管理学士学位和两年多的 Linux 和 WordPress 经验。 她目前是 Liquid Web 和 Nexcess 的安全专家。 在此之前,Kiki 是 Liquid Web Managed Hosting 支持团队的一员,在那里她帮助了数百名 WordPress 网站所有者并了解了他们经常遇到的技术问题。 她对写作的热情使她能够分享自己的知识和经验来帮助人们。 除了技术之外,Kiki 还喜欢了解太空和收听真实的犯罪播客。