freepp README

The project's README from github.com/mio-cc/freepp. As one markdown file: README.md.

min-implant-v2

ChatGPT 订阅支付链路自动化研究项目(仅供学习研究, 请遵守目标平台服务条款与当地法律)。

目录结构

backend/                 FastAPI 后端 (提链引擎 / 直卡 / PayPal BA / hCaptcha)
  core/                  核心链路引擎 (chain / oaics_proto / bind_card / proxy)
  api/                   REST API 路由
  ba_paypal/             PayPal BA 授权四阶段流程 (flow.py) + hCaptcha mint 栈
    ba_fp_helpers/       Node 桥 (happy-dom / hsw PoW) — 需 npm install
    sentinel_assets/     OpenAI Sentinel 签名 SDK — 需 npm install
    paypal/              PayPal 流程模块 (flow / session / smsbower / identity_lib)
  config.yaml            ★ 本地配置 (gitignore, 用 config.example.yaml 复制)
frontend/                React 19 + Vite 8 前端面板 (源码, 需 npm install + build)
web/                     管理台静态资源 (index.html + static/ + dist/ 构建产物)
_archive_dev/            开发期测试脚本与抓包数据 (gitignore, 不随仓库发布)
运维.bat                 Windows 运维菜单 (启动/重启/日志/构建)

环境要求

依赖 版本 用途 必需
Python >=3.10 后端运行时 ✅
Node.js >=18 (建议 20) OpenAI Sentinel mint (Node/V8 sdk bridge)、前端构建 ✅
代理池 见下 链路出口 (账单国/出口国必须对齐) ✅
SMSBower API key 见下 PayPal 授权 2FA 接码 ⚠️ 仅 PayPal BA 线
Clash/mihomo 本地代理 — 711 住宅池 relay 前置 (127.0.0.1:7890/7897) ⚠️ 仅 711 池

Playwright (可选): backend/ba_paypal/paypal/recaptcha_solver.py 需要, 默认走 HTTP 解 可 pip install playwright 启用备用路径。

一、安装

1. Python 依赖

cd backend
pip install -r requirements.txt
pip install -r ba_paypal/requirements.txt

2. Node 依赖 (三处)

cd backend/ba_paypal/ba_fp_helpers     && npm install
cd ../sentinel_assets                  && npm install
cd ../../..                            # 回项目根
cd frontend                            && npm install   # 仅需改前端时

ba_paypal/ 根目录还有一个 package.json (@msgpack/msgpack), 如 Node 桥报缺包 一并 npm install。

3. 配置文件

# 后端配置 (代理池/端口/链路参数)
cd backend
copy config.example.yaml config.yaml     # Windows
cp config.example.yaml config.yaml       # Linux/macOS

# SMSBower 接码平台 key (仅 PayPal BA 线需要)
cd ba_paypal
copy .env.example .env                   # Windows
cp .env.example .env                     # Linux/macOS

编辑 config.yaml, 至少填入代理池凭据 (见下)。

4. 前端构建 (可选, web/dist 已随仓库提供)

cd frontend
npm run build        # 产物输出到 ../web/dist, 后端直接服务

二、启动

Windows

双击运行 运维.bat, 菜单选项:

运维脚本自动探测 python / node (PATH 或 PYTHON / NODE_BIN 环境变量), 日志输出到 %TEMP%\min-implant-v2\。

手动

cd backend
python -m uvicorn app:app --host 0.0.0.0 --port 8770
# 打开 http://127.0.0.1:8770

三、所需外部资源详解

1. 代理池 (必需)

链路每一段都用独立出口 IP, 且账单国必须与出口国一致 (否则 Stripe 400 Billing country must match request country)。项目支持三类代理源:

类型 配置位置 说明
QG 隧道代理 config.yaml → proxy.qg_super_pool / qg_resi_pool 主代理池, 连接串 http://{auth_key}:{auth_pwd}:A{area}@host:port, area 控制出口国家
711 住宅代理 config.yaml → proxy.proxy_711.enabled + 环境变量 走本地 Clash/mihomo relay (7890/7897), sticky session 按国家, 通过 PROXY_711_USER / PROXY_711_PASS 注入 (不再硬编码)
sing-box 节点 core/proxy_pool.py 内置 VLESS/Hysteria2 33 节点 (JP/HK/SG/US/KR/TW), 本地 relay 18077-18117

