什么是站点内部搜索垃圾邮件攻击以及如何防范

过去一年中,我们发现很多WordPress网站遭遇了大规模的SEO垃圾邮件攻击,这些攻击主要针对网站内部的搜索功能。虽然这些攻击对SEO本身的影响不大,但却浪费了大量的时间和资源。

虽然大部分网站可能不需要担心这个问题,但如果你的网站规模较大或流量较高,你可能已经在不知不觉中遭受了攻击。那么,到底发生了什么呢?

行业内对负面SEO的存在看法不一,有些人认为利用网站内部的高频率搜索可以对网站进行攻击,这种方式值得深入探讨和分析。关于恶意邮件和垃圾邮件网站是否会影响您网站的可见性和排名,虽然谷歌表示大多数网站无需担忧,但实际情况要复杂得多。

接下来,我们将探讨这些攻击的运作方式,并介绍一些保护措施。

垃圾邮件发送者利用你的站内搜索进行广告宣传

很多WordPress网站都有一个站内搜索功能,你可以通过example.com/?s=example(或example.com/search/example/)进行访问搜索。

您可以在这些URL中输入任何你内容,而且正常情况下您搜索的词语会显示在搜索结果页面上。这意味着任何人都可以写一个广告,并在你的网站上"创建"一个展示他们广告的页面。

他们还可以编写脚本和软件,在多个网站上大规模生成这些URL请求。这些URL可能还会出现在分析账户和服务器日志中。从其规模上来看,这是一种非常简单粗暴但又非常低成本的广告形式。

这确实是一个让人头疼的问题,但正如前面所说,对一般的网站来说这都不是太大的问题,但是当它被作为一种攻击途径时,事情就变得不简单了。此时,选择可靠的服务器服务商就尤为重要了,像Hostease这样的服务商不仅提供高性能的服务器,还能够为您提供专业的安全防护,减少此类攻击对您网站的影响。

垃圾内部站点搜索链接

更高级的垃圾邮件发送者则会希望覆盖尽可能广泛的受众,他们会试图通过利用并破坏你的网站SEO来实现这一目标。

这些攻击的实施者通常有一个现成的低质量垃圾网站网络,这些网站通常相互链接,他们通常不关心这些网站排名,只要它们被抓取就行。因为如果它们被爬取,搜索引擎就可能发现并爬取它们链接的任何内容。如果这些内容是链接到您的网站的搜索结果的,结果可想而知。

到这里,攻击的影响才真正开始增加,真人在发现这些链接后,可能会进行点击,这肯定多少会对您的品牌产生影响,但是,这还远不是最坏的结果,搜索引擎也会发现并跟踪这些链接, 这就可能会导致以下的一些问题:

1.如果你没有管理你的网站SEO设置,这些页面可能会开始被爬取、索引和排名。这将造成各种品牌和SEO损害。幸运的是,Yoast SEO自动向你的内部搜索结果页面添加了noindex元标签,防止它们被索引。

2.如果你通过在robots.txt文件中阻止内部搜索结果来积极保护自己,那么这些广告可能会开始出现在搜索结果中。记住,robots.txt防止爬取,但不阻止索引------而且就搜索引擎而言,这些页面看起来非常受欢迎,值得被索引。毕竟,它们从各种网站获得了各种链接。

  1. 如果你设置了noindex指令,那么这些页面仍然会被爬取,你的Google Search Console账户将充满"已爬取但未索引"URL的报告。

大部分WordPress用户都属于第三类,在他们的Google Search Console 帐户中可以发现类似的报告:

站点搜索URL推广约会网站,伴随着看似不相关的垃圾文本。

单词/"KaKaoTalk"经常与【example】标注格式一起出现。这些通常是韩国流行聊天应用程序"KakaoTalk"上的用户名和广告(通常用于用户提供的非法或成人服务)。

一个只有几千篇文章的网站有超过90,000条记录的垃圾URL。

尽管这样的例子可能不会损害你的SEO,但这种报告可能会令人担忧,而且这也确实会存在一些影响,如果谷歌大规模爬取这些URL,可能会消耗"爬取预算",即谷歌愿意在探索你的网站上花费的精力,如果这些预算都用在了垃圾URL上,对于您本身网站的正常内容被爬取的概率就更小了。

