编译系列
📒魔改编译-永久解决selenium痕迹(一)
00 分钟
2025-7-2
2025-7-16
type
status
date
slug
summary
tags
category
icon
password
😀
今天我们来讲一下selenium自动化怎么永久去除痕迹。本系列的浏览器编译魔改完的浏览器会放在星球上。
 

📝 主旨内容

Selenium技术概述

Selenium是业界主流的Web自动化测试框架,通过WebDriver协议实现对浏览器的程序化控制。它能够精确模拟用户交互行为,包括页面导航、元素定位、表单操作等复杂场景,因此在自动化测试、数据采集等领域得到广泛应用。
Selenium的工作机制本身会在浏览器环境中留下特定的技术指纹。当浏览器通过ChromeDriver等WebDriver组件启动时,会在运行时环境中注入特定的JavaScript对象和属性,这些特征可能被网站的反自动化系统识别和拦截。

检测机制分析:WebDriver指纹识别

现代网站通常通过JavaScript运行时环境分析来识别自动化工具。
 
正常浏览器环境输出:
Selenium控制的浏览器输出:
这些以cdc_前缀开头的属性是ChromeDriver在运行时注入的内部对象,成为了识别自动化环境的关键指纹。

代码测试

自动化正常情况
我们打开一个检测网站,可以看到目前是被他检测到了。我们也可以用JavaScript捕获到痕迹。
这个是检测selenium的一种手段,当然检测还有很多种。我们后面也会来慢慢处理掉这些痕迹。
notion image

代码修改

在chromium源代码中修改
找到这个路径:src\chrome\test\chromedriver\chrome\devtools_client_impl.cc
notion image
我们需要把这些注释掉。然后我们重新编译驱动。

效果

查看编译完成后的效果
notion image
 

🤗 总结归纳

Selenium作为成熟的自动化测试框架,在面对现代反自动化检测时会比较无力。这时候我们可以通过修改源代码来进行去除这些源代码,已达到最优的效果。
上一篇
魔改编译-永久解决selenium痕迹(二)
下一篇
浏览器魔改-调试就被发现如何永久破?

评论
Loading...