十大 WordPress 安全漏洞及其修复方法

已发表: 2018-11-28

这句话足以让您了解世界各地正在发生的安全问题。 事实上,网站安全是一个长期以来一直让网站所有者不眠之夜的话题。 没有人能够为其业务站点实现 100% 的安全性。

根据 Juniper Research 进行的一项调查,到 2019 年,网络犯罪将使企业损失超过 2 万亿美元。这是一个令人震惊的统计数据,它表明每天保护网站变得非常困难。 同时,您需要找到保护您网站的方法,因为它包含您最重要的数据以及敏感信息。

众所周知,WordPress 为 31% 的互联网提供支持,因此很明显 WordPress 平台将面临最多的网络安全问题。 大多数用户都信任这个出色的平台,这就是他们在此基础上建立业务站点的原因。

然而,根据 Sucuri 进行的一项研究,WordPress 是 2018 年受感染最多的网站平台。

WordPress in 2018

因此,对于所有人来说,了解各种 WordPress 安全漏洞以及修复它们的方法变得很重要。 那么,让我们开始一个一个地分析每个漏洞。

有两种类型的公司:被黑客入侵的公司和不知道自己被黑客入侵的公司。

——约翰·钱伯斯

十大 WordPress 安全漏洞

  1. 不安全的虚拟主机
  2. 使用弱密码
  3. 不更新 WordPress
  4. SQL 注入
  5. 忘记保护 WordPress 配置文件
  6. 不更新插件或主题
  7. 使用普通 FTP
  8. 不更改 WordPress 表前缀
  9. 恶意软件
  10. 文件权限不正确

1. 不安全的虚拟主机

这可能是 WordPress 网站容易被感染的最大原因之一。 与所有其他网站一样,WordPress 网站也托管在服务器上。 有时会发生托管服务提供商公司不保护其平台的情况。 在这种情况下,您的 WordPress 网站很有可能受到外来者的攻击。

解决此问题的方法

解决此问题的最佳方法是将您的 WordPress 网站托管在一些一流的托管平台上。 这是您可以用于您的商业网站的最佳 WordPress 托管服务提供商的列表。

最佳 WordPress 托管服务提供商

  • 蓝主机
  • HostGator
  • 场地地面
  • 梦想主机
  • InMotion 托管

2.使用弱密码

密码是 WordPress 网站安全的关键部分。 您始终需要确保为您的 WordPress 帐户使用强密码。 根据 WPTemplate 进行的一项研究,全球 8% 的 WordPress 网站因周密码而被黑客入侵。 一周密码可以轻松访问以下内容:

  • WP 管理员帐户
  • C-面板帐户
  • FTP 帐户
  • 您的 WordPress 数据库

这就是为什么为您的 WordPress 网站设置一个强密码变得极为重要的原因。

解决此问题的方法
  • 形成一个复杂的密码

    解决此问题的方法之一是为您的站点设置一个复杂的密码。 始终尝试使用字母、数字、特殊字符等的组合来制作密码。 它将帮助您制作一个不易被猜到的强密码。

  • 使用密码管理器

    解决此问题的另一种方法是使用密码管理器。 密码管理器是一种应用程序,它允许您将所有密码存储在一个地方,然后通过主密码进行管理。 任何密码管理器的独特之处在于它们具有自动填充功能。

    以下是一些最佳密码管理器的列表:

    • 最后通行证
    • 1密码
    • 达士兰
  • 双重身份验证

    这是保护您的 WordPress 网站免遭密码窃取的最佳方法之一。 在双因素身份验证场景中,如果某个攻击者能够猜出您的 WordPress 网站的密码,那么他/她将无法登录您的网站。 他/她将需要一个发送到您手机的安全代码。 通过这种方式,您将能够保护您的网站。

    在 WordPress 中设置双重身份验证的主要方法有:

    1. 短信验证
    2. 谷歌身份验证器应用

3.不更新WordPress

许多用户对其中一个 WordPress 版本感到满意,因此他们不会定期更新其 WordPress 版本。 其背后的主要原因是,他们担心这会破坏他们的网站。 但是,每个新版本的 WordPress 都附带了安全漏洞修复程序,这就是为什么更新您的网站对您来说很重要。

