文章总结: 马萨诸塞大学阿默斯特分校研究团队提出名为MARK的多层指纹识别方案,通过时序、TLS协议、HTTP请求和浏览器行为四层特征高精度识别AI爬虫智能体。该方案完全部署在服务端,无需客户端代码,能有效区分不同底层架构的AI智能体、传统爬虫与真人用户,整体识别准确率达97%,为网站内容保护提供了从单一规则拦截转向精细化特征识别的新思路。 综合评分: 88 文章分类: web安全,应用安全,网络安全
多层指纹技术精准识别AI爬虫智能体
原创
黑鸟 黑鸟
黑鸟
2026年6月24日 23:26 广东
在小说阅读器读本章
去阅读
AI爬虫智能体系统可以独立打开网页、点击按钮、填写表单,自动完成一整套线上操作,同时也带来了未经授权批量抓取内容的隐私和安全问题。
网站运营方过去靠 robots.txt 约定爬虫规则,再配上验证码、反向代理做拦截,但这些手段在 AI 爬虫智能体面前越来越不够用。已有大量研究证实,很多大模型爬虫根本不遵守 robots.txt,有的还会直接伪造 User-Agent 请求头,伪装成普通用户绕过限制。传统拦截只能简单放行或拉黑,没法分辨对面到底是哪类访问者。
马萨诸塞大学阿默斯特分校的研究团队做了一套名为 MARK 的多层指纹识别方案,从网络协议到浏览器操作行为逐层提取特征,能高精度识别并区分不同的 AI 爬虫智能体。
为什么传统反爬拦不住 AI 智能体?以前的传统爬虫大多用专用 HTTP 库写出来,网络栈特征非常明显,看一眼 TLS 握手信息或者请求头就能认出来。但 AI 爬虫智能体不一样,它们大多直接驱动真实浏览器内核运行,会像真人一样产生点击、滚动、输入等交互行为,同时又完全由程序自主决策,既不像传统爬虫,也不完全等同于真人。
过去的浏览器指纹、行为指纹技术主要针对普通用户和传统机器人设计,没考虑 AI 智能体的自主决策特性。这项研究的核心思路,就是针对 AI 智能体的结构特点,从好几个网络层级里找差异,搭一套专门的识别体系。
研究团队提出了MARK 框架:四层特征拼出智能体指纹,MARK 完全部署在网站服务端,不需要在用户浏览器里插任何代码,就能从四个维度采集访问者特征,最后汇总成一组可用于分类的特征标签。
【MARK 多层智能体指纹框架总览。框架包含 Agent 任务配置、多维度痕迹采集、跨层特征提取、分类归因四个核心环节,完整覆盖时序、TLS 协议、HTTP 请求、浏览器行为四层数据维度】
- 时序特征
简单说就是看访问者发请求的节奏。基于 HTTP 请求的时间序列,计算请求间隔的平均值、波动范围、中间值,以及请求频率的稳定程度、页面停留时长、静态资源加载的突发模式,一共 9 项指标。
不同智能体的执行循环效率、决策逻辑不一样,发请求的快慢和节奏自然就有差别,这是很直观的区分信号。
- TLS 层特征
TLS 就是浏览器和网站建立加密连接时握手的那套规则。研究从客户端握手包里拆出 29 项特征,包括后量子密钥交换算法的使用比例、JA3 和 JA4 指纹、HTTP/2 连接序言参数、GREASE 扩展使用情况等等。
其中 JA4 指纹比老的 JA3 更稳定,不受浏览器扩展随机排序的影响,能更可靠地反映客户端底层 TLS 库的实现特点。
HTTP/2 这一层参考了 Akamai 的指纹标准,提取 WINDOW_UPDATE 增量、pseudo-header order、stream 优先级权重这些参数。不同浏览器、不同自动化工具对 HTTP/2 优先级的实现逻辑不一样,这些底层默认配置很难刻意伪装。
- HTTP 层特征
HTTP 层一共提取 35 项特征,包括导航请求头的排列顺序哈希、Sec-Fetch 系列头的语义是否合理、Sec-Ch-Ua 和 User-Agent 是否自洽、标准浏览器头是否齐全、从 User-Agent 解析出的浏览器和系统版本、Priority 头的紧急度是否符合请求类型,以及有没有非标准的自定义请求头。
真人用的正常浏览器,请求头顺序是固定的。自动化框架经常动态拼接请求头,顺序就会变得非常随机。Sec-Fetch 系列头用来描述请求是怎么发起的、目标是什么、和当前页面什么关系,正常浏览器的取值组合有严格逻辑,一旦出现不可能的搭配,基本就能断定是自动化程序。
- 浏览器行为特征
行为层从前端事件日志里提取 108 项特征,包括单次会话里各类事件的数量和频率、事件间隔的统计分布、不同事件类型的占比、输入延迟和按键时长、鼠标移动总距离和点击位置、键盘输入习惯、滚动深度和次数、每个页面停留多久、访问路径是什么、有没有完成页面任务,以及页面跳转的方式。
前端事件按 1 毫秒精度记录,鼠标移动事件做了节流处理,每 16 毫秒最多只记录一次鼠标位置,刚好对应普通显示器 60 帧每秒的刷新率,既能看清光标移动轨迹,也不会产生太大数据量。所有事件数据都在页面关闭时批量上报,不会产生额外的中间请求,避免污染网络层的特征数据。
研究选了六款有代表性的网页智能体做测试。三款开源框架 AutoGen、Browser Use、Skyvern 统一用 GPT-5-mini 作为底座,三款闭源产品 Operator、Claude、Gemini 用各自原生的 computer-use 模型。每款智能体重复跑 30 次相同任务,同时采集 30 名真人用户和三款传统爬虫的流量作为对照。
不同智能体在请求节奏上的差异最直观,光看请求间隔和频率,就能大致分出几类。
【不同 Agent 的请求间隔与事件间隔对比。左图为请求间间隔 IRI,右图为交互事件间间隔 IEI,二者整体趋势高度一致,直接反映了不同 Agent 的执行节奏策略差异】
【不同 Agent 的请求频率与变异系数对比。请求频率将六款 Agent 划分为三个特征集群,变异系数则补充体现了各 Agent 执行节奏的稳定性,Claude 一致性最高,AutoGen 波动最大】
每款智能体在各层特征上的表现都不一样,这些差异本质上来自它们的底层架构设计。
AutoGen 基于 Accessibility Tree 解析页面,请求间隔长、波动大,节奏最接近真人思考的速度。它的 User-Agent 和 Sec-Ch-Ua 明显对不上,多数请求带着无头 Chrome 的特征却声明自己是 Edge 浏览器,几乎所有请求都缺 Accept-Language 头,且 Sec-Fetch-Site 固定为 none。
Browser Use 基于 DOM 结构驱动浏览器,是最容易靠 HTTP 头认出来的一款。它所有请求的 Sec-Fetch 都存在逻辑矛盾,会出现真实浏览器绝不可能产生的头字段组合。它会在 Sec-Ch-Ua 里藏起无头 Chrome 标识,也带上了完整的 Accept-Language 头,表面上想模仿真人浏览,却在元数据逻辑上露了馅。它的 HTTP/2 stream 5 优先级权重是 220,和其他标准 Chrome 系智能体不一样。
Claude 和 Gemini 的网络层特征几乎一模一样,都用新版 Chrome 内核,全部采用 MLKEM768 后量子密钥交换,TLS 扩展数量相同,JA4 哈希一致,stream 5 权重都是 256。二者都是典型的无头 Chrome 特征,缺 Accept-Language 头,Sec-Fetch-Site 全为 none。但在行为层面能分开,Gemini 键盘输入更多,Claude 行为更稳定、单次会话内波动更小。
Operator 是唯一明显带 Firefox 指纹的智能体,约 39% 的 HTTP/2 会话匹配 Firefox 的 JA4 特征。它的 HTTP 头最接近真实浏览器,Accept-Language 携带率和 Sec-Fetch 合规率都很高,只有少量逻辑矛盾。它会带上 signature 和 signature-agent 两个自定义请求头,这是直接暴露身份的强特征。它的行为模式波动最大,每次会话表现都不太一致,单靠行为特征很难归类。
Skyvern 是视觉驱动的智能体,网络层特征独一份。它的 TLS 扩展数量是 17,其他都是 16,对应的 JA4 c 段哈希和所有其他智能体都不一样,HTTP/2 stream 5 的优先级权重是 110,明显区别于其他产品。它的 HTTP 头最接近真人浏览,自定义头只有 sec-gpc,Sec-Fetch-Site 为 none 的比例也很低。
行为层面的差异进一步拉开了各智能体的距离,视觉驱动和 DOM 驱动的智能体,交互模式完全不是一个路子。
【 不同 Agent 在各测试页面的鼠标轨迹长度对比。视觉型 Agent Skyvern 的鼠标轨迹长度显著高于其他所有 Agent,更接近人类真实浏览的交互特征,DOM 型 Agent Browser Use 则几乎没有鼠标移动数据】
【各 Agent 在不同页面的交互事件占比热图。不同 Agent 的事件分布模式差异明显,AutoGen 整体交互活跃度极低,Skyvern 的鼠标移动事件占比最高,Operator 则在多页面都有独特的键盘活动特征】
【单会话按键次数与鼠标移动次数散点聚类图。不同 Agent 形成了边界清晰的特征集群,Skyvern 因极高的鼠标移动量独立成簇,Gemini 的键盘输入量最高,AutoGen 则集中在低交互区域】
研究还发现,单纯按视觉型、DOM 型、无障碍树型分类,并不能完全决定指纹特征。同样是视觉驱动的智能体,Claude 和 Skyvern 的请求间隔差得非常多,说明比起感知页面的方式,智能体自身的执行调度逻辑、底层调用的自动化工具,对指纹的影响更大。
把这些跨层的特征合在一起,识别效果到底怎么样?研究团队用了极端随机树分类器来做识别,在包含六款智能体、真人用户、三款传统爬虫的全场景测试里,四层特征组合起来,整体识别准确率能到 97%。
单拎出每一层特征,表现各有长短。完整会话的时序特征区分度最强,能做到 100% 准确,但它的问题是受任务类型、网站结构影响很大,换个网站换个任务,节奏可能就变了,泛用性没那么强。TLS 层特征整体表现最弱,尤其是遇上 Claude 和 Gemini 这种底层网络栈完全一样的,基本分不出来。HTTP 头特征的好处是每个请求都能拿到,访问刚开始就能用上,能快速筛出大部分自动化程序。行为特征则是补位的作用,遇上网络层长得一模一样的智能体,靠操作习惯的差异就能分开。
至于传统爬虫和真人用户,识别起来难度就更低了。传统爬虫的网络栈和真实浏览器差得很远,光靠 TLS 和 HTTP 特征就能 100% 区分开。真人的行为模式稳定,请求头的逻辑也完全合规,和智能体也很容易划清界限。
放到真实网站的实时场景里,识别准确率会随着收到的请求数变多逐步提升。协议层特征在访问刚进来的阶段就管用,行为特征则要等用户多操作一会儿才会越来越准,两者刚好互补。
【不同特征层的识别性能随请求数量变化曲线。协议层特征在访问早期识别效率更高,行为特征随交互积累逐步提升区分度,多层组合的方案在全阶段都表现最优,仅需 3 个请求即可达到 60% 以上的识别准确率】
实际测试下来,只需要收到 3 个请求,多层组合的方案就能达到 60% 以上的识别准确率。对网站运营方来说,这个速度很实用,不用等用户逛完整个站,早期就能判断出对面是不是 AI 智能体,然后决定是正常返回内容,还是引导到非敏感页面,做更精细化的内容保护。
当然这套方法也不是万能的,有它天然的边界。
如果两款智能体用了完全一样的底层网络栈和执行逻辑,指纹就会高度重合,没法再做更细的区分。反过来讲,如果未来有智能体能完美复刻真人的网络协议特征和操作行为,这套基于特征的指纹识别方法也会失效。
另外时序和行为特征都会受任务类型、页面结构的影响,现在的智能体迭代又很快,模型一更新、执行逻辑一改,指纹可能就变了,所以分类器也得跟着持续更新特征库,才能一直保持准头。
整体来看,这项研究给网站内容保护提供了一条新思路。不再是靠单一的黑名单、规则拦截一刀切,而是从网络协议到交互行为的多个层级里,找 AI 智能体藏不住的本质差异。随着 AI 智能体在互联网里的占比越来越高,这类多层指纹技术会变成 Web 安全体系里的重要一环,帮网站在开放访问和内容保护之间,找到更精细、更合理的平衡点。
参考:《Whose Agent Are You? Multi-Layer Fingerprinting and Attribution of Autonomous Web Agents》
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:黑鸟 黑鸟 黑鸟《多层指纹技术精准识别AI爬虫智能体》
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。









评论