Skip to content

vibe-coding-labs/ComateReverseEngineer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ComateReverseEngineer

百度文心快码(Baidu Comate)VS Code 扩展 · 协议逆向分析
认证机制 · AI 通信协议 · 内部端点 · OpenAI 兼容代理

分析进度 License


这个仓库是做什么的?

百度 Comate(文心快码) VS Code 扩展(v4.3.0)做逆向工程,目标是搞清楚它的通信原理:

  1. 怎么认证的 — 签名认证、设备绑定、OAuth 登录
  2. 怎么调 AI 的 — 代码补全、Chat 对话、V2 端点
  3. 内部长啥样 — MCP、Memory、Skill、Voice 等子系统

基于分析结果还写了 Python 代理脚本,把 Comate API 封装成 OpenAI 兼容格式。


分析进度

领域 静态分析 实测验证
认证机制(签名/machineId/OAuth) ✅ 100% ❌ 需有效账号
AI API 端点(补全/Chat/V2) ✅ 100% ❌ 需有效 JWT
请求/响应格式 ✅ 100% ⚠️ 部分(基于错误响应推断)
OAuth 登录流程 ✅ 100% ❌ 需浏览器登录
内部端点(MCP/Memory/Skill/Voice/Agent) ⚠️ 80% ❌ 需内网
Claude Code 集成 ✅ 100% ❌ 公网 405
插件版本/配置选项 ✅ 100% ✅ 已验证
Python 代理脚本 ✅ 100% ⚠️ 需有效 JWT
40+ 端点公网可达性 ✅ 已测绘 ✅ 已完成
报告体系 (45 份) ✅ 100% 重构完成

⚠️ 真实状态: 静态代码审计已完成(extension.js 反混淆),但 从未有一个有效的 Comate 账号成功登录并拿到 JWT。所有 AI API 的调用验证依赖 JWT 获取。详见 docs/PROGRESS-SUMMARY.md


📚 研究报告

结构化报告(2026-06-25 重构)

全部报告已按章节重新组织,像书一样阅读:

章节 文件 内容
架构篇 docs/01-architecture/ 整体架构、网络拓扑、混淆机制
认证篇 docs/02-authentication/ 签名/MachineId/OAuth/凭证存储/CC Token(核心)
端点篇 docs/03-endpoints/ 补全/Chat/V2/内部/Web Agent 端点
协议篇 docs/04-protocol/ 请求/响应格式、SSE 解析、错误码、模型
内部机制篇 docs/05-internals/ 模块分析、Builder 模式、配置、混淆恢复
集成篇 docs/06-integrations/ Claude Code/OpenAI 代理/VS Code API
工具篇 docs/07-tools/ 登录工具、代理服务器、测试脚本
验证篇 docs/08-verification/ 认证验证、API 调用测试(待补全)
附录 docs/09-appendix/ Python/JS 代码示例、HTTP 抓包、常量、术语

每份报告均附带详实的逆向分析代码示例(Python + JavaScript)和 HTTP 抓包示例

原始报告(仍然保留)

旧版平铺文档仍保留在 docs/ 目录,详见迁移对照表:全书索引


🏗️ 仓库结构

ComateReverseEngineer/
├── docs/                     # 19 份逆向分析报告
│   ├── README.md             # 研究报告索引(从这里开始读)
│   ├── Comate-RE-Analysis-Report.md
│   ├── Comate-Protocol-Analysis.md
│   └── ...
├── scripts/                  # Python 工具脚本
│   ├── comate_openai_proxy.py         # OpenAI 兼容 API 代理
│   ├── comate_login.py                # 浏览器 OAuth 登录
│   ├── comate_playwright_login.py     # Playwright 自动登录
│   ├── comate_claudecode_exploit.py   # Claude Code Token 工具
│   ├── get_jwt.py                     # JWT 获取脚本
│   └── test_proxy.py                  # 端到端测试
├── source/                   # 提取的源码资料
│   ├── product.json
│   ├── comate-package.json
│   └── string-table.txt
├── config.example.json       # 配置模板
├── requirements.txt          # Python 依赖
└── README.md

🔐 认证机制(逆向还原)

Comate 有三种认证方式:

方式 原理 公网可用?
签名认证 AES-256-ECB(用户名) + SHA-256 签名 ❌ 返回 405
machineId 绑定 设备 ID 获取 client token ✅ 可用
OAuth Passport 百度账号浏览器登录 ✅ 可用(需手动)

完整调用链

百度账号登录
  → Cookie 认证(BDUSS)
  → /api/user/bind/client(VSCODE) → 设备绑定
  → /client/generate/token(clientId) → 拿到 client token
  → /client/key(clientId) → 拿到 License
  → 把 License 放 token header → 调 AI API 端点

硬编码常量(从扩展二进制提取,非个人凭证)

常量 干嘛用的
AES Key mSg8iI7BHwXXQiuDLpEqXFCRCH62TMS1 加密用户名
Client ID H14fcP3ZM49fZGJ9 应用标识
Claude Code Auth 1d318a1f298943cda907eb514736744d Claude Code Token 认证

📡 AI API 端点

代码补全

POST /generate/stream          — urlencoded/json → SSE (主要补全端点)
POST /generate/batch           — json → JSON
POST /v2/api/generate/stream   — json only → SSE
POST /v2/generate              — json → JSON

Chat 对话

POST /autowork/v1/chat/stream      — json → SSE/JSON
POST /autowork/v1/editor/chat      — json → JSON
POST /autowork/v1/terminal/chat    — json → JSON
POST /autowork/v1/search           — json → JSON

可用模型

ernie-bot · ernie-bot-3-1 · ernie-bot-4 · ernie-bot-4-turbo · ernie-bot-4-turbo-1


🛠 脚本用法

# 1. 安装依赖
pip install -r requirements.txt

# 2. 获取 JWT(需要有效百度 Comate 账号)
python scripts/get_jwt.py
# 或者 Playwright 自动版:
python scripts/comate_playwright_login.py

# 3. 启动 OpenAI 兼容代理
python scripts/comate_openai_proxy.py --config config.json

# 4. 测试
curl http://localhost:8000/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{"model":"ernie-4.0","messages":[{"role":"user","content":"hello"}],"stream":true}'

🔗 相关项目

项目 说明
ComateProxy 基于本逆向工程开发的 Go 生产级代理(多账号管理 / Web Dashboard / 请求统计 / 加密存储)
claude-code-cli-with-openai-api Claude Code ↔ OpenAI API 转换代理
codegeex-proxy CodeGeeX AI 代理(模型 codegeex-4 免认证可用)

⚖️ 免责声明

本项目仅用于安全研究和学习目的。所有分析基于公开可获取的软件素材。用户应自行承担使用风险,遵守百度 Comate 服务条款。

About

对百度的Comate的逆向分析

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages