验证码能判断一次点击是否可疑,却很难回答另一个越来越重要的问题:完成验证之后,访问者在整个网站里做了什么?
随着浏览器自动化工具和 AI 智能体不断成熟,自动化程序已经可以执行 JavaScript、操作真实浏览器,甚至通过单次验证码。只在登录、注册或结账页面设置一道验证,已经不足以观察完整的用户行为。
Cloudflare 为此推出了 Precursor。它不再只检查某一个请求或某一次挑战,而是通过连续的客户端信号观察完整会话,识别人类操作与自动化行为之间的差异。
Precursor 是什么?
Precursor 是 Cloudflare 推出的一套客户端会话验证系统。启用后,Cloudflare 会向网站的 HTML 响应动态注入轻量级 JavaScript,在访问者浏览和操作页面的过程中持续采集行为信号。
这些信号会实时进入 Cloudflare 的 Bot 防护体系,用于区分以下流量:
- 正常的人类访问;
- 传统脚本和自动化程序;
- 使用真实浏览器运行的高级机器人;
- 能够自主浏览、点击和填写页面的 AI 智能体;
- 涉及欺诈、滥用或异常操作的会话。
Precursor 并不是 Turnstile 的替代品,而是对 Turnstile 和 Enterprise Bot Management 的补充。
Turnstile 更适合在登录、注册、结账等关键节点验证访问者;Precursor 则把客户端检测扩展到整个网站,继续观察验证前后以及不同请求之间发生的行为。
简单来说,Turnstile 解决的是“这个关键动作是否可信”,Precursor 进一步判断“整个访问过程是否像一个真实的人”。
Cloudflare 为什么推出 Precursor?
Bot 防护一直是一场持续对抗。
攻击者会调整自动化程序,防守方随后更新检测方法。传统检测主要依赖 IP 信誉、请求频率、浏览器特征和验证码,但现在的自动化工具已经可以模仿不少正常浏览器行为。
Cloudflare 每天分析超过 1 万亿次请求,观察覆盖全球网络的信誉、模式和异常信号,其网络承载的流量涉及超过 20% 的互联网网站。客户端方面,Cloudflare Turnstile 每天运行接近 30 亿次,主要部署在登录、注册和结账等敏感位置。
这些能力可以保护重要入口,但仍然存在一段观察空白:访问者通过验证后,如何浏览页面、切换窗口、输入内容并完成后续操作,单次挑战无法完整呈现。
Precursor 要补上的正是这一部分。
它持续分析完整会话中的交互规律,不要求每一步都弹出验证码,却可以为 Cloudflare 的 Bot Score、挑战决策和安全规则提供更多上下文。
为什么单次验证码越来越难以识别高级自动化?
早期脚本的行为比较容易辨认:不执行 JavaScript、请求间隔固定、访问路径机械,或者在短时间内发起大量请求。
现在的自动化程序已经可以:
- 使用完整的浏览器环境;
- 执行页面中的 JavaScript;
- 保存 Cookie 和会话状态;
- 模拟鼠标移动和键盘输入;
- 按照页面流程点击按钮;
- 等待随机时间后继续操作;
- 通过部分验证码或托管挑战。
如果检测系统只观察某一次点击,一个经过设计的自动化动作可能看起来很正常。
但在完整会话中持续保持自然的人类行为,要困难得多。鼠标如何移动、什么时候停顿、页面失去焦点后是否仍在输入、键盘事件是否与输入框状态一致,这些细节组合在一起,会形成更难伪造的行为特征。
Precursor 的判断基础,就是这些随会话不断积累的信号。
人类操作为什么很难被完整模仿?
自动化程序在模拟鼠标移动时,通常会添加高斯噪声、随机偏移或不等长的延迟。这样生成的路径看起来不再是一条绝对直线,却仍不一定符合真实的人体动作。
人类操作鼠标会受到生理结构和认知过程影响。
手腕和前臂限制
人移动鼠标时,动作通常围绕手腕支点形成弧线,还会受到前臂转动范围的限制。因此,真实轨迹很少是两点之间完全均匀的直线。
观察和反应存在延迟
用户看到复选框、按钮或输入框后,需要先识别页面内容,再决定下一步动作。视觉刺激与实际点击之间会出现可测量的反应时间。
手部存在生理性震颤
即使手部保持稳定,也会有微小振动。真实操作中还会出现细微修正、移动过头后拉回、速度变化以及短暂停顿。
自动化程序则容易表现出另一类规律:
- 使用线性插值移动鼠标;
- 生成数学上过于理想的贝塞尔曲线;
- 每次都返回相同起点;
- 对不同页面元素使用近似相同的速度;
- 点击位置精确得不符合自然操作;
- 多次操作的节奏高度一致。
单独看一次移动,这些路径可能没有明显异常。把一个会话中的多次交互放在一起,规律就更容易显现。
需要注意的是,鼠标轨迹只是 Precursor 评估的信号之一。它还会结合键盘活动、焦点变化、页面可见状态等数据进行交叉判断。
Precursor 如何工作?
Precursor 的工作过程可以分为脚本注入、客户端采集、边缘评估和会话整合四个部分。
| 工作环节 | 主要作用 |
|---|---|
| 脚本注入 | 向经过 Cloudflare 网络的 HTML 响应动态加入客户端脚本 |
| 行为采集 | 记录指针、键盘节奏、焦点和页面可见性等信号 |
| 边缘评估 | 在 Cloudflare 边缘服务器分析信号并进行交叉验证 |
| 会话整合 | 在整个会话中积累行为特征,参与 Bot Score 和安全决策 |
1. 自动注入客户端脚本
网站启用 Precursor 后,Cloudflare 会在 HTML 响应经过其网络时自动注入轻量脚本。
网站管理员不需要额外嵌入第三方代码,也不需要让页面另外连接一套采集服务。Precursor 脚本由 Cloudflare 动态组装,每次响应中的内容可以有所变化,并经过混淆处理。
Cloudflare 表示,该脚本体积较小,设计目标是不干扰网站已有的页面逻辑。
这种部署方式降低了接入成本。网站不必修改应用代码,也不用分别维护前端 SDK 和后端接口,开启功能后即可开始收集会话信号。
2. 连续采集交互信号
注入脚本会挂载轻量级事件监听器,观察访问者与页面交互时产生的信号,包括:
- 指针或鼠标移动;
- 键盘活动的时间与节奏;
- 页面焦点变化;
- 页面可见性变化;
- 不同事件之间的时间关系;
- 会话中的连续操作模式。
事件会被序列化为紧凑格式,暂存在客户端内存中,并按一定时间间隔发送至评估层。
这里的重点不是记录某一个动作,而是建立连续的行为流。单次点击可能看不出问题,但鼠标移动、窗口切换、输入和页面停留时间组合起来,可以提供更完整的判断依据。
3. 在边缘服务器进行评估
Precursor 数据到达 Cloudflare 边缘服务器后,会先被反序列化为可供检测系统使用的行为输入。
随后,调度系统会调用多个评估器。每个评估器负责读取相关数据流,并把识别出的信号写入共享检测注册表。
评估器之间还会交叉核对数据。例如:
- 指针活动是否与页面可见时间相符;
- 页面处于隐藏状态时,是否仍出现不合理的连续操作;
- 键盘事件发生时,文本输入框是否获得焦点;
- 操作节奏是否在整个会话中保持异常一致;
- 访问路径与页面操作是否存在逻辑冲突。
经过整合的信号会参与检测权重计算,而不是仅凭某一次鼠标移动直接判定访问者为机器人。
4. 建立会话级行为视图
Precursor 的数据以会话为范围持续积累。
会话级设计很重要,因为自动化程序不能简单依靠刷新页面或重新触发挑战,清除之前形成的行为特征。只要访问仍属于同一个会话,早期行为就能继续参与后续判断。
Precursor 还会把会话元数据传递给下游检测层,用于:
- 在影子模式下运行新的判断规则;
- 分析预测完成情况与实际完成情况;
- 识别异常或拖延的会话;
- 改进后续检测模型;
- 调整当前会话的 Bot Score。
与逐请求判断相比,会话分析可以回答“访问者在一段时间内做了什么”,而不只是“这一个请求是否异常”。
Precursor 如何保护用户隐私?
持续收集客户端信号容易引起隐私方面的疑问。Cloudflare 将 Precursor 描述为一套采用隐私设计原则构建的系统,其采集目标是区分人类、自动化程序和滥用行为,而不是读取用户输入内容。
以键盘事件为例,Precursor 采集的是输入时间和节奏,不是用户实际按下的按键。也就是说,系统关注的是“如何输入”,而不是“输入了什么”。
其隐私设计主要包括:
- 只采集识别自动化所需的最低限度信号;
- 不记录键盘实际输入内容;
- 以聚合行为模式进行评估,而非孤立追踪单个动作;
- 行为信号供 Cloudflare Bot 检测系统内部使用;
- 不在客户控制面板中直接暴露原始行为数据;
- 不与用户账户、登录身份或持久化个人档案绑定。
网站在启用该功能前,仍应根据自身所在地区、业务类型和数据处理要求,评估隐私政策、Cookie 告知、数据处理协议及其他合规事项。Cloudflare 的产品设计不能代替网站运营方自身的合规责任。
Security Analytics 增加会话级分析
为了配合 Precursor,Cloudflare 正在 Security Analytics 中加入基于会话的查看方式。
传统安全分析通常围绕单个请求展开,例如某个请求来自哪个 IP、使用什么浏览器、触发哪条安全规则。会话视图则把多个请求与请求之间的客户端行为放在一起,呈现完整访问过程。
网站管理员可以借此分析:
- 网站上的典型会话是什么样;
- 哪些会话偏离预期操作路径;
- 哪些访问在一段时间后呈现自动化特征;
- 请求之间发生了哪些可疑行为;
- 单次请求正常但整体会话异常的情况;
- 不同 Bot Score 会话的行为差异。
Precursor 收集的上下文会直接进入 Cloudflare 现有的 Bot Score、挑战决策和安全规则系统。因此,启用后不需要另建一套独立防护流程,已有 Bot Management 规则也能从新增信号中受益。
Precursor 与 Turnstile 有什么区别?
两项功能都用于区分真实用户和自动化流量,但观察范围并不相同。
| 对比项目 | Cloudflare Turnstile | Cloudflare Precursor |
|---|---|---|
| 主要定位 | 风险型托管挑战 | 连续的客户端会话验证 |
| 观察位置 | 登录、注册、结账等关键节点 | 整个网站或应用会话 |
| 判断范围 | 某次挑战及其上下文 | 完整访问过程中的连续行为 |
| 交互方式 | 根据风险决定是否增加验证摩擦 | 主要在后台持续观察 |
| 适用目标 | 验证关键动作是否来自可信访问者 | 识别长期自动化和智能体行为 |
| 产品关系 | Enterprise Bot Management 的验证能力 | 对 Turnstile 和 Bot Management 的补充 |
两者可以配合使用。网站先利用 Turnstile 保护注册、登录或支付入口,再由 Precursor 观察通过验证后的完整会话。
如果某个会话没有完成充分验证,Precursor 也可以结合策略触发挑战;如果已有可信会话,则可以在较低摩擦的情况下继续评估。
Precursor 对普通用户有什么影响?
对正常用户而言,Precursor 的目标是减少不必要的中断。
以往为了拦截高级自动化,网站可能提高挑战频率,导致正常访问者反复进行验证码验证。Precursor 获得的会话上下文越充分,Cloudflare 越有机会在不增加明显操作步骤的情况下完成判断。
对自动化工具开发者来说,成本则会提高。程序不只需要模拟一次点击,还要在较长时间内维持合理的鼠标路径、输入节奏、页面焦点、访问顺序和响应时间。
完整模拟会话行为意味着:
- 自动化逻辑更复杂;
- 开发和维护成本更高;
- 运行效率可能降低;
- 不同页面和设备需要分别适配;
- 大规模运行时更容易出现行为一致性问题。
这并不意味着所有机器人都能被永久准确识别。Bot 检测仍然是持续对抗过程,新的检测方式也会促使自动化工具调整策略。Precursor 的价值,在于增加会话层上下文,让检测不再过度依赖单个检查点。
哪些网站更需要会话级 Bot 检测?
Precursor 更适合自动化风险较高、业务路径较长或账号价值较高的网站。
登录和账号系统
撞库、批量登录、账号接管等行为可能在单次请求中表现正常,但完整会话往往会留下重复路径、异常节奏和操作一致性。
注册和营销活动
批量注册、活动套利和虚假账号通常会尝试模拟正常浏览器。会话级信号可以帮助识别挑战前后的自动化特征。
电商和票务网站
自动抢购、库存占用、批量下单以及结账滥用会跨越商品浏览、购物车和付款等多个步骤,只分析结账请求容易遗漏前面的行为。
SaaS 与 AI 工具
免费额度滥用、批量创建账号和自动调用网页功能,可能不会立即表现为高频请求。连续行为分析更适合发现这种低速、分散的自动化。
金融与高价值业务
欺诈操作通常涉及登录、资料查询、设置修改和交易等多个环节。会话级检测可以把这些动作放在同一个上下文中评估。
内容和数据平台
自动采集程序正在从简单 HTTP 请求转向真实浏览器和智能体操作。页面之间的访问顺序、停留时间和交互模式,可以为识别此类流量提供补充信号。
如何启用 Precursor?
Cloudflare 正在逐步推出 Precursor,符合条件的网站可以直接在 Cloudflare 控制面板中启用。
基本步骤如下:
- 登录 Cloudflare 控制面板;
- 选择需要保护的域名;
- 进入 Bot Management 相关配置;
- 找到并开启 Precursor;
- 设置会话验证严格程度;
- 在 Security Analytics 中观察会话数据;
- 根据实际误报和风险调整挑战策略。
Precursor 提供不同使用方式。网站可以先采用低摩擦模式,在后台观察会话行为;也可以要求完整验证,当现有会话不满足验证条件时执行挑战。
启用后,Cloudflare 会自动向符合条件的 HTML 响应注入脚本,网站应用本身不需要修改代码。
已经使用 Bot Management 或 Turnstile 的企业,可以把 Precursor 作为原有防护的扩展,把检测范围从关键挑战节点延伸至整个访问会话。
上线前需要检查什么?
虽然 Precursor 不要求修改应用代码,正式启用前仍建议完成以下检查:
- 确认网站已正确接入 Cloudflare;
- 检查 Enterprise Bot Management 使用资格;
- 在测试域名或低风险区域先行启用;
- 观察页面性能和前端兼容情况;
- 检查单页应用、动态页面和嵌入式组件;
- 核对隐私政策与数据处理说明;
- 对比启用前后的 Bot Score 分布;
- 观察正常用户是否出现额外挑战;
- 检查登录、注册和结账转化率;
- 为误判和异常会话准备回退方案。
会话检测带来的信号更多,但规则也不能一次设得过严。先观察,再逐步用于挑战和拦截,通常更适合已有业务的网站。
Precursor 当前如何收费?
Cloudflare 公布的信息显示,Precursor 在正式全面发布,也就是 GA 版本推出之前可以免费使用,GA 计划安排在2026年晚些时候。
正式发布后的计费方式、套餐限制和适用范围,应以 Cloudflare 后续公布的产品页面及企业合同为准。企业在正式部署前,还需要确认当前账户是否具备 Enterprise Bot Management 权限。
-
广告合作
-
QQ群号:4114653



