运维笔记:记一次大规模Referrer Spam

有两个星期没打开GA4了,结果,刚一打开,映入我眼帘的异常数据着实把我吓了一跳。面板提示我访客数据平地起跳,不仅人数暴增,而且这些“访客”来自波兰这样八竿子打不着的地方。到底怎么回事啊?我再认真逐一检查了登陆网页,和流量来源详情,发现这些奇怪的“访客”,都有诸如news.grets.store,rida.tokyo一类的来源地址,这不很明显是引流方式吗。但以往这类垃圾流量一个月也就10条左右,不至于像这次一样成百上千条。

我用news.grets.store作为关键词在Google上一搜,好家伙,直接搜出来10,300,000条结果,大部分都是最近半个月才发布的。无数社区像炸了锅一样,包括GA自己的社区、Reddit、Cloudflare社区,不断有用户发帖求助,“怎么才能屏蔽掉它啊?”。我第一时间在访问日志里搜寻news.grets.store,希望能找到一些共性,这样能在WAF或者.htaccess里面屏蔽掉它。结果一番搜寻下来,一无所获。我的服务器日志并没有记录到任何一条来自于这些引流网站的流量。

以前从来没有重视过这些垃圾流量的我开始紧张了,在求助帖中,我接触到了Referrer Spam这个概念。通过这篇文章和维基百科,我大致了解到,这是一种专门针对GA的黑帽SEO,流量并不会到达服务器,因此无法通过一些后端的手段去阻止,唯一的解决办法还是落在GA4身上。

网上针对这种黑帽SEO的处理手段大多数都基于旧版GA,但好在这次大规模referrer spam已经发酵一段时间了,全世界网友群策群力已经发现了两三种基于GA4的解决方案。我参考了Linkedin上的这篇文章New Solutions to the ‘news.grets.store’ and other Ghost Spam Referral Traffic Issue所提到的方法,和这个网站列举出来的垃圾referrer清单,准备鼓捣一番。

// 屏蔽清单
str = '''
info.seders.website
game.fertuk.site
garold.dertus.site
kar.razas.site 
ofer.bartikus.site
trast.mantero.online
news.grets.store
static.seders.website
chnwe.smzt.shop
games.patlik.site
hitree.shop
hpqlm.smzt.shop
jjci.lighthearteds.shop 
rida.tokyo
webcache.googleusercontent.com
'''

我的GA4是很早以前通过一个叫MonsterInsights的插件安装的,Linkedin上提到的方法要通过GTM完成,于是我也顺道给网站大瘦身了,详情参考运维笔记:用GTM替换MonsterInsights。安装完GTM之后,我只想说一声,真香!这样一来安装一个GTM,就不用额外安装GA4了,这样一个整合工具实在太方便了。而且Linkedin那篇文章提及的GTM的功能让我跃跃欲试,它提供的控制粒度非常细,这可是GA4做不到的。

我照着Linkedin大佬的建议,依样画葫芦配置了我的GTM。因为触发器里多个referrer需要用|隔开,于是我用Python将这个多行字符串处理成了需要的格式
print('|'.join(str.split()))
# 输出结果是 info.seders.website|game.fertuk.site|garold.dertus.site|kar.razas.site|ofer.bartikus.site|trast.mantero.online|news.grets.store|static.seders.website|chnwe.smzt.shop|games.patlik.site|hitree.shop|hpqlm.smzt.shop|jjci.lighthearteds.shop|rida.tokyo|webcache.googleusercontent.com

配置完了,至于效果怎么样,还得等时间来检验。

发布者

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注