WebDriver 检测 的工作原理
WebDriver 是一种用于自动化浏览器的标准化协议,最初由 Selenium 推广,如今在各主要浏览器引擎中得到原生支持。当浏览器在 WebDriver 控制下启动时,规范要求它将 navigator.webdriver 属性设置为 true,这是 Web 上最广为人知的单一自动化信号。
由于该标志如此明显,攻击者惯常会修补或覆盖它,因此检测不能止步于此。通过 WebDriver 启动的自动化会话往往带有额外的痕迹:驱动注入的特定属性、被更改的默认窗口和权限状态、缺失或不一致的浏览器特性,以及典型的脚本化而非人类交互的行为特征。
因此,检测脚本会交叉引用其中许多指标。一个将 navigator.webdriver 报告为 false 但仍表现出驱动特有痕迹、矛盾能力或非人类计时的会话,会被视为很可能是自动化的。目标是韧性:任何单一检查都不应成为判定的全部依据,因为任何单一检查都可能被逐个击破。
WebDriver 和 Chrome DevTools Protocol 是相关但不同的控制通道,许多工具链两者都用。检测到其中任何一个都会增强对自动化判断的信心,而将它们的信号与指纹一致性和网络信誉相结合,会产生一个难以完全规避的判定。
WebDriver 检测 对欺诈防护为何重要
基于 WebDriver 的自动化是各种机器人的底层基础,从账户创建和表单提交,到测试工具滥用和抓取。检测它能捕获采用了标准自动化技术栈的攻击者,而且即使是隐藏 navigator.webdriver 标志所需的努力,本身也可能成为一种信号。作为一个广泛部署且标准化的控制通道,WebDriver 是寻找脚本化流量的可靠切入点。
TRACIO 如何应对
TRACIO 将与 WebDriver 相关的痕迹作为其自动化评估的一部分进行评估,把这些标记的存在或蓄意隐藏视为众多输入之一。结合指纹一致性检查和网络智能,这使平台能够标记那些已经试图隐藏明显线索的脚本化会话。结果作为识别和机器人检测响应的一部分交付,可立即使用。