安全已成为Web开发人员和网站所有者的一个重要关注点,这并不小令人惊讶。随着互联网的流行并成为交流、研究和购物的新首选方式,网站安全检查对于阻止恶意软件和垃圾邮件的传播至关重要。
无论您经营的是小型个人博客还是大型跨国在线商店,被黑客入侵的威胁始终存在。有些人会破坏您的网站并在其中嵌入恶意软件,试图窃取您或您客户的数据,并删除您服务器上的重要内容。您需要保护自己和您的敏感信息。
让我们弄清楚您的网站现在的安全程度。我们还将提供一些有关删除恶意软件作者利用的低挂水果恶意软件的技巧。 WordPress开箱即用是安全的,但要完全修补它需要一些工作。
网站安全检查:为什么重要?
您可能认为您的网站很小而且不重要,以至于没有人会费心去定位它。或者,也许您以前从未考虑过安全问题,并认为这并不重要。
这样想就是为什么在 2013 年,超过70%的WordPress安装容易受到攻击。其中许多攻击是由于过时的软件造成的——因为大多数人要么不够了解,要么不太关心保护他们的网站,这导致了大量黑客攻击WordPress安装。
2019年过时与更新的CMS占比
那么,如果您的网站遭遇意外入侵,会发生什么?这不仅仅是通过更改密码轻松解决的简单烦恼。
- 您的网站可能已注入代码,导致访问者感染自己的恶意软件,而恶意软件可能极难定位和删除。
- 您的关键页面可能被污损、空白或塞满了指向非法站点的链接。
- 它可能会导致删除博客文章和页面等内容。
- 属于您、您的用户或您的客户的敏感信息(例如登录信息或信用卡信息)可能会被盗并在线出售。
- 攻击可能会传播到您服务器上的其他网站。
- 如果Google在您的网站上检测到任何恶意软件,它将阻止其访问并将其从搜索结果中删除,从而破坏您的搜索引擎优化 (SEO) 工作。
- 可以更改管理员帐户的用户名和密码,从而完全阻止您访问后端。
如果您经营电子商务商店,被黑网站可能会造成巨大损失。虽然您可能会说您的网站无关紧要,但并非所有攻击都是有针对性的。许多WordPress攻击都是自动化的——机器人会探测您的网站是否存在漏洞并在没有人工干预的情况下发起攻击。这就是为什么您无论如何都需要采取措施保护您的网站的原因。
为什么WordPress会被黑客入侵?
黑客攻击很普遍,但黑客利用哪些最常见的漏洞入侵您的网站?
您可能认为进入网站是一个具有挑战性的过程,需要数天或数周的工作以及有关计算机、编码和服务器的丰富知识。这种情况可能适用于有针对性的尝试突破大型、受良好保护的站点的防御,但对于小型WordPress域,情况就大不相同了。
对WordPress的绝大多数攻击都是成功的,因为人们使用易于猜测的密码并且没有更新他们的主题和插件。黑客使用自动化程序闯入大多数此类站点。
密码破解是最简单的黑客攻击形式,但它很常见,因为它有效。许多人将他们的WordPress登录名保留在默认的“管理员”上,消除了一半的猜测,然后使用一个简单的、可猜测的密码。如果失败,黑客将利用流行插件或过时WordPress版本中的常见漏洞。这就是为什么保持一切更新如此重要的原因。
有许多更复杂、更复杂的方法可以闯入网站。尽管如此,大多数WordPress攻击都利用了不安全的密码和过时的软件,这使得进入网站变得非常容易。
如何执行网站安全检查
保护您的网站的第一步:确定您的网站已经有多安全。您的后端是否有任何明显的漏洞需要立即修补,或者您现在可以进行任何简单的修复?
使用在线工具
检查您的网站是否存在恶意软件和漏洞的一种快速简便的方法是使用在线扫描仪。这些远程扫描您的站点并确定常见问题。它非常方便,因为它不需要任何软件或插件,只需几秒钟。
网上有数十种扫描仪可供选择,我们将在下面的工具部分列出其他一些扫描仪,但现在,让我们选择一种易于使用的流行扫描工具:Sucuri SiteCheck。
Sucuri SiteCheck
此工具是一个不错的选择,因为您可以安装Sucuri插件并立即修复它检测到的任何问题(参考阅读:WordPress安全插件Sucuri介绍及使用教程)。
扫描您的网站后,Sucuri将根据阻止列表对其进行检查,寻找明显的问题,例如注入的垃圾邮件或过时的软件,并简要扫描它可以访问的任何代码以查找恶意软件。它还提供了一些建议,以加强您的网站免受攻击。
使用Sucuri插件扫描网站
此类工具是检测隐藏恶意软件和其他问题的绝佳起点。
使用WordPress插件扫描您的网站
虽然在线扫描程序运行良好,但最好安装一个插件,该插件能够深入挖掘代码的根源并找出漏洞或难以检测的恶意软件。
我们已经提到了 Sucuri 作为一种选择。还有两个更受欢迎的安全插件:All in One WP Security & Firewall,以及插件库中下载最多的Wordfence安全插件(参考阅读:WordPress安全插件WordFence介绍及使用教程)。
一旦您安装了您选择的插件,它可能会指示您立即运行扫描。这些插件相对于远程扫描仪的优势在于它们可以删除恶意软件并自动进行更改。
寻找奇怪的变化
如果您怀疑或知道您的网站已感染了恶意软件,那么查明来源有时可能具有挑战性。以下是您可能会注意到的一些无法解释的变化,以及黑客通常会被吸引的文件:
- 突然链接到您自己没有添加的奇怪网站
- 您未创建的新文章和页面,或现有页面的内容突然更改
- 对您未进行的设置的更改
- 一个新用户,尤其是具有高级权限的用户,您没有添加
- 您未安装的插件或主题
- 恶意软件通常会将恶意代码注入您的文件中。检查插件和主题文件、 wp-content/uploads文件夹、位于错误目录中的 WordPress 核心文件、 wp-config.php和.htaccess 。在进行任何敏感更改之前,您应该备份您的站点并了解代码。
如果您使用FTP连接到您的站点,您可以按最近修改的文件对不应该存在的代码进行排序。
如果您的站点定期感染恶意软件,而您在文件中找不到任何原因,则问题可能出在您的服务器或服务器上的其他站点上。
确保一切都是最新的
正如我们已经提到的,过时的软件是迄今为止WordPress中最常见的感染媒介。如果您只能做一件事来确保网站安全,那么应该保持WordPress更新。
检查站点上所有软件状态的最简单方法是转到仪表板>更新,如果您的核心、主题或插件已过期,它会提醒您。
WordPress更新
由于WordPress从5.5版开始执行自动更新,因此除非您拥有过时的WordPress版本,否则任何内容都不应过时。如果不这样做,您可以从此屏幕更新所有内容。如果您知道有新版本的WordPress,但没有显示,请单击当前版本下方的再次检查按钮。您还可以检查您的插件>已安装插件或外观>主题页面以获取更新。
提醒:使PHP保持最新状态非常重要,尤其是当您使用7.3之前的版本时,因为它可能存在严重的安全漏洞。
保护帐户和密码
您的主帐户上的弱密码使任何人都可以通过暴力破解程序轻松闯入您的站点,从而为他们提供管理员访问权限和更改任何内容的能力。
虽然复杂的密码很难记住,使登录变得不那么方便,但必须从黑客中恢复您的网站更加不方便。使用更安全的密码绝对值得,即使您必须将其写下来。
您的密码应混合使用大小写字母、数字和符号。最好不要基于字典中的单词或个人的、可猜测的信息(例如您的地址或家庭成员的姓名)。
在最好的情况下,您的密码将是一长串乱七八糟的随机字符。我们强烈建议您使用密码管理器。使用像1Password或LastPass这样的网站来生成一个安全的、不可猜测的密码。
使用LastPass生成安全密码
您可以通过转到“用户”>“所有用户”或直接“用户”>“个人资料”来更新WordPress中的密码和电子邮件。向下滚动并在联系信息下找到电子邮件,在帐户管理下找到新密码。
在WordPress中设置新密码
在“用户”页面上时,查看所有用户并确保其中没有您不认识或拥有不当权限的用户。您应该立即删除任何具有管理员权限的身份不明的用户。
我们还鼓励您查看有关限制用户权限的指南,以便只有您的帐户才能更改您网站上的敏感文件。
检查您的SSL证书
如果您的SSL证书已过期,您通常会立即知道;像谷歌浏览器这样的浏览器会阻止访问您的网站,并发出有关证书过期的巨大警告。如果您不确定或已经收到此错误,请检查您的SSL证书以查看它是否是最新版本以及您是否使用最新版本的SSL/TLS 。
当您访问网站时,您会在大多数浏览器的地址栏中看到一个锁定图标。如果您的证书已过期,则此锁可能为红色或有斜线穿过。
单击锁定图标,然后再次单击以查看证书信息,包括其到期日期。
检查网站的SSL证书
您还可以使用SSL证书检查器扫描您的站点,以确保您的证书未过期,并且您的SSL协议中不存在漏洞。
常见漏洞
许多 WordPress 网站都充满了用于攻击的微小载体,这些载体看似无害,但可以提供比您想共享的更多信息。
在您的前端有一个可见的WordPress版本可以告诉黑客您网站上存在哪些漏洞。特别是如果您使用的是过时版本的WordPress,您可能希望隐藏此信息。您会注意到后端中的外观>主题编辑器和插件>插件编辑器下的文件编辑器。
向主题编辑器添加代码
虽然这些工具非常方便,但它也适合任何入侵您网站以破坏某些内容的人,因此您可能希望将其关闭。您可以通过将此函数添加到wp-config.php来实现:
define( 'DISALLOW_FILE_EDIT', true );
SQL注入是侵入站点的常见方式。如果您有任何表单或其他用户输入,请限制使用特殊字符并只允许上传安全、常见的文件类型。最后,为了提供额外的保护层,您可以使用密码保护文件目录。
如何保护您的网站:提示和工具
如果您的网站有恶意软件,一个好的安全插件应该可以消除它。我们已经涵盖了您需要检查的一些漏洞。
我们还有其他一些快速提示,可用于保护您的网站并防止感染发生。您可以在几分钟内应用这些技巧中的大部分,因此即使您不熟悉 WordPress 和网络安全,它们也应该很容易设置。
选择安全主机
当黑客探索进入您网站的方法时,他们通常会转向服务器寻找漏洞。那里有很多便宜的托管服务,但他们并不总是投资最安全的服务器。
共享主机可能是感染的载体。如果一个网站感染了恶意软件,它可能会传播到服务器上的每个站点。所以你最终可能会得到一个充满病毒和SEO垃圾邮件的网站,这甚至不是你的错。
这就是为什么进行研究并选择关心安全性并投资于安全服务器的主机至关重要的原因。您仍然需要努力保护您的网站,但在服务器级别,您的数据是安全的。
开启两步验证 (2FA)
两步验证(也称为两步验证或 2FA)添加了另一个登录步骤。除了用户名和密码,您或任何冒充您的人还需要另一条信息:唯一的附加代码。
它可能是发送到您手机的数字代码,它可以通过蛮力使您的WordPress帐户几乎无法破解。或者,它可能需要电子邮件验证或只有您知道的一条信息。
虽然没有启用二步认证身份验证的内置方法,但许多插件将功能添加到WordPress。 之前提到的Wordfence安全插件内置了 2FA。您还可以尝试其他网站安全工具,例如Two-Factor插件实现邮件身份认证或安装Duo插件通过手机验证码二步认证。
Duo两步验证插件
每天备份
备份您的站点并不能避免人们试图闯入,但如果确实发生了某些事情,备份将是无价之宝。这可能意味着损失数周甚至数年的工作与简单地从黑客攻击之前恢复到备份之间的区别。
如果您安装了宝塔面板,你可以轻松地设置自动备份任务。此外,您每周可以创建五个手动备份和一个可下载的备份,并且有可选的附加组件可以每小时备份或导出到云。
UpdraftPlus等插件也可以提供帮助。最好选择至少每天备份的服务,以最大程度地减少数据丢失。
使用Web应用程序防火墙
Web应用程序防火墙或WAF使用严格的规则来过滤传入流量,将已知与黑客攻击或DDoS攻击相关联的IP列入黑名单。它可以防止许多攻击到达您的服务器。虽然您可以在服务器级别应用WAF,但购买基于云的服务最容易,例如Cloudflare或Sucuri提供的服务。
通过SSH或SFTP连接
有时您需要使用FTP连接到您的站点以在那里添加或修改文件。在FTP上使用SFTP总是更好;区别很简单:SFTP是安全的,而FTP不是。
使用FTP,您的数据不会被加密。如果有人设法拦截您和您的服务器之间的连接,他们可以看到从您的FTP登录凭据到您上传的任何文件的所有内容。始终使用SFTP连接。
您还可以考虑使用SSH访问,它允许您连接到命令提示符并更直接地管理您的站点。它安全、可靠,并且可以远程处理简单的任务。
防止DDoS攻击
DDoS攻击通过向您的服务器发送数以千计的虚假请求以阻止潜在读者或客户访问它,从而使您的网站缓慢爬行。这里有一些提示,可以在它们发生之前阻止它们:
- 制定DDoS攻击发生时的计划。当您需要提醒您的网络主机并停止攻击时,您不想惊慌失措。
- 使用可能能够检测到虚假流量的 Web 应用程序防火墙。
- 使用专门定制的反DDoS软件。
- 禁用xmlrpc.php以防止第三方应用程序使用您的服务器。
- 为一般用户禁用REST API。
防止蛮力攻击
蛮力攻击类似于DDoS攻击,但其目标是猜测您的管理员密码并闯入该站点,而不是关闭您的服务器。也就是说,这些也会减慢您的网站速度。
- 同样,WAF可以过滤掉机器人流量和公然的蛮力尝试。
- 在您的管理员帐户上使用两步验证。
- 设置活动日志并密切关注未经授权的登录尝试。
- 更改登录页面URL并限制登录尝试次数。
- 密码保护您的登录页面。
- 使用随机生成的长密码并每年更改一次。
您需要了解的网站安全工具
除了我们已经提到的那些,这里还有一些在线安全工具可以帮助您锁定您的网站:
- Intruder.io:扫描最新的漏洞。
- SSL Server Test: 分析您的SSL证书并识别弱点的开发工具。
- HTML Purifier:过滤掉恶意代码/XSS,如果您有需要清理的受感染代码,则非常有用。
- Mozilla Observatory:清除代码中常见漏洞的可行建议。
- sqlmap:一种渗透测试工具,用于识别SQL代码中的漏洞。
- Detectify:在道德黑客的帮助下扫描您的网络应用程序。
- WPScan:基于CLI的WordPress扫描仪。
- SonarQube:编写没有安全漏洞的符合标准的代码。
网站安全检查表
您的网站安全吗?确保您已勾选此清单上的几乎所有内容:
- 您使用的是安全、高质量的托管环境吗?
- 您是否使用插件或在线工具扫描您的网站以检查病毒?
- 您是否安装了活动日志,并监控它是否有异常变化?
- 您和任何拥有高级权限的用户是否使用安全密码和两因素身份验证?所有电子邮件都正确吗?
- WordPress、其主题和插件以及PHP等底层系统是否是最新的?
- 您的SSL证书是否安全且是最新的?
- 您是否检查过无法解释的更改、删除或添加的内容,或者不是您在网页、设置或文件中添加的链接?
- 您的登录页面是否受到密码和有限登录尝试的保护?
- 您是否检查过未添加的新用户?
- 表单、评论框和其他用户输入来源是否安全? (禁止特殊字符并将文件上传限制为已知文件类型。)
- 您是否禁用了xmlrpc.php和REST API以防止DDoS攻击?
- 您是否禁用了仪表板中的主题和插件编辑?
- 您是否有日常备份服务?
- 您是否设置了Web应用程序防火墙?
小结
网站安全不是一件小事,所以如果你还没有掌握它,现在是时候把它放在首位了。被黑客入侵不仅令人烦恼——它可能导致SEO受损、破坏性数据丢失、失去用户信任以及恶意软件一次又一次地卷土重来。
您无需成为经验丰富的开发人员即可采取一些额外的步骤来保护您的网站。这从适当的网站安全检查开始。即使是选择更好的密码或切换到更安全的主机这样简单的事情也可能会有所不同。