修复隐藏关键字和链接的黑客攻击

本指南专门针对一种黑客攻击类型而创建,该类型会将包含大量关键字的胡言乱语页面添加到您的网站,我们将其称为隐藏关键字和链接的黑客攻击。它主要是为 流行的内容管理系统 (CMS) 的用户编写的。但是,如果您不使用 CMS,您可能仍然会发现本指南很有用。

识别黑客攻击

隐藏关键字和链接的黑客攻击会自动创建许多包含无意义文本、链接和图像的页面。这些页面有时包含原始网站的基本模板元素,因此乍一看,这些页面可能看起来像是您网站的正常组成部分,直到您阅读内容。

创建被黑客入侵页面的目的是操纵 Google 的排名因素。黑客通常试图通过在被黑客入侵的页面上向不同的第三方出售链接来从中获利。通常,被黑客入侵的页面也会将访问者重定向到不相关的页面,黑客可以在其中赚钱。

首先检查 Search Console 中的安全问题工具,看看 Google 是否在您的网站上发现了任何这些被黑客入侵的页面。有时,您还可以通过打开 Google 搜索并输入 site:_your site url_(使用您网站的根级网址)来发现这些页面。此搜索的结果会显示 Google 已为您的网站编入索引的页面,包括被黑客入侵的页面。查看几个搜索结果页面,看看您是否发现任何异常网址。

如果您在 Google 搜索中没有看到任何被黑客入侵的内容,请使用相同的搜索词和不同的搜索引擎。以下是可能的外观示例

Search results generated by this hack.
被黑客入侵的页面显示在 Google 搜索结果中。这些页面是由网站所有者以外的人创建的。在描述中,您可以看到在此黑客攻击中创建的胡言乱语文本。

通常,当您点击被黑客入侵页面的链接时,您要么被重定向到另一个网站,要么看到一个充满胡言乱语内容的页面。但是,您也可能会看到一条消息,提示该页面不存在(例如,404 错误)。不要被愚弄!黑客试图欺骗您,让您以为页面已消失或已修复,但实际上它仍然被黑客入侵。他们通过隐藏内容来做到这一点。

通过在网址检查工具中输入您网站的网址来检查是否隐藏内容。“以 Google 抓取方式”工具可让您查看底层的隐藏内容。

An example page created by this hack.
此黑客攻击创建的页面示例。

修复黑客攻击

在开始之前,请离线备份您的整个网站。这可确保您以后可以在必要时恢复任何文件。将服务器上的所有文件保存到服务器之外的位置。

如果您使用内容管理系统 (CMS),例如 WordPress 或 Drupal,您可以使用备份插件来保存您的网站。记住也要备份您的数据库。查看 CMS 的文档以了解如何操作。

检查您的 .htaccess 文件(3 个步骤)

隐藏关键字和链接的黑客攻击使用您的 .htaccess 文件在您的网站上自动创建隐藏页面。熟悉官方 Apache 网站上的 .htaccess 基础知识可以帮助您更好地了解黑客攻击如何影响您的网站,但这不是必需的。

步骤 1

在您的网站上找到您的 .htaccess 文件。如果您不确定在哪里找到它,并且您使用的是 WordPress、Joomla 或 Drupal 等 CMS,请在搜索引擎中搜索“.htaccess 文件位置”以及您的 CMS 名称。根据您的网站,您可能会看到多个 .htaccess 文件。列出所有 .htaccess 文件位置。

步骤 2

打开 .htaccess 文件以查看文件中的内容。查找看起来像以下代码行的代码行

RewriteRule (.*cj2fa.*|^tobeornottobe$) /injected_file.php?q=$1 [L]

此行上的变量可能会更改。cj2fatobeornottobe 都可以是字母或单词的任意组合。重要的是识别此行中引用的 .php

写下 .htaccess 文件中提到的 .php 文件。在示例中,.php 文件名为 injected_file.php,但实际上文件名不会那么明显。它通常是一组随机的无害词语,例如 horsekeys.phppotatolake.php。这很可能是一个恶意的 .php 文件,我们需要跟踪并在稍后将其删除。

步骤 3

将所有 .htaccess 文件替换为干净或默认版本的 .htaccess 文件。您通常可以通过搜索“default .htaccess file”和您的 CMS 名称来找到默认版本的 .htaccess 文件。对于具有多个 .htaccess 文件的站点,找到每个文件的干净版本并执行替换。

如果没有默认的 .htaccess 存在,并且您从未在您的网站上配置过 .htaccess 文件,那么您在您的网站上找到的 .htaccess 文件可能是恶意的。保存 .htaccess 文件副本(以防万一)并将其从您的网站中删除。

查找并删除其他恶意文件(5 个步骤)

识别恶意文件可能很棘手且耗时。检查文件时请耐心。如果您还没有备份网站上的文件,那么现在是备份文件的好时机。查找您的特定 CMS 的文档,了解如何备份您的网站。

步骤 1

如果您使用 CMS,请重新安装 CMS 默认发行版中的所有核心(默认)文件,以及您可能添加的任何内容(例如主题、模块、插件)。这有助于确保这些文件没有被黑客入侵的内容。您可以搜索“reinstall”和您的 CMS 名称以查找重新安装说明。如果您有任何插件、模块、扩展程序或主题,请确保也重新安装这些。

步骤 2

首先查找您之前在 .htaccess 文件中标识的 .php 文件。根据您访问服务器上文件的方式,您应该具有某种类型的搜索功能。搜索恶意文件名。如果您找到它,请首先创建一个备份副本并将其存储在另一个位置,以防您需要恢复它,然后从您的网站中删除它。

