博客

现在是重新评估机器人对策的时候了

Jim Downey 缩略图
吉姆·唐尼
2023 年 2 月 10 日发布

如果您作为一名安全专家,认为您已经解决了机器人缓解问题,请再想一想。

机器人会造成巨大的经济损失:撞库攻击机器人会导致账户被接管,未经授权的经销商机器人会使产品发布和限时优惠陷入混乱,抓取机器人会降低性能并增加基础设施成本,礼品卡破解机器人会耗尽余额并激怒客户。 不仅影响巨大,而且由于攻击对于犯罪分子来说利润丰厚,因此在线企业遭受攻击的可能性几乎达到 100%。 鉴于其高影响和高概率,您显然需要一个有效的安全策略。 然而,正如最近的头条新闻所显示的那样,攻击者继续开发绕过常见机器人防御的方法,因此现在是重新评估针对机器人的对策的最佳时机。

2023 年 1 月 24 日,Ticketmaster 母公司 Live Nation 总裁乔·贝希托德 (Joe Berchtold) 在美国作证 参议院司法委员会认为,转售机器人对泰勒·斯威夫特即将举行的巡回演唱会的门票销售处理不当负有责任。 贝希托尔德向参议员们表示:“这导致了糟糕的消费者体验,我们对此深感遗憾。”

此外,在 2023 年 1 月, CNET 报道称,数千名使用诺顿密码管理器的人收到通知,称未经授权的一方可能已经获取了他们的个人信息以及存储在保险库中的密码的访问权限。 Norton 的母公司 Gen Digital 将该安全事件归咎于机器人驱动的撞库攻击攻击,该攻击是其 IDS(入侵检测系统)系统标记异常高的登录失败次数时检测到的。

Ticketmaster 已经投资了缓解机器人的问题,我们可以假设 Gen Digital 也采取了保护措施。 然而,机器人仍然会造成安全损害,影响可用性和机密性,此外还会引发大量负面报道。 这就引出了一个显而易见的问题: 虽然反机器人解决方案已经存在多年,但为什么这么多的机器人防御措施都无法减轻恶意机器人的威胁?

对于仍然依赖 CAPTCHA 的组织来说,答案是显而易见的。 除了惹恼真实客户并降低电子商务的转化率之外,CAPTCHA 没有任何作用。 只要在网上搜索 CAPTCHA 解决服务,您就会发现至少有十几种在价格和速度上相互竞争的服务。 一个开源库的创建者已经将使绕过 CAPTCHA 变得轻而易举作为自己的使命:

“当前形式的 CAPTCHA 已经失败了。 它们对人类的阻碍和烦恼比对机器人的阻碍和烦恼要大得多,这使得它们变得毫无用处。 我对这次讨论的无政府主义贡献是证明这种荒谬性,使用一个机器人插件,只需一行代码就可以绕过任何网站上的 reCAPTCHA。”

对于依赖基于 WAF 的 IP 拒绝列表来缓解机器人威胁的组织来说,这项任务同样毫无希望。 有一些服务可以为机器人创建者提供数千万个住宅 IP 地址,旨在绕过机器人检测。 这些服务被宣传为轮换住宅代理;机器人向代理发送 http 请求,就像许多企业浏览器通过转发代理发送请求一样,并且该服务不断轮换用于向网站或 API 发送请求的公共 IP 地址。过去,机器人通常使用数据中心代理,通常来自云服务,这些代理众所周知且易于识别。 然而,这些新的代理服务使用与您的客户来自同一地理区域的住宅 IP 地址。 由于 ISP 的 NAT 作用,每个 IP 地址可以同时代表一个机器人或一个有效客户,因此如果不拒绝真正的客户,阻止所有这些 IP 地址是不可行的。

更进一步, ZenRowsScrapFlyScrapingBee等新商业服务让网页抓取变得像调用 API 一样简单。这些服务将全权负责为您绕过机器人防御。 虽然这些基于 API 的服务专注于数据抓取(这在美国和欧盟都是合法的),但犯罪分子可以在暗网上使用类似的服务,执行更邪恶的机器人攻击,例如撞库攻击。

除了商业服务外,还有一些开源项目正在解决机器人绕过问题。 Puppeteer 是一款流行的 node.js 自动化和测试工具,其隐形插件可使 Puppeteer 绕过检测。 一群活跃的开发人员在GitHub上维护该项目,并在已知机器人防御检测到它时发布更新。 根据其文档,“由于这个猫捉老鼠游戏尚处于起步阶段并且节奏很快,因此插件尽可能保持灵活性,以支持快速测试和迭代。” 一个类似的库, undetected-chromedriver ,专门针对Python开发人员。 本着开源精神,这些项目的目的是保持网络开放,以便开发人员针对应用程序运行自动化。 不幸的是,这种功能很容易被犯罪分子利用。

随着越来越多的组织参与创建开源项目和商业服务,参与绕过机器人防御的开发人员学习和共享信息。 这些说明引导读者完成对检测工具的 JavaScript 进行反混淆的步骤,并解释这些工具如何打包其数据以传输到其检测服务。 通过对客户端代码进行逆向工程,这些开发人员了解了检测工具的工作方式。 例如,ZenRows 的一名开发人员分享了他对窗口大小以及机器人检测服务捕获不一致的方式的了解:

“在传感器数据示例图像中,我们可以看到它发送窗口大小。 大多数数据点都是相关的:实际屏幕、可用尺寸、内部尺寸和外部尺寸。 例如,内部不应该大于外部。 随机值在这里不起作用。 你需要一套实际尺寸。”

考虑到威胁的严重性,显然现在是时候重新评估你的机器人缓解对策了。 作为机器人检测功效的领导者,F5 可以提供帮助。 如果您想了解您的机器人缓解效果的真实状态、您缺少哪些机器人以及它对您的业务造成了多大损失,F5 提供免费的威胁评估机器人业务影响咨询