IBM Cloud Docs
关于机器人管理

关于机器人管理

机器人管理会阻止不期望的或恶意的因特网机器人流量,同时允许有用的机器人访问 Web 属性。 机器人管理可检测机器人活动,识别期望的机器人行为和不期望的机器人行为,并确定不期望的活动的来源。

非受管机器人可能会导致 Web 属性出现严重问题。 过多的机器人流量可能会给 Web 服务器带来沉重的负载,从而减慢或拒绝向合法用户提供服务 (例如,DDoS 攻击)。 恶意机器人可以执行网络攻击,例如从网站中提取内容,窃取用户凭证以及传播垃圾内容。

机器人经理的工作

机器人管理器是管理机器人的任何软件产品。 机器人管理人员应该能够阻止某些机器人并允许其他机器人通过,而不是简单地阻止所有非人流量。 例如,如果所有机器人都被阻止,并且 Google 机器人无法对页面建立索引,那么该页面无法显示在 Google 搜索结果中,从而大大减少了到 Web 站点的有机流量。

有效的机器人经理可实现以下目标:

  • 区分机器人与人类访问者
  • 识别机器人声誉
  • 根据 IP 声誉标识机器人源 IP 地址和块
  • 分析机器人行为
  • 将“好”机器人添加到允许列表
  • 使用 CAPTCHA 测试,JavaScript 注入或其他方法对潜在机器人提出挑战
  • 速率限制任何过度使用服务的潜在机器人
  • 拒绝“坏”机器人访问某些内容或资源
  • 为机器人提供替代内容

什么是机器人?

机器人是在网络上自动执行某些操作的计算机程序。 机器人要执行的任务相当简单,但机器人可以以比人类更快的速度重复执行这些任务。

机器人不会使用传统的 Web 浏览器或鼠标访问互联网,与视觉内容进行交互。 机器人是通常使用“无头浏览器”进行 HTTP 请求和其他活动的软件程序。

机器人几乎可以执行任何可自动化的重复,非创造性任务,包括填写表单,阅读和下载内容,甚至与人类进行基本对话作为聊天机器人。 就像任何可以用好的工具一样,机器人也可以被用于恶意行为。

好的机器人与坏的机器人之间的差异

据估计,在所有互联网流量中,多达一半是机器人流量。 有些博人是恶意的,有些则是“好”的。

滥用在线产品或服务的机器人可被视为“坏人”。 坏的机器人从恶意到单纯的烦恼; 例如,闯入用户账户窃取数据或在网上购买演唱会门票以协助黄牛。

执行有用服务的机器人可被视为“好人”。 比如客服聊天机器人,搜索引擎爬虫,性能监控机器人一般都是好的机器人。 好的机器人会查找并遵守 Web 站点的 robots.txt 文件中概述的规则。

robots.txt 文件

Robots.txt 是一个文件,它概述了机器人访问 Web 服务器上的属性的规则,但该文件本身不会强制实施这些规则。 任何编程机器人的人都应遵循荣誉系统,并确保其机器人在访问 Web 站点之前检查 Web 站点的 robots.txt 文件。 恶意机器人不会遵循此系统,这将生成对机器人管理的需求。

机器人管理的工作方式

要识别机器人,机器人管理员可以使用 JavaScript 提问 (确定是使用传统 Web 浏览器) 还是 CAPTCHA 提问。 他们还可以通过行为分析来确定哪些用户是人类,哪些是机器人; 通过将用户的行为与过去用户的标准行为进行比较。

当机器人识别为错误时,可以将其重定向到其他页面或阻止其完全访问 Web 资源。

好的机器人可以添加到允许列表中。 机器人经理还可以使用进一步的行为分析来区分好的机器人和坏的机器人。

另一种机器人管理方法是使用 robots.txt 文件来设置蜜罐。 蜜罐是坏演员的假目标,当被访问时,会将坏演员暴露为恶意。 对于机器人,蜜罐可能是 robots.txt 文件禁止机器人的站点上的 Web 页面。 好的机器人会读取 robots.txt 文件,避免该网页; 有些坏的机器人会搜寻该网页。 通过跟踪访问蜜罐的机器人的 IP 地址,可以识别并阻止坏机器人。

机器人攻击类型机器人管理可缓解

机器人管理解决方案可帮助阻止各种攻击,包括以下攻击:

  • DDoS 攻击
  • DoS 攻击
  • 凭证填充
  • 信用卡填充
  • 蛮力密码破解
  • 垃圾邮件内容
  • 数据提取和网络提取
  • 电子邮件地址收集
  • 广告欺诈
  • 点击欺诈

这些机器人活动并不总是被视为“恶意”,但机器人管理者仍应能够缓解这些活动:

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

CIS 如何管理机器人?

CIS 每天从流经其网络的请求收集数据。 借助此数据,由 Cloudflare 的机器学习和行为分析提供支持,CIS 可以识别可能的机器人活动,并可为您提供有关如何使用防火墙规则允许或禁止特定机器人流量的信息。

Cloudflare Bot Management 使用以下检测机制,每个检测机制产生自己的分数,然后将其组合,以形成单个分数:

  • 机器学习: 一个高度准确的机器人识别机器学习模型,在数万亿次请求上训练,对请求处理速度的影响最小
  • 启发式引擎: 通过一组简单规则通过筛选请求来检测机器人,这些规则根据发出的请求的某些属性来捕获机器人。
  • 行为分析: 检测从未见过的机器人,计算和分析较长时间内的正常访客行为。
  • 经验证的机器人: 一种避免使用多个验证器和具有唯一良好机器人身份的机器人目录的有用机器人的意外块的方法。
  • JS 指纹: 一个挑战响应系统,将挑战注入到 Cloudflare 边缘的网页中,并在后台进行渲染以进行验证。