需要的东西:

2. 接码平台 (SMSBower, 仅 PayPal BA 线)

PayPal 注册/2FA 需要手机验证码。项目对接 SMSBower:

# backend/ba_paypal/.env
SMSBOWER_API_KEY=你的key
PAYPAL_SMSBOWER_API_KEY=你的key

3. 中继/本地代理 (仅 711 池)

711 池链路: client → 127.0.0.1:18794 (relay) → Clash 7890/7897 → 711 → 目标。 需要本机运行 Clash 系客户端 (FlClash / Clash Verge), 且开启 mixed-port。

4. OpenAI 账号 token (运行原料)

链路消耗的是 ChatGPT 会话 token (access_token + session_token), 在面板的 "Token 导入" 中批量导入。账号需要有促销资格 (plus-1-month-free) 才能走出 0 元链, 无资格账号压 0 无效。

四、环境变量一览

变量 默认 说明
PYTHON python 运维脚本用的 Python 解释器
NODE_BIN node 运维脚本用的 Node 可执行文件
SENTINEL_NODE node Sentinel mint 调用的 Node
PROXY_711_USER YOUR_711_USER 711 代理用户名
PROXY_711_PASS YOUR_711_PASS 711 代理密码
PROXY_711_RELAY_PORT 18794 711 relay 端口
MIN_TEST_CARD_NUMBER 4000000000000002 内置测试卡号 (占位)
MIN_TEST_CARD_EXP_MONTH 12 测试卡月
MIN_TEST_CARD_EXP_YEAR 30 测试卡年
MIN_TEST_CARD_CVC 123 测试卡 CVC
SMSBOWER_API_KEY / PAYPAL_SMSBOWER_API_KEY — 接码平台 (ba_paypal/.env)
MIN_OAICS_ATTESTATION — 手动注入 OpenAI 前端部署证明 (跳过抓取)
MIN_OAICS_P1 — 手动注入 Stripe hCaptcha P1 token
MIN_OAICS_CUSTOMER — 手动注入 Stripe customer id
MIN_OAICS_SENTINEL 0 时禁用 Sentinel 头开关
PROXY_711_HOST / PROXY_711_PORT 711proxy.com:10000 711 网关覆盖

四·五、GPT 账号注册 (面板 "资源 → 账号注册")

内置 ChatGPT 账号注册功能 (backend/reg/),协议:next-auth OAuth → OTP → sentinel create_account → access/session token。成功账号自动写入 Token 库 (source=register),可直接用于提链。

内置邮箱渠道:mailtm (零依赖在线 API,默认)。代理留空时自动启用 711 住宅中继。

接入自定义邮箱渠道:注册引擎提供扩展点,任意邮箱来源(IMAP / outlook 邮箱池 / 自建邮箱 / 临时邮箱 API)都可接入。在 backend/app.py 启动时调用:

from reg import engine as reg_engine

def setup_my_mailbox(proxies, cancel_check):
    # 1) 取一个可用注册邮箱
    email = claim_mailbox()                 # 你的实现
    openai_password = "Aa1!xxxx"            # ≥12 位随机密码
    # 2) 返回取码器:轮询收件箱直到拿到 OpenAI OTP
    def fetch_code(timeout_sec=None, seen_ids=None, not_before=None):
        return wait_otp(email, timeout_sec)  # 你的实现
    return email, openai_password, fetch_code

reg_engine.register_email_channel("my_mailbox", setup_my_mailbox)

注册后渠道名 my_mailbox 自动出现在面板渠道下拉。fetch_code 约定与 chatgpt_core.py 内建渠道一致(timeout_sec / seen_ids / not_before 参数可选实现)。注册协议本身(OAuth/OTP/sentinel/create_account)与邮箱 来源完全解耦。

五、链路概览