步骤 3

查找任何剩余的恶意或受感染的文件。您可能已经在前两个步骤中删除了所有恶意文件,但重要的是要确认以确保您的网站上没有其他受感染的文件。

如果您认为必须打开并查看每个 PHP 文件,您可能会感到不知所措。相反,创建一个您要调查的可疑 PHP 文件列表。以下是一些确定哪些 PHP 文件可疑的方法

  • 如果您已经重新加载了 CMS 文件,则仅查看不属于您的默认 CMS 文件或文件夹的文件。这应该排除许多 PHP 文件,并为您留下一些要查看的文件。
  • 按上次修改日期对您网站上的文件进行排序。查找在您首次发现您的网站被黑客入侵的时间前几个月内修改过的文件。
  • 按大小对您网站上的文件进行排序。查找任何异常大的文件。

步骤 4

获得可疑 PHP 文件列表后,检查它们是否是恶意的。如果您不熟悉 PHP,此过程可能更耗时,因此请考虑复习一些 PHP 文档。如果您是编码新手,我们建议寻求帮助。与此同时,您可以查找一些基本模式来识别恶意文件。

如果您使用 CMS,并且没有直接编辑这些文件的习惯,请将您服务器上的文件与 CMS 及其任何插件和主题打包在一起的默认文件列表进行比较。查找不属于的文件,以及大于其默认版本的文件。

首先,扫描您已识别的可疑文件,以查找包含看似混乱的字母和数字组合的大段文本。大段文本通常以 PHP 函数组合开头,例如 base64_decoderot13evalstrrevgzinflate

以下是代码块可能的外观示例。有时,所有这些代码都塞进一行长文本中,使其看起来比实际更小。

// Hackers try to confuse webmasters by encoding malicious code into
// blocks of text. Be wary of unfamiliar code blocks like this.

base64_decode(strrev("hMXZpRXaslmYhJXZuxWd2BSZ0l2cgknbhByZul2czVmckRWYgknYgM3ajFGd0FGIlJXd0Vn
ZgknbhBSbvJnZgUGdpNHIyV3b5BSZyV3YlNHIvRHI0V2Zy9mZgQ3Ju9GRg4SZ0l2cgIXdvlHI4lmZg4WYjBSdvlHIsU2c
hVmcnBydvJGblBiZvBCdpJGIhBCZuFGIl1Wa0BCa0l2dgQXdCBiLkJXYoBSZiBibhNGIlR2bjBycphGdgcmbpRXYjNXdmJ2b
lRGI5xWZ0Fmb1RncvZmbVBiLn5WauVGcwFGagM3J0FGa3BCZuFGdzJXZk5Wdg8GdgU3b5BicvZGI0xWdjlmZmlGZgQXagU2ah
1GIvRHIzlGa0BSZrlGbgUGZvNGIlRWaoByb0BSZrlGbgMnclt2YhhEIuUGZvNGIlxmYhRWYlJnb1BychByZulGZhJXZ1F3ch
1GIlR2bjBCZlRXYjNXdmJ2bgMXdvl2YpxWYtBiZvBSZjVWawBSYgMXagMXaoRFIskGS"));

有时代码并不混乱,看起来就像普通脚本一样。如果您不确定代码是否错误,请访问我们的 Google 搜索中心帮助社区,那里有一群经验丰富的网站管理员可以帮助您查看文件。

步骤 5

现在您知道哪些文件可疑,请通过将它们保存在您的计算机上来创建备份或本地副本,以防任何文件不是恶意的,并从您的网站中删除可疑文件。

检查您的网站是否干净

完成删除被黑客入侵的文件后,检查您的辛勤工作是否得到了回报。还记得您之前识别的那些胡言乱语页面吗?再次在它们上使用“以 Google 抓取方式”工具,看看它们是否仍然存在。如果它们在“以 Google 抓取方式”中响应为“未找到”,则您很可能状况良好,并且可以继续修复您网站上的漏洞。

如何防止再次被黑客入侵?

防止未来黑客攻击的最后一步是修复您网站上的漏洞。一项研究发现,20% 的被黑客入侵的网站会在一天内再次被黑客入侵。确切了解您的网站是如何被黑客入侵的很有帮助。阅读网站被垃圾邮件发送者入侵的主要方式,开始您的调查。

如果您无法弄清楚您的网站是如何被黑客入侵的,请按照此清单来减少您网站上的漏洞

  • 定期扫描您的计算机:使用任何流行的病毒扫描程序检查病毒或漏洞。
  • 定期更改您的密码:定期更改您所有网站帐户(如您的托管服务提供商、FTP 和 CMS)的密码可以防止未经授权访问您的网站。为每个帐户创建强而唯一的密码非常重要。
  • 使用双重验证 (2FA)设置通行密钥:即使黑客成功窃取了您的密码,2FA 和通行密钥也使黑客更难登录。
  • 定期更新您的 CMS、插件、扩展程序和模块:许多网站遭到黑客攻击是因为它们运行的是过时的软件。某些 CMS 支持自动更新。
  • 考虑订阅安全服务来监控您的网站:有很多很棒的服务可以帮助您以少量费用监控您的网站。考虑向他们注册以确保您的网站安全。

其他资源

如果您在修复网站时仍然遇到问题,我们还有一些其他资源可能会对您有所帮助。

这些工具会扫描您的网站,并且可能能够找到有问题的内容。除了 VirusTotal 之外,Google 不运行或支持它们。

这些扫描程序不能保证它们能够识别每种类型的有问题的内容。继续定期检查您网站的安全性。

以下是一些可以帮助您的其他资源