机器人检测 (Bot Detection) 是判别网站或服务的访问来自真实用户还是自动化程序 (机器人) 的技术。
机器人在整体互联网流量中的占比惊人。据 Imperva 2024 年报告,全部 Web 流量中约 49.6% 来自机器人,其中约 32% 是恶意机器人 (爬虫、撞库攻击、DDoS 攻击等)。
对短链接服务而言,机器人检测尤为重要。机器人的虚假点击会损害点击分析数据的可信度。如果广告活动的短链接被机器人大量点击,就会高估实际用户数,导致营销决策失误。
主要的机器人检测手法包括:行为分析 (鼠标移动、滚动模式、点击间隔的自然度)、指纹分析 (浏览器特征是否符合真人的典型模式)、频率分析 (同一 IP 的异常高频访问)、JavaScript 挑战 (排除无法执行 JavaScript 的机器人)、CAPTCHA (只有人类才能解答的验证)。
高级机器人会模拟人类行为,单一手法难以检测。组合多种手法的评分模型更为有效。Cloudflare Bot Management、AWS WAF Bot Control、reCAPTCHA Enterprise 等服务提供基于机器学习的机器人检测。相关书籍可在 Amazon 上查阅。