项目内置 16 个提链分支, 均可在面板 "链路配置" 或 config.yaml → chain.branches.<name>.stages 调整七段出口 (checkout/init/update/provider/approve/poll/resolve) 与 OAICS 五段 (checkout/taxes/provider/confirm/resolve) 映射。

分支 渠道 账单国 (默认) 产出
paypal PayPal auto paypal.com/agreements/approve?ba_token=...
direct 直卡 PH 卡绑定 + 订阅验证 (SetupIntent 内联)
momo MoMo auto payment.momo.vn/pay/app 跳转
pix PIX 二维码 auto PIX 支付二维码
ideal iDEAL auto iDEAL 银行跳转
upi UPI auto UPI 支付跳转
kakao Kakao Pay auto Kakao 支付跳转
blik BLIK auto BLIK 支付跳转
twint TWINT auto TWINT 支付跳转
bizum Bizum auto Bizum 支付跳转
gopay GoPay auto GoPay 支付跳转
qris QRIS ID QRIS 二维码
gcash GCash PH GCash 支付跳转
grabpay GrabPay PH GrabPay 支付跳转
naver_pay Naver Pay auto Naver Pay 支付跳转
grok Grok 链路 auto card 渠道提链

核心链路形态:

freepp (mio-cc/freepp)

Searching Database…

189 ·GitHub
Что это?Это min-implant-v2 — исследовательский проект на Python/Node, автоматизирующий цепочку оплаты подписки ChatGPT через множество региональных платёжных каналов (PayPal, прямая карта, PIX, iDEAL, UPI, Kakao Pay и др.) для изучения сценариев подписки с нулевой стоимостью по промокоду.
Это CLI-инструмент или полноценный сервис?Это самостоятельно размещаемый бэкенд (Python + Node) в паре с веб-панелью управления (web/dist уже собран); на Windows им управляют через пакетный лаунчер с меню, а на других платформах бэкенд запускают вручную.
Как это запустить?Установите зависимости Python (>=3.10) и Node.js (>=18) в трёх указанных местах, впишите учётные данные прокси-пула в config.yaml, затем запускайте через пакетное меню Windows или стартуйте бэкенд вручную.
Нужны ли прокси-пул и SMS-сервис для работы?Да — прокси-пул (туннель QG, 711 residential через локальный релей Clash/mihomo или встроенные ноды sing-box) требуется на каждом шаге цепочки, а API-ключ SMSBower нужен именно для SMS-кодов 2FA на линии PayPal BA.
Бесплатная цепочка работает всегда?Нет — страна биллинга должна точно совпадать со страной выхода прокси, иначе Stripe отклонит запрос, а импортированный токен аккаунта OpenAI уже должен иметь право на промо «плюс месяц бесплатно», иначе бесплатная цепочка не сработает.
Он работает только на Windows?Лаунчер в один клик (运维.bat) работает только на Windows, но поскольку стек — чистые Python и Node, бэкенд можно запустить вручную и на других платформах.
Какие платёжные каналы поддерживаются помимо PayPal?В комплекте 16 встроенных ветвей цепочки: прямая карта, MoMo, PIX, iDEAL, UPI, Kakao Pay, BLIK, TWINT, Bizum, GoPay, QRIS, GCash, GrabPay, Naver Pay и канал с картой Grok, каждый настраивается через config.yaml.
Что делает встроенная функция регистрации аккаунтов GPT?Модуль в backend/reg/ автоматизирует создание аккаунтов ChatGPT через next-auth OAuth, OTP и Sentinel createaccount, записывая успешные аккаунты прямо в библиотеку токенов для повторного использования; по умолчанию используется почтовый канал mailtm без зависимостей.
Зачем нужен отдельный прокси для каждого шага?Каждый этап платёжной цепочки должен выходить через собственный IP, соответствующий стране биллинга, поскольку Stripe возвращает ошибку 400, если страна биллинга не совпадает со страной запроса.
Creator
mio-cc
Size
5.3 MB
Stars
189
Updated
CommitAug 20
Age
2mo
Commits · 90 Days