在过去两周中,匿名用户的页面浏览量(PV)激增。然而,Google Analytics(GA)却呈现出不同的情况。正如您所见,GA 甚至显示略有下降。我很高兴看到增长,但更想了解这些突然出现的匿名用户 PV 究竟来自哪里?
是否有办法查看匿名用户的引荐来源网站?
在过去两周中,匿名用户的页面浏览量(PV)激增。然而,Google Analytics(GA)却呈现出不同的情况。正如您所见,GA 甚至显示略有下降。我很高兴看到增长,但更想了解这些突然出现的匿名用户 PV 究竟来自哪里?
是否有办法查看匿名用户的引荐来源网站?
你好 @zhenniwu
这并非真正的“增长”。你的网站很可能被一个不遵守任何 robots.txt 规则的恶意机器人访问过,该机器人已被 Google 标记为“恶意机器人”,因此其流量已被从统计中过滤掉。
除非你愿意投入大量时间和精力进行机器人检测和拦截(这对大多数人来说大多是浪费时间),否则你对此几乎无能为力。
这不过是“网络生活的常态”,在大多数情况下,根本不值得为此费心。
@neounix 非常感谢您的指点!这证实了我们的怀疑。我们计划对 Discourse 进行更新,希望这能限制那些恶意机器人的请求频率。我们将继续监控来自匿名用户的页面浏览量。
顺便问一下,您是否知道有没有办法确认访问者是否为机器人?非常感谢您的帮助!
你通过观察其行为并意识到这是一种异常,其实已经确认了它是一个机器人。
当客户端的用户代理(UA)字符串以某种方式声称“我是机器人”时,检测机器人很容易。然而,“流氓机器人”不会在其 UA 字符串中声明自己是机器人,因此我们必须根据其行为来检测机器人及类似活动。
如果你想的话,可以编写代码来自动化这一过程;然而,检测所有类型的机器人并非易事,因为机器人的行为特征多种多样,不仅仅体现在访问频率上(正如你所见)。
在开始构建检测方案之前,你必须先问自己:“检测它们的目的是什么?”
你为什么在意呢?@zhenniwu
顺便一提,这是 Research Gate 的一位编辑于 2017 年 7 月撰写的关于这一主题的文章。祝阅读愉快!
你觉得这也是我们为 Google 所做的 robots 变更吗,@sam?
这完全有可能,但唯一能确定的方法是查看实际的流量数据。
绝大多数机器人并不遵守 robots.txt 文件。
事实上,许多恶意机器人会读取 robots.txt 文件,以获取管理员不希望其访问的区域信息,然后试图从这些区域窃取数据!
换句话说,对于网络上 99.9%(随便选一个很高的百分比)的机器人而言,robots.txt 并不能有效控制其行为;同时,它还可能暴露网站中“敏感”区域的信息。
根据我们七年的托管业务经验,这并不属实。我确信确实存在恶意机器人,但它们远非普遍现象。
明白了。所以这次爆炸可能并非由 rogue bots 引起。
@codinghorror @sam,我们很乐意提供数据供您进行任何分析和调试。请告诉我您需要什么,我会立即发送给您。提前感谢!
你好 Jeff!
那你真是幸运!我附上了一篇发表在 ResearchGate 上的论文,题为《虚拟化网络空间——用于认知网络态势感知的模式与异常可视化》,其中展示了我所描述问题的一部分!
此外,仅供参考,这是我们“简短”的部分 User Agent 字符串列表,这些字符串不遵守 robots.txt 规则,并会抓取我们的网站(已更新):
AddThis|OPPO A33|Mb2345Browser|UCBrowser|MQQBrowser|MicroMessenger|LieBaoFast|Clickagy|DotBot|Linespider|Applebot|Ask Jeeves|Baiduspider|ADmantX|Spinn3r|rogerbot|YesupBot|ValueClick|Twitterbot|FriendFeedBot|Squider|ContextAd|Voyager|Chattertrap|YandexBot|bingbot|Virtual Reach NewsclipCollector|FlipboardProxy|Flipboard|proximic|YahooFeedSeeker|Xenu|TwitterFeed|GrapeshotCrawler|NewsGatorOnline|Sosospider|OpenISearch|discobot|EasouSpider|FeedDemon|YottaaMonitor|CacheSystem|UnwindFetchor|JikeSpider|Konqueror|Superfeedr|Nachobot|percbotspider|WeSEE:Search|Cliqzbot|Exabot|Wget|TweetedTimes|YoudaoBot|stumbleupon|omgili|BoardReader|Gigabot|trendictionbot|InAGist|DoCoMo|PaperLiBot|YisouSpider|TweetmemeBot|libwww-perl|YandexDirect|CrystalSemanticsBot|httrack|msnbot-UDiscovery|MaxPointCrawler|CrystalSemanticsBot|W3C_Validator|magpie-crawler|Flipboard|flipboa|PostRank|Chrome-Lighthouse|Summify|Sogou|archive.org| UptimeRobot|robot|A6-Indexer|ShowyouBot|crawler|Genieo|Apache-HttpClient|curl|Technoratibot|Feedbin|SensikaBot|SiteExplorer|Digg|Yahoo Pipes|QuerySeekerSpider|Alamofire|AhrefsBot|SeznamBot|Kraken|BomboraBot
上述列表仅是部分列表,且已很久未更新;因此它并不“完美”,也相当“过时”了…… ![]()
我们在过去二十年的直接经验(包括编写大量机器人检测和可视化代码,并在该主题上发表了多篇论文、视频和演示)表明,只有极少数机器人遵守 robots.txt,而那些遵守指令的通常来自 Google、Bing(Microsoft)等大型公司。
最具侵略性的机器人会伪造其 User Agent 字符串,使其看起来像是“非机器人”的 User Agent 字符串。
此外,最严重的违规者来自中、俄、韩三国的机器人;我们为遗留论坛编写的插件代码能够基于蜜罐技术和其他行为模式检测这些恶意机器人。你可以在附件的论文中看到一些结果,其中包含色彩丰富的网络空间机器人图像供你欣赏。
例如,根据我们的经验和直接的网络安全可视化研究,Discourse 开箱即用(OOTB)的 robots.txt 中列出的所有机器人都不遵守 robots.txt,包括 DotBot、semrushbot 和 ahrefsbot(我们曾与 ahrefsbot 遇到过非常严重的问题,这在另一场演示中有所强调,参见图示):
User-agent: DotBot
Disallow: /
User-agent: mauibot
Disallow: /
User-agent: semrushbot
Disallow: /
User-agent: ahrefsbot
Disallow: /
User-agent: blexbot
Disallow: /
User-agent: seo spider
Disallow: /
在遥远的过去,我们曾在 robots.txt 中列出上述这些机器人(以及更多!),并且至今仍在这样做。但我们发现,上述列出的机器人中“几乎为零”遵守 robots.txt 指令。
如果你的托管网站有不同的体验,那你真是非常幸运!
我们进行了大量测试,编写了大量可视化代码,并且基于同行评审的研究,我们确切地知道:大多数机器人不遵守 robots.txt,只有少数“顶级科技公司”的机器人会遵守。
虽然下面这篇我们撰写的论文并未列出所有机器人,但它确实展示了我们在该领域进行广泛测试和编写代码(在 Unity 游戏引擎和 LAMP 平台上)的程度:
我们也附上了这篇论文作为参考,因此无需从 ResearchGate 下载。
祝阅读愉快!
Virtualized_Cyberspace_-_Visualizing_Patterns_Anom.pdf (2.0 MB)
附言:如果我有时间,我计划在 2021 年将大量遗留的 LAMP 机器人检测代码移植到 Rails 中!
另请参阅:
https://www.researchgate.net/publication/314356740_Patterns_Anomalies_in_Cyberspace
(也已附在下面)
anomalies_cyberspace_v01.pdf (3.3 MB)
演示文稿中的示例图表,显示了超过 200 个伪装成普通用户的中国百度机器人(使用普通用户 UA 字符串,而非“机器人字符串”),从巴西 IP 地址(而非中国)抓取网站。
好奇想看看具体有哪些变更。有相关的提交或变更列表吗?
没错,如果真是这种情况,我们的客户早就气急败坏了,因为他们实际上是按页面浏览量收费的。恶意爬虫导致的过度页面浏览量会让他们产生额外费用,并促使他们离开我们的托管平台。这就是为什么我们大幅限制了 Bing 的访问速度,例如——如果您感兴趣,不妨搜索一下看看。
因此,是的,我们七年的托管经验表明,恶意网络爬虫/机器人虽然存在,但并非重大问题。
(我对 Stack Overflow 也是同样的看法,它是全球前 100 的网页资产,由我共同创立。)
嘿,Jeff!
对话真精彩!
不久前,我与总部位于纽约市的一家大型技术广告网络的首席财务官进行了一次电话会议。他告诉我,他们(以及他们的广告主)将机器人流量(无论是恶意的还是其他类型的)视为最关注的问题之一,并在这一领域投入了大量资金(用于区分合法用户流量与机器人流量)。
因此,如果你的网站没有遇到困扰华尔街及其广告主(他们一直在与这些问题作斗争)的那些问题,那你确实非常幸运。
坦白说,过去二十年来,我合作的许多从事网络安全和反欺诈业务的企业,其经历与你描述的恰恰相反。
做得好,Jeff!
顺便一提,你可能会对这个感兴趣。这篇内容虽然有些“过时”(发表于五年前),但自 2015 年以来,问题并未得到“改善”:
上文来自 CSOonline 的引用(2015 年):
“良性机器人”占今年流量的 36%,高于去年的 21%。“恶意机器人”占今年流量的 23%,略低于去年的 24%——并非因为流量总量下降,Essaid 重申,而是因为“良性机器人”的数量大幅上升。人类用户流量仅占 41%,低于去年的 55%。
该公司将“恶意机器人”定义为那些不遵守“robots.txt”文件且未为所访问网站提供价值的机器人。
我会尝试寻找更接近 2020 年的参考资料并稍后发布,毕竟 2015 年的数据在五年后的今天已略显过时!
根据我与网络安全领域客户的实际经验,2020 年的“恶意机器人”流量比例远高于上述 2015 年 CSO 报告中的数据;因此,如果任何人没有“恶意机器人”问题,那确实是非常幸运!过去十年中,我们编写了大量用于“检测并分类恶意机器人”的代码,但这非常棘手:机器人编写者越来越“狡猾”
,并且擅长修改其用户代理字符串(以及机器人访问时机和行为),使其看起来像合法的人类流量(这远在 Cloudflare 出现之前就已存在)。
听到 Jeff 说 Discourse 站点基本上不受这类“恶意机器人”流量的影响,而且无需复杂的机器人检测代码即可缓解他人所面临的难题,这真令人欣慰。
所有 Discourse 托管服务是否都位于 Cloudflare 之后?Cloudflare 正是为此类防护而设计的。
正如我所说,如果真如您所描述的那样(大量失控的机器人每秒抓取数百万个页面),我们早就无法经营下去了,所以这简直是个奇迹!我不太清楚该如何解释您坚信的事实与我本人在 Stack Overflow(2008-2012 年)和 Discourse(2012 年至今)所经历的实际商业状况之间的这种矛盾。
另一方面,广告网络和机器人则是另一回事——因为伪装成用户并点击广告的机器人,是机器人编写者赚取“免费”资金的一种方式。
也许区别在于,我们的大部分客户并不依赖广告?即使在 Stack Overflow,展示广告也只是业务的一小部分。在思考这个问题时,牢记这一关键差异或许是个好主意。
你好,Jeff,
仅供参考,机器人流量超过人类流量是互联网上的普遍认知,并非我个人的观点。
同样,这也是普遍认知(非个人观点):大量机器人流量来自不遵守 robots.txt 协议的机器人。有人估计至少占一半,而根据我的经验,这“取决于具体网站和主题”。
我很高兴你在自己创立和运营的公司中有不同的体验,并为你感到开心。
另一方面,互联网上的事实是:2020 年机器人流量约占所有流量的 55% 至 60%;而在这些机器人流量中,大约有一半来自不遵守 robots.txt 协议的机器人。一些研究将“恶意机器人”流量比例低至全部流量的 35%,也有研究给出更高数值,具体取决于研究来源。我并非信口开河,这些都有充分记录。
如果你除了你在 Discourse 的托管经验或过往经历之外,还有其他研究论文或统计数据,能够证明“恶意机器人”流量微乎其微,我将非常乐意阅读。因为就我个人而言,从未见过任何研究论文或参考文献指出“恶意机器人”流量如你在此所述那般微不足道。
如果我的不同意见让你感到不快,我深表歉意。我已提供参考资料,如果你愿意了解关于互联网流量的事实,我还可以提供更多(并非个人观点)。
否则,我将不再就此话题发帖,以免打扰你🙂,毕竟我不想因为你在论坛上持有强烈观点的事情而与你产生分歧,而我在此并无管理权限。
祝你节日快乐!
或许对于那些在广告收入争夺中与机器人和虚假点击展开生死搏斗的广告网络来说情况如此。但在 Stack Overflow 和 Discourse 呢?这基本上不是个问题。
如果你喜欢基于理论争论假设性问题,请自便。你可以整天整天地随心所欲地进行理论推演。希望这种理论推演能为你的生活带来巨大的快乐和幸福!与此同时,我们还有业务要经营,因此我更喜欢根据我们在实际业务中收集到的真实数据来做决策。我想我在这方面有点“疯狂”。如果你对此感到困扰或困惑,我很抱歉。
祝你今天剩下的时光愉快!
嗯……我可能漏掉了什么,但你上面链接的研究似乎并没有真正展示整个网络的普遍趋势。
它似乎侧重于以某种方式展示网站流量,使得识别和量化……可疑的……流量变成一项相当简单的视觉操作,这本身看起来就很有趣。然而,文中并没有说明涉及的是哪些网站,甚至没有说明是什么类型的网站。因此,很难评估所显示的实例是否具有整个网络的代表性。
注意:我并不是在质疑机器人流量总体上是否庞大,也不是在质疑是否存在大量“恶意”机器人……但是(可通过谷歌搜索到的)统计数据似乎与你截图中的搜索结果存在一定的差异。
更有用的做法可能是对哪些类型的网站容易受到何种类型机器人的积极攻击进行统计分析。(例如,我预计 Facebook 及类似平台会吸引某类机器人不成比例的大量关注;而另一类机器人可能几乎只针对广告密集的网站。)
嗨,Jeff,
如果你想把我描绘成一个对互联网网络操作一无所知的“疯狂理论家”,那也无妨;但事实绝非如此,任何了解我的人都知道这一点 ![]()
原帖中确实出现了流量峰值。这很可能是由机器人引起的。我想我们可以就此达成共识 ![]()
祝你度过美好的一天,Jeff,也祝你假期愉快!
另外,感谢你向我介绍 Ruby on Rails。如果不是因为你和 Discourse,我就不会在日常工作(Discourse 之外)中编写 Ruby 代码,这绝对是 2020 年发生在我身上最棒的技术事件!我就是热爱 Ruby。
再次感谢你,Jeff!
你好 @Sailsman63
我在多个领域提供了一些补充参考资料;我既没有发布,也从未声称发布过关于所有操作场景下所有互联网流量的详细报告或调查。
在我看来,任何具备合理研究与分析能力、并在互联网上投入至少 60 分钟进行调研的工程师,都将:(1)找到大量关于运营报告(而非理论)的参考资料,说明互联网上网络流量中有多少比例归因于机器人;(2)找到若干参考资料,进一步量化其中有多少流量来自不遵守 robots.txt 的“恶意机器人”。
这并非“理论”或“我的观点”,而是一个公认的事实。任何愿意深入了解的人都能发现这一事实;从运营角度来看,我们每天在分析日志文件、处理网站流量行为时都能观察到同样的现象,例如设置只有机器人才能发现的蜜罐(普通人类用户绝不会访问这些地方),因此只有机器人会访问这些地方,等等。
我在多个网站上设置过许多“蜜链”,并在过去的工作中捕获过大量机器人;因此,这绝非我凭空捏造,哈哈。网上其他人也做过同样的事情(这是一种常见的网络安全技术),并非只有我这样做,我向你保证
。
祝你有美好的一天!