更重要的是,它浪费了攻击者、受害者和搜索引擎的电力和服务器资源。大规模情况下(尤其是在许多网站上),这种浪费和影响会累积,。

如果我们深入挖掘,我们可以看到这些攻击比我们看到的更多。在上面的示例图中,我们可以看到一些 URL 变体,这些变体表明攻击存在一些细微差别。例如:

1.URL 针对两种?s=example格式/search/example;网站可能使用其中一种或两种格式,有时每个版本都有不同的模板逻辑。这增加了他们成功将文本放到页面上的机会,并可能帮助他们解决noindex指令问题。

2.它们以分页状态为目标,例如?page/5/?s=example或/search/page/2/?s=example。这尤其令人讨厌,因为 WordPress 中的分页链接将查询参数传递给分页 URL。这意味着,如果我有 100 页搜索查询结果,则每个结果底部的"下一个/上一个"链接都包含垃圾搜索参数。现在,您自己的网站链接到这些垃圾 URL 并"验证"它们。这会在 Google Search Console 中造成"自引用"垃圾 URL 的巨大混乱,并且很难追踪原始来源。

3.它们目标是搜索结果的RSS提要版本(例如,/search/[spam]/feed/rss2/)。我怀疑这是主要的(或最具影响力的)例子。因为其他系统积极寻找和消费RSS提要,通常会将URL转换为链接。这在更多站点上创建了指向攻击站点的链接。你的WordPress站点只是一个"中间人"攻击的一部分。

4.即使你的网站没有站点搜索输入字段或结果页面,这些攻击也可能成功。大多数WordPress站点/主题默认支持站点搜索.

与Cloudflare和IndexNow的交互

使用Cloudflare的Wordpress网站会更容易成为攻击目标,Cloudflare有一个"爬虫提示"功能,可监控您网站上的页面并自动将其提交给IndexNow。Bing、Yandex 和其他网站现在将抓取这些 URL。

由于 WordPress 中的分页搜索结果保留了分页链接中的垃圾参数,因此这些 URL看起来就像来自您的网站。该系统将拾取它们并自动将它们推送到 IndexNow。现在你的网站主动告诉搜索引擎你希望它们爬取(进而索引)这些垃圾URL。

这还意味着垃圾邮件发送者、Cloudflare、必应、Yandex和您的网站都在浪费电力来创建、推广和爬取垃圾URL。

一些解决方案

然而您也无需因此泰国担心,您可以通过插件轻松保护您的网站,比如Yoast SEO,它会自动向你的搜索结果页面应用noindex指令,阻止这些URL进入谷歌。即使你在Google Search Console中看到这种数据,也不会影响你的SEO。

然而,环境影响和服务器成本影响仍然可能很大。不过Yoast SEO Premium中添加了一系列"爬取清理"和优化功能的原因,这些功能允许您禁用大多数站点不需要搜索引擎访问的URL格式和功能。

Yoast的爬取清理功能还能够保护部站点搜索URL免受某些形式的攻击。例如,限制搜索查询的最大长度,并提供禁用常见攻击模式(如包含表情符号的搜索)的选项,被阻止的搜索格式将返回404错误。

这些类型的调整"关闭了某些攻击形式的大门"。这应该会阻止搜索引擎爬取和索引这些URL,从而消除垃圾邮件发送者创建它们的关键动机。

如果你担心可能遭受攻击并且还没有做相关的设置,建议您可以尽快设置一下。

相关推荐
ServBay3 小时前
告别面条代码,PSL 5.0 重构 PHP 性能与安全天花板
后端·php
JaguarJack2 天前
FrankenPHP 原生支持 Windows 了
后端·php·服务端
BingoGo2 天前
FrankenPHP 原生支持 Windows 了
后端·php
JaguarJack3 天前
PHP 的异步编程 该怎么选择
后端·php·服务端
BingoGo3 天前
PHP 的异步编程 该怎么选择
后端·php
JaguarJack4 天前
为什么 PHP 闭包要加 static?
后端·php·服务端
ServBay5 天前
垃圾堆里编码?真的不要怪 PHP 不行
后端·php
用户962377954485 天前
CTF 伪协议
php
BingoGo7 天前
当你的 PHP 应用的 API 没有限流时会发生什么?
后端·php
JaguarJack7 天前
当你的 PHP 应用的 API 没有限流时会发生什么?
后端·php·服务端