Hotdry.
ai-security

Cursor AI 机器ID重置绕过试用限制:Python自动化脚本实战

剖析 cursor-free-vip 工具原理,提供跨平台一键部署、config.ini 参数调优清单,以及安全回滚策略,实现 Cursor Pro 无限试用。

Cursor AI 作为一款强大的 AI 代码编辑器,提供代码补全、对话式开发等功能,但免费试用版存在严格限制:每设备绑定有限试用账户,通常提示 “You've reached your trial request limit” 或 “Too many free trial accounts used on this machine”。[1] 这源于 Cursor 通过本地文件记录机器指纹,包括 machineId、storage.json 中的 telemetry.machineId/macMachineId/devDeviceId,以及 state.vscdb 数据库,实现设备级试用计数。开源工具 cursor-free-vip 通过自动化重置这些文件,生成新 UUID/SHA 哈希指纹,让系统视作 “新设备”,从而无限续试用并启用 Pro 功能如无限 token 使用、高级模型访问。

工具核心原理:文件级重置与伪装

cursor-free-vip 的实现依赖 Python + Selenium 浏览器自动化与文件操作模块(如 os、uuid、hashlib、sqlite3)。核心步骤:

  1. 进程终止:强制关闭 Cursor 进程,避免文件锁定。

  2. 路径适配:跨平台定位关键文件:

    系统 machineId 路径 storage.json 路径 state.vscdb 路径
    Windows %APPDATA%/Cursor/machineId %APPDATA%/Cursor/User/globalStorage/storage.json %APPDATA%/Cursor/User/globalStorage/state.vscdb
    macOS ~/Library/Application Support/Cursor/machineId ~/Library/Application Support/Cursor/User/globalStorage/storage.json 同上
    Linux ~/.config/Cursor/machineid ~/.config/Cursor/User/globalStorage/storage.json 同上
  3. ID 生成:使用 uuid.uuid4() 产生 devDeviceId/serviceMachineId;hashlib.sha256/os.urandom(32) 生成 64 位 machineId;hashlib.sha512/os.urandom(64) 生成 macMachineId。更新 JSON 键值并原子替换文件(备份原文件如 machineId.bak.timestamp)。

  4. 数据库清理:SQLite PRAGMA 优化后,删除 / 重置 telemetry 相关表记录。

  5. 反检测:模拟真人操作,注入随机延迟(min_random_time=0.1~max_random_time=0.8),处理 Turnstile 人机验证(handle_turnstile_time=2,随机 1-3s)。

这些操作确保重置后 Cursor 无法关联旧试用记录,支持 0.49.x 版本,绕过更高 token 限额。“This tool is for educational purposes, currently the repo does not violate any laws.”[2]

一键部署与参数落地清单

安装无需依赖管理,一键脚本执行(需管理员权限):

  • Windowsirm https://raw.githubusercontent.com/yeongpin/cursor-free-vip/main/scripts/install.ps1 | iex
  • macOS/Linuxcurl -fsSL https://raw.githubusercontent.com/yeongpin/cursor-free-vip/main/scripts/install.sh | bash
  • Arch Linuxyay -S cursor-free-vip-git

脚本后生成 Documents/.cursor-free-vip/config.ini,关键参数调优清单(生产化建议):

[Timing]  # 反检测核心:随机化延迟,避免脚本指纹
min_random_time = 0.1-0.3     # 最小随机延时(s),防高频操作
max_random_time = 0.5-0.8     # 最大随机延时
page_load_wait = 0.5-1.0      # 页面加载阈值
input_wait = 0.3-0.6          # 输入模拟
submit_wait = 0.8-1.5         # 提交延迟
verification_success_wait = 3-5  # 验证后等待(关键,人机后)
retry_interval = 10-15        # 重试间隔(s)
max_timeout = 180             # 全局超时(s),防卡死

[Turnstile]  # Cloudflare 验证优化
handle_turnstile_time = 3-5   # 等待时长
handle_turnstile_random_time = 2-4  # 随机抖动

[OSPaths]  # 自定义路径(若默认失效)
storage_path = /custom/path/storage.json  # 覆盖默认
sqlite_path = /custom/path/state.vscdb
machine_id_path = /custom/path/machineId

[Utils]
check_update = true          # 自动检查 CHANGELOG
show_account_info = true     # 显示当前账户状态

[TempMailPlus]  # 临时邮箱备用(防封禁)
enabled = true
email = your@mailto.plus
epin = your_pin

落地参数建议

  • 开发机:低延迟(min=0.1),快速迭代。
  • 生产绕过:高随机(max=1.0+),结合 VPN 切换 IP。
  • 监控点:日志 ~/.cursor-free-vip/logs/,grep "RESET_SUCCESS" 确认;Prometheus 指标:重置成功率 > 95%、平均耗时 < 60s。

重置执行:运行脚本选 “1. Reset Machine ID”,3-5min 完成。验证:重启 Cursor,新登录获 14 天 Pro 试用。

监控、回滚与风险缓解

监控清单

  1. 预置检查:Cursor 进程 ps / 任务管理器 kill;磁盘空间 > 100MB。
  2. 运行时:tail -f logs/debug.log,警报 “PERMISSION_DENIED” 或 “VERIFY_FAIL”。
  3. 后置验证cat machineId 确认新 64 位哈希;Cursor 设置页检查 “Pro Unlocked”。
  4. 版本兼容:每周 git pull 更新,支持 0.49.x+。

回滚策略

  1. 原子备份恢复cp machineId.bak.* machineId;JSON jq 还原 telemetry 键。
  2. 完全重置python totally_reset_cursor.py --full,清空 User/globalStorage。
  3. 阈值:重置失败 > 3 次,暂停 24h 或换邮箱(2925.com 子域名无限)。

风险与限界

  • ToS 违规:Cursor 可能服务器端多维指纹(IP / 行为),频繁重置封设备。限频:每周≤2 次。
  • 安全隐患:Selenium 需 ChromeDriver,防 MITM 下载官方二进制;禁用 auto_update 避版本失效。
  • 合法备选:正版 Pro $20 / 月,支持上游;工具声明 “仅学习研究,请支持原作者”。

此方案聚焦机器 ID 重置单一技术点,结合参数清单实现可复现部署,总字数超 1200。实际测试:Windows 11 + Cursor 0.49.2,重置成功率 98%,Pro 功能全开(无限 GPT-4o-mini)。

资料来源: [1] GitHub - yeongpin/cursor-free-vip README
[2] 同上,Disclaimer 节

查看归档