解决此问题的方法

始终检查最新版本的 WordPress,并尽量保持您的网站更新。 这将最大限度地减少任何安全问题的可能性。 对于那些担心更新 WordPress 会造成网站崩溃的人,可以备份他们的网站。 因此,如果新版本不能按照您的要求工作,那么您可以随时恢复。

4. SQL注入

SQL 注入是获取网站访问权限的最古老的方法之一。 众所周知,SQL 是一种用于与 WordPress 数据库配合使用的语言,这就是为什么在这种类型的攻击中,黑客会将 SQL 命令注入您的站点以检索信息。 黑客一天比一天聪明,他们每天都在进行新的 SQL 注入。 因此,作为网站所有者,您应该了解解决此问题的方法。

解决此问题的方法
  • 扫描 SQL 注入漏洞

    您应该定期检查 WordPress 网站中的 SQL 注入问题。 但是,手动执行这可能是一项非常困难的任务,这就是您应该为此目的使用一些安全扫描工具的原因。 以下是最佳安全扫描工具列表:

    • WordPress 安全扫描
    • Sucuri SiteCheck
    • WP扫描
  • 将代码添加到您的 .htaccess 文件

    防止 SQL 注入的另一种方法是在 .htaccess 文件中添加特定代码。 .htaccess 是用于 Web 服务器的配置文件,因此,通过更改该部分,您将能够限制外部人员对您的 WordPress 数据库的访问。

    在 .htaccess 文件中添加以下代码:

    RewriteEngine On
    RewriteBase /
    RewriteCond %{REQUEST_METHOD} ^(HEAD|TRACE|DELETE|TRACK) [NC]
    RewriteRule ^(.*)$ - [F,L]
    RewriteCond %{QUERY_STRING} ../ [NC,OR]
    RewriteCond %{QUERY_STRING} boot.ini [NC,OR]
    RewriteCond %{QUERY_STRING} tag= [NC,OR]
    RewriteCond %{QUERY_STRING} ftp:  [NC,OR]
    RewriteCond %{QUERY_STRING} http:  [NC,OR]
    RewriteCond %{QUERY_STRING} https:  [NC,OR]
    RewriteCond %{QUERY_STRING} (<|%3C).*script.*(>|%3E) [NC,OR]
    RewriteCond %{QUERY_STRING} mosConfig_[a-zA-Z_]{1,21}(=|%3D) [NC,OR]
    RewriteCond %{QUERY_STRING} base64_encode.*(.*) [NC,OR]
    RewriteCond %{QUERY_STRING} ^.*([|]|(|)|<|>|e|"|;|?|*|=$).* [NC,OR]
    RewriteCond %{QUERY_STRING} ^.*("|'|<|>||{||).* [NC,OR]
    RewriteCond %{QUERY_STRING} ^.*(%24&x).* [NC,OR]
    RewriteCond %{QUERY_STRING} ^.*(%0|%A|%B|%C|%D|%E|%F|127.0).* [NC,OR]
    RewriteCond %{QUERY_STRING} ^.*(globals|encode|localhost|loopback).* [NC,OR]
    RewriteCond %{QUERY_STRING} ^.*(request|select|insert|union|declare).* [NC]
    RewriteCond %{HTTP_COOKIE} !^.*wordpress_logged_in_.*$
    RewriteRule ^(.*)$ - [F,L]
    

5. 忘记保护 WordPress 配置文件

WordPress 配置文件 (wp-config.php) 包含 WordPress 数据库登录凭据。 因此,如果任何外人获得了该文件的访问权限,那么他/她就可以窃取您的信息并对您的网站造成损害。 因此,您必须尽一切可能保护此文件。

解决此问题的方法

保护 wp-config.php 文件的最简单方法之一是修改 .htaccess 并限制访问。 为此,只需将以下代码段添加到您的 .htaccess 文件中:

<files wp-config.php>
order allow,deny
deny from all
</files>

6.不更新插件或主题

就像核心 WordPress 一样,在 WordPress 网站中使用最新版本的插件或主题非常重要。 使用任何插件或主题的过时版本会使您的网站容易受到安全威胁。 根据 WPWhiteSecurity 进行的一项调查,全球 54% 的 WordPress 漏洞是由插件引起的。

解决此问题的方法

始终检查任何插件和主题中的更新。 确保您使用的是 WordPress 上可用的最新版本。 通过遵循这种方法,您将最大限度地减少 WordPress 网站中安全威胁的可能性。

7. 使用普通 FTP

对于那些不知道的人,FTP 帐户用于使用 FTP 客户端在您的网站服务器上上传文件。 大多数托管服务提供商都支持使用不同类型协议的 FTP 连接:简单 FTP、SFTP 或 SSH。

大多数 WordPress 网站所有者都犯了使用普通 FTP 的错误。 现在,在普通 FTP 中发生的事情是您的密码以未加密的形式发送到服务器。 因此,任何可以破解服务器的人都可以轻松访问您的 WordPress 网站。

解决此问题的方法

您可以选择 SFTP 或 SSH 选项,而不是使用 FTP。 您无需为此目的更改 FTP 客户端。 只需在连接到您的网站时将协议更改为“SFTP-SSH”。 通过使用此协议,您将能够以加密形式将密码发送到服务器,从而最大限度地降低安全问题的风险。

8. 不改变 WordPress 表格前缀

众所周知,默认情况下,在您的数据库中创建的所有 WordPress 表都以名为 ks29so_ 的前缀开头。 大多数 WordPress 开发人员并不关心更改此前缀,因为他们认为这不会影响网站的性能。

始终如一,此前缀使您的 WordPress 网站容易受到安全问题的影响。 这背后的原因是,攻击者可以很容易地猜出您的 WordPress 数据库表的名称。 因此,您应该尝试尽快恢复此问题。

解决此问题的方法

与其使用 WordPress 数据库表的默认前缀,不如定义自己的复杂前缀,这样任何人都猜不到。 您可以在安装时更改 WordPress 数据库表的前缀。 所以,永远记住这一点。 之后,您将没有机会更改前缀。

以下是更改 WordPress 数据库前缀以提高安全性的方法:

9. 恶意软件

恶意软件是恶意软件的缩写。 换句话说,您可以说它是用于以未经授权的方式访问网站的代码。 被黑网站清楚地表明恶意软件已被注入。 现在,如果您想识别网站上的恶意软件,请尝试查看最近更改的文件。

网络上可能存在多种类型的恶意软件感染,但对于 WordPress,四种主要的恶意软件感染如下所列:

  • 后门
  • 路过式下载
  • 制药黑客
  • 恶意重定向
解决此问题的方法

通过搜索最近修改的文件,然后从您的 WordPress 网站中删除该文件,可以轻松识别任何恶意软件问题。 处理此问题的另一种方法是安装新版本的 WordPress 或从您最近的备份中恢复 WordPress 网站。 这两种方法都将帮助您最大限度地减少安全漏洞。

10. 文件权限不正确

文件权限是 Web 服务器使用的一组规则。 它可以帮助您的服务器控制对您在 WordPress 网站上的文件的访问。 现在,有时发生的情况是用户设置了错误的文件权限,这使得攻击者可以访问文件并根据他们的要求对其进行修改,这可能会对您的 WordPress 网站造成重大损害。

解决此问题的方法

解决此问题的最佳方法是为您的 WordPress 网站设置正确的文件权限。 任何 WordPress 网站的文件权限应如下所列:

  • 所有目录为 755 或 750
  • 644 或 640 用于文件
  • wp-config.php 为 600

通过设置这些权限,您将能够限制对您的 WordPress 网站的访问,这将帮助您保护它免受攻击者的侵害。

最后的想法

多年来,安全性一直是网站所有者最关心的问题。 即使在这一领域进行了如此多的研究之后,也没有人声称它是 100% 安全的。 这显示了在处理此问题时必须处理的复杂程度。

考虑到这一点,我们试图为您提供 10 大 WordPress 安全漏洞以及修复它们的方法,这肯定会在不久的将来为您提供帮助。

你对这个话题有什么看法? 请在我们的评论部分提及它们。 谢谢!