本指南针对的是一种在您的网站上创建自动生成的日语文字的黑客行为,我们称之为日语关键字黑客行为。本指南专为使用热门内容管理系统 (CMS) 的用户而设计,但如果您的网站未使用 CMS,本指南仍然对您有用。
识别此类黑客入侵
日语关键字黑客行为通常会使用自动生成的日语文字在您网站上随机生成的目录名(例如 http://example.com/ltjmnjp/341.html)中创建新网页。这些网页会利用指向出售冒牌商品的商店的联属营销链接获利,随后亦会显示在 Google 搜索结果中。下面是一个此类页面的示例:
在这种类型的黑客入侵中,黑客通常会将自己添加为 Search Console 中的资源所有者,以便通过操纵网站设置(例如地理定位或站点地图)来增加利润。 如果您收到通知,称有陌生人在 Google Search Console 中验证了您的网站,则您的网站很有可能遭到了黑客入侵。
首先,请在 Search Console 中查看安全问题工具,了解 Google 是否在您的网站上发现了任何此类被黑网页。有时,您也可以通过打开 Google 搜索窗口并输入 site:_your site url_(后跟您网站的根级网址)来发现此类网页。这将显示 Google 已为您网站编入索引的网页,包括被黑网页。翻阅几页搜索结果,看看是否能发现任何异常网址。如果您在 Google 搜索中没有看到任何被黑内容,请使用其他搜索引擎搜索相同的搜索字词。示例如下:
通常,当您点击指向被黑网页的链接时,系统会将您重定向到其他网站,或者您会看到一个充斥着乱码内容的网页。不过,您也可能会看到一条提示网页不存在的消息(例如 404 错误)。别上当!黑客会试图诱使您认为网页已消失或已修复,而实际上网页仍处于被入侵状态。他们通过伪装内容来实现这一目的。在网址检查工具中输入您网站的网址,检查是否存在伪装真实内容的情况。借助此工具,您可以查看底层隐藏的内容。
如果您看到这些问题,则表明您的网站很可能已受到此类黑客入侵的影响。
修复黑客入侵问题
在开始之前,请先为要移除的所有文件创建离线副本,以备日后需要恢复这些文件时使用。更稳妥的做法是,在开始清理流程之前备份整个网站。为此,您可以将服务器上的所有文件保存到服务器之外的位置,也可以搜索适合您所用内容管理系统 (CMS) 的最佳备份选项。如果您使用的是 CMS,请同时备份数据库。
从 Search Console 中移除新建的账号
如果您的 Search Console 账号中添加了您不认识的新所有者,请尽快撤消其访问权限。您可以在 Search Console 验证页面上查看哪些用户已通过网站验证。点击相应网站的“验证详情”,即可查看所有经过验证的用户。
如需从 Search Console 中移除所有者,请参阅管理用户、所有者和权限帮助中心的“移除所有者”部分。
您需要移除关联的验证令牌,该令牌通常是您网站根目录中的 HTML 文件,或模仿 HTML 文件动态生成的 .htaccess 文件。
如果您在网站上找不到 HTML 验证令牌,请检查 .htaccess 文件中是否存在重写规则。重写规则将如下所示:
RewriteEngine On
RewriteRule ^google(.*)\.html$ dir/file.php?google=$1 [L]
如需从 .htaccess 文件中移除动态生成的验证令牌,请按以下步骤操作:
检查 .htaccess 文件(2 个步骤)
除了使用 .htaccess 文件创建动态生成的验证令牌外,黑客还经常使用 .htaccess 规则来重定向用户或创建乱码垃圾内容页面。除非您有自定义 .htaccess 规则,否则请考虑将 .htaccess 替换为全新的副本。
第 1 步
在您的网站上找到 .htaccess 文件。如果您不确定在哪里可以找到该文件,并且您使用的是 WordPress、Joomla 或 Drupal 等 CMS,请在搜索引擎中搜索“.htaccess 文件位置”以及您的 CMS 的名称。
您可能会看到多个 .htaccess 文件,具体取决于您的网站。
列出所有 .htaccess 文件位置。
第 2 步
将所有 .htaccess 文件替换为干净或默认版本的 .htaccess 文件。您通常可以通过搜索“默认 .htaccess 文件”和 CMS 的名称来找到 .htaccess 文件的默认版本。对于具有多个 .htaccess 文件的网站,请找到每个文件的干净版本并进行替换。
如果不存在默认 .htaccess,并且您从未在网站上配置过 .htaccess 文件,那么您在网站上找到的 .htaccess 文件可能就是恶意文件。请离线保存 .htaccess 文件的副本以防万一,并从您的网站中删除 .htaccess 文件。
移除所有恶意文件和脚本(4 步)
识别恶意文件可能既棘手又耗时。请仔细检查您的文件。如果您尚未备份网站上的文件,现在正是备份的好时机。在 Google 搜索中搜索“备份网站”和您的 CMS 名称,即可找到有关如何备份网站的操作说明。
第 1 步
如果您使用的是 CMS,请重新安装 CMS 默认分发版本中包含的所有核心(默认)文件,以及您添加的所有内容(例如主题、模块或插件)。这有助于确保这些文件不含被黑内容。您可以在 Google 搜索中搜索“重新安装”和您的 CMS 名称,以查找重新安装说明。如果您有任何插件、模块、扩展程序或主题,请务必重新安装。
第 2 步
黑客通常会修改您的站点地图或添加新的站点地图,以便其网址更快地被编入索引。如果您之前有站点地图文件,请检查该文件是否存在任何可疑链接,并将其移除。如果您不记得曾向网站添加过某些站点地图文件,请检查这些文件。如果文件仅包含垃圾网址,请移除该文件。
第 3 步
查找任何其他恶意文件或被入侵的文件。您可能已在前面的两个步骤中移除了所有恶意文件,但最好还是完成接下来的几个步骤,以防网站上还有更多文件遭到入侵。
不要因为认为需要打开并查看每个 PHP 文件而感到不知所措。首先,创建一个您要调查的可疑 PHP 文件列表。您可以通过以下几种方法来确定哪些 PHP 文件可疑:
- 如果您已重新加载 CMS 文件,请仅查看不属于默认 CMS 文件或文件夹的文件。这样应该可以排除大量 PHP 文件,只留下少数文件供您查看。
- 按最后修改日期对网站上的文件进行排序。查找在您首次发现网站被黑客入侵后的几个月内修改过的文件。
- 按大小对网站上的文件进行排序。查找是否有任何异常大的文件。
第 4 步
列出可疑 PHP 文件后,请检查其中是否包含恶意内容。 如果您不熟悉 PHP,此过程可能会更耗时,因此请考虑温习一些 PHP 文档。如果您是编码新手,我们建议您咨询经验丰富的开发者。与此同时,您可以通过一些基本模式来识别恶意文件。
如果您使用 CMS,并且不习惯直接修改其 PHP 文件,请将服务器上的文件与 CMS 及其任何插件和主题打包在一起的默认文件列表进行比较。查找不属于该网站的文件,以及大于默认版本的文件。
浏览您已识别的可疑文件,查找混淆代码块。这可能看起来像是一串看似杂乱无章的字母和数字,通常前面会有一串 PHP 函数,例如 base64_decode、rot13、eval、strrev 或 gzinflate。以下是代码块的示例。有时,所有这些代码都会被塞进一行长文本中,使其看起来比实际要小。
$O_O0O_O0_0=urldecode("%6E1%7A%62%2F%6D%615%5C%76%740%6928%2D%70
%78%75%71%79%2A6%6C%72%6B%64%679%5F%65%68%63%73%77%6F4%2B%6637%6A");
$OO0_0OO0__=$O_O0O_O0_0{26}.$O_O0O_O0_0{6}.$O_O0O_O0_0{10}.$O_O0O_O0_0{30}
检查您的网站是否已清理干净
清除被黑文件后,请检查您的努力是否取得了成效。还记得您之前发现的那些乱码网页吗?再次对这些网址使用 Google 抓取工具,看看它们是否仍然存在。
如果这些网址在“Google 抓取工具”中显示为“未找到”,则说明您的网站可能状况良好,您可以继续修复网站上的漏洞。
如何防止再次遭到入侵?
修复网站上的漏洞是修复网站的最后一个重要步骤。最近的一项研究发现,20% 的被黑客入侵的网站会在一天内再次遭到入侵。了解网站遭到入侵的具体方式非常有用。请阅读我们的垃圾内容发布者最常用的网站入侵方法指南,开始调查。如果您无法确定网站是如何被黑客入侵的,请按照此核对清单操作,以减少网站上的漏洞。
- 定期扫描计算机:使用常用的杀毒软件检查是否存在病毒或漏洞。
- 定期更改密码:定期更改所有网站账号(例如托管服务提供商、FTP 和 CMS)的密码,可以防止他人未经授权访问您的网站。请务必为每个账号设置安全系数高的专用密码。
- 使用两步验证 (2FA):考虑在任何需要登录的服务上启用 2FA。这样一来,即使黑客成功窃取了您的密码,也更难登录您的账号。
- 定期更新 CMS、插件、扩展程序和模块:希望您已经完成了此步骤。许多网站遭到入侵是因为运行了过时的软件。某些内容管理系统支持自动更新功能。
- 考虑订阅安全服务来监控您的网站:许多服务都可以帮助您监控网站,且费用低廉。建议您向这些机构注册,以确保您的网站安全。
其他资源
如果您在修复网站时仍然遇到问题,可以参考以下资源。
这些工具会扫描您的网站,并可能找到有问题的内容。 Google 不会运行或支持除 VirusTotal 以外的其他所有工具。
以上只是部分可用于扫描网站中是否存在问题内容的工具。请注意,这些扫描程序无法保证能够识别每种类型的问题内容。
下面是 Google 提供的可为您提供帮助的其他资源: