# 反检测技术说明

## 当前使用的技术

### 1. rebrowser-puppeteer

我们使用 `rebrowser-puppeteer` 替代标准的 `puppeteer`，这是一个打了补丁的版本，修复了以下检测点：

#### 修复的主要泄漏点：
- **Runtime.enable 泄漏** - CDP命令检测
- **Console.enable 泄漏** - 控制台API检测
- **Command Flags 泄漏** - 启动参数检测
- **sourceURL 泄漏** - 脚本注入检测
- **navigator.webdriver** - 自动化标记
- **Chrome DevTools Protocol** - CDP特征

### 2. 人类行为模拟

实现了 `HumanBehavior` 类，模拟真实用户操作：

#### 输入行为：
- 随机输入速度（80-180ms/字符）
- 随机停顿（模拟思考）
- 偶尔的快速输入段落
- 自然的输入节奏

#### 鼠标行为：
- 非线性移动轨迹
- 随机点击位置偏移
- 移动前的停顿
- 点击前的悬停

#### 页面交互：
- 阅读页面的停顿
- 随机滚动
- 视觉搜索模拟
- 自然的导航行为

### 3. 浏览器指纹随机化

- 随机视口大小
- 随机用户代理
- 随机语言设置
- 非无头模式运行

## 使用模式

### 全自动模式（高风险）
```bash
npm run install  # 首先安装rebrowser-puppeteer
node src/cli.js register -s windsurf
```

适用场景：
- 测试环境
- 弱防护网站
- 已验证可用的网站

### 半自动模式（推荐）
```bash
node src/cli.js register -s windsurf --semi-auto
```

工作流程：
1. 工具生成账号数据
2. 自动打开浏览器到注册页面
3. 显示生成的数据供复制
4. 用户手动填写（最安全）
5. 工具监控进度

### 干运行模式（最安全）
```bash
node src/cli.js register -s windsurf --dry-run
```

只生成数据，不打开浏览器，完全手动注册。

## 检测测试

### 在线测试工具：

1. **rebrowser Bot Detector**
   - https://bot-detector.rebrowser.net/
   - 测试是否被识别为bot

2. **Are You Headless**
   - https://arh.antoinevastel.com/bots/areyouheadless
   - 检测headless特征

3. **CreepJS**
   - https://abrahamjuliot.github.io/creepjs
   - 浏览器指纹检测

4. **Browser Leaks**
   - https://browserleaks.com
   - 全面的泄漏检测

## 已知限制

### 仍然可能被检测的场景：

1. **行为分析**
   - 过于规律的时间间隔
   - 缺乏真实的页面交互
   - 异常快的表单填写

2. **高级验证码**
   - reCAPTCHA v3（行为评分）
   - hCaptcha（难以自动化）
   - 自定义验证码

3. **IP地址**
   - 数据中心IP
   - 频繁的注册尝试
   - 地理位置异常

4. **设备指纹**
   - Canvas指纹
   - WebGL指纹
   - Audio指纹

## 最佳实践

### 提高成功率的建议：

1. **使用住宅代理**
   ```javascript
   // 配置代理
   args: ['--proxy-server=http://your-residential-proxy:8080']
   ```

2. **延长操作间隔**
   - 增加步骤之间的延迟
   - 模拟更多的页面交互
   - 随机浏览其他页面

3. **限制频率**
   - 同一IP每天最多2-3次注册
   - 使用不同的浏览器配置
   - 轮换代理IP

4. **混合模式**
   - 关键步骤手动完成
   - 自动化只用于数据生成
   - 遇到验证码立即转手动

## 持续改进

项目会持续关注：
- rebrowser-puppeteer 更新
- 新的反检测技术
- 社区最佳实践
- 实际测试反馈

## 参考资源

- [rebrowser-patches](https://github.com/rebrowser/rebrowser-patches)
- [Patchright](https://github.com/Kaliiiiiiiiii-Vinyzu/patchright)
- [nodriver](https://github.com/ultrafunkamsterdam/nodriver)
- [DataDome Detection Analysis](https://datadome.co/threat-research/)

## 免责声明

本工具仅用于：
- 合法的自动化测试
- 个人账号管理
- 教育和研究目的

请遵守各网站的服务条款和适用法律。
滥用自动化工具可能导致账号封禁或法律后果。
