什么是机器人管理?| 机器人管理器如何运作

机器人管理包括识别和阻止某些机器人访问网站或者应用程序,同时允许其他机器人访问。

学习目标

阅读本文后,您将能够:

  • 了解机器人的任务,以及为何有必要对机器人进行管理
  • 了解机器人管理器产品的工作内容
  • 探索应允许某些机器人活动,同时应阻止其他机器人活动的原因

相关内容


想要继续学习吗?

订阅 TheNET,这是 Cloudflare 每月对互联网上最流行见解的总结!

参阅 Cloudflare 的隐私政策,了解我们如何收集和处理您的个人数据。

复制文章链接

什么是机器人管理?

机器人管理——机器人分组

机器人管理是指,阻止有害或恶意的互联网机器人流量,同时仍允许有用的机器人访问 web 资产。为此,机器人管理检测机器人活动、辨别有用和有害的机器人行为,并识别有害活动的来源。

如果不加控制,机器人有可能给 Web 资产带来各种严重问题,因此机器人管理必不可少。机器人流量过多会给 Web 服务器造成沉重负载,导致对合法用户提供服务的速度下降或拒绝服务(有时表现为 DDoS 攻击)。恶意机器人可从网站抓取或下载内容、盗取用户凭据、快速传播垃圾内容,或实施其他各种网络攻击。

机器人管理的工作内容是什么?

机器人管理器是任何管理机器人的软件产品。机器人管理程序应该能够阻止某些机器人并允许其他机器人通过,而不是简单地阻止所有非人为流量。例如,如果所有机器人都被阻止并且谷歌的机器人无法为页面编制索引,则该页面将不会显示在谷歌搜索结果中,从而大大减少了网站的自然流量。

一个好的机器人管理程序可以实现以下目标:

  • 识别机器人与访客之间的差异
  • 识别机器人的信誉
  • 识别机器人来源 IP 地址并根据 IP 信誉进行阻拦
  • 分析机器人行为
  • 将"良性“机器人添加到白名单
  • 使用 CAPTCHA 测试、JavaScript 注入或其他方法质询可能的机器人。
  • 对过度使用服务的潜在机器人进行限速
  • 拒绝"恶意”机器人对某些内容或资源的访问
  • 为机器人提供替代内容

什么是机器人?

机器人是在网络上运行的计算机程序。机器人被编程为自动执行某些操作。通常,机器人执行的任务相当简单,但是机器人可以一次又一次地以比人类更快的速度完成任务。

例如,谷歌使用机器人不断抓取网页并将内容编入索引以进行搜索。一个人的团队需要花费天文数字的时间才能查看整个互联网上散布的内容,但是谷歌的机器人能够使谷歌的搜索索引保持最新状态。

作为负面示例,垃圾邮件发送者使用电子邮件收集机器人从互联网上收集电子邮件地址。机器人程序会爬虫网页,查找遵循电子邮件地址格式(文本+ @符号+域)的所有文本,然后将该文本保存到数据库中。自然,人们可以在网页上查找电子邮件地址,但是由于这些电子邮件收集机器人是自动的,并且仅查找适合某些参数的文本,因此查找电子邮件地址的速度成倍增长。

与人类用户访问 Internet 不同的是,机器人通常不通过 Google Chrome 或者 Mozilla Firefox 等传统 Web 浏览器访问 Internet。机器人并不操作鼠标(或者智能手机)也不点击浏览器中的可视内容,它们只是会提出 HTTP 请求(还有其他活动)的软件程序,通常使用的是所谓的“无界面浏览器”。

机器人能做什么?

机器人几乎能够执行任何非创新性的重复任务,即任何可以自动化的任务。它们能够与网页交互、填写并提交表格、点击链接、扫描(或“爬取”)文本,以及下载内容。机器人能够“观看”视频、发表评论,以及在社交媒体平台上发帖、点赞或者转发文章。某些机器人甚至可以与人类用户进行基本的对话,这些就是所谓的聊天机器人

良性机器人和恶意机器人有什么区别?

令人惊讶的是,许多来源估计,互联网所有流量中大约有一半是机器人流量。就像某些(但不是全部)软件是恶意软件一样,某些机器人是恶意机器人,而有些是"良性的"。

任何滥用在线产品或服务的机器人均被视为"恶意“。恶意机器人的范围很广,从公然恶意的机器人(例如试图闯入用户帐户的机器人)到轻度滥用资源的形式(例如在活动网站上购买门票的机器人)。

执行所需或有用服务的机器人,可能会被视为“善意”机器人。客户服务聊天机器人、搜索引擎爬网程序性能监测机器人都是善意机器人的示例。善意机器人通常会查找并遵守网站的 robots.txt 文件中所述的规则。

什么是robots.txt文件?

Robots.txt是网页服务器上的文件,概述了机器人访问该服务器属性的规则。但是,文件本身不执行这些规则。从本质上讲,对机器人进行编程的任何人都应遵守荣誉制度,并确保其机器人在访问网站之前检查网站的robots.txt文件。当然,恶意机器人通常不遵循此系统,因此需要机器人管理。

机器人管理如何工作?

为了识别机器人,机器人管理者可以使用JavaScript质询(确定是否使用传统的网页浏览器)或CAPTCHA质询。他们还可以通过行为分析(即通过将用户的行为与过往用户的标准行为进行比较)来确定哪些用户是人类用户,哪些是机器人。要检查到后者,机器人管理者必须收集大量的质量行为数据进行比对。

如果确定某个机器人是恶意的,则可以将其重定向到其他页面,或者完全阻止其访问网页资源。

良性的机器人则可以添加到白名单,或允许的机器人列表(与黑名单相反)。机器人管理程序还可以通过进一步的行为分析来区分良性和恶意机器人。机器人管理器还可通过进一步的行为分析来分辨善意机器人和恶意机器人。

另一种机器人管理方法是使用robots.txt文件设置蜜罐。蜜罐是针对不良机器人的虚假目标,一旦被访问,就会将暴露不良机器人为恶意对象。对于机器人,蜜罐可能是robots.txt文件禁止机器人访问的网站上的网页。好的机器人会读取robots.txt文件,并避开该网页;一些不良的漫游器会抓取该网页。通过跟踪访问蜜罐的机器人的IP地址,可以识别并阻止不良的机器人。

机器人管理可缓解哪些类型的机器人攻击?

机器人管理解决方案可以帮助阻止各种类型的攻击:

下面这些其他机器人活动并不总是被认为是"恶意的”,但机器人管理器仍然能够防护它们:

  • 库存囤积
  • 在社交论坛或平台上的自动发布
  • 购物车填充

Cloudflare如何管理机器人?

Cloudflare拥有独一无二的能力,从每天流经其网络的数十亿个请求中收集数据。Cloudflare 能够利用这些数据,结合机器学习和行为分析,识别可能的机器人活动,並能够提供必要的数据来建立有效的善意机器人允许列表或者恶意机器人阻止列表。Cloudflare 还拥有广泛的 IP 信誉数据库。了解有关 Cloudflare 机器人管理的更多信息。

超级机器人抵御模式现已通过 Cloudflare Pro 和 Business 计划提供,旨在帮助较小规模的组织防御机器人攻击,同时更深入了解其机器人流量。