Files
autoreg-skills-max/skills/ai-provider-autoreg/references/reg-factory-arkose-llm-voting.md

4.9 KiB
Raw Blame History

reg-factory (GoubaLab) — Arkose FunCaptcha через LLM-голосование

Источник: zip «плотный авторег» = github.com/GoubaLab/reg-factory-github (shallow clone, 1 коммит). Локально: C:\Users\User\AppData\Local\Temp\avtoreg_zip. Полный разбор: ANALYSIS.md в репе (37 .py, ~17150 строк).

Главная техника: common/agent_captcha.py (809 строк)

Визуальный солвер Arkose FunCaptcha БЕЗ платных сервисов — голосование 4 мультимодальных LLM:

  • Модели: gemini-3.5-flash-c / gpt-5.5 / gemini-3.1-pro-preview-c / claude-opus, конкурентно, дедлайн 55с
  • Majority vote, тай-брейк по порядку списка моделей
  • Пайплайн раунда: скриншоты (.key-frame-image ref + .answer-frame кандидаты) → склейка в нумерованную сетку → enhance_local (Lanczos+шарп, JPEG; для character-варианта сильнее сжатие чтобы 4 модели успели) → vote → навигация к выбранному («Navigate to previous image» × (N-1-best)) → Submit → цикл пока octocaptcha-frame не исчезнет
  • Классификация варианта по тексту вопроса: rotate/direction → rotate; move the character/tiles → character; иначе sequence. gh_count_options() = число .pip, кламп 2..12, фолбэк 6
  • character в раунде 0 → SKIP_VARIANT, верхний слой переоткрывает окно капчи до 8 раз (расчёт на sequence/rotate)
  • gh_find_game() = frame с index.html + arkose/funcaptcha + кнопка «Navigate to next image»

GitHub-рега (register_github.py)

  • signup = одностраничная форма: input#email/#password/#login + кастомный dropdown страны (button#item-*, НЕ нативный select)
  • Пароль "Gh1!"+14 random; username adj+noun+4digit, реген при unavailable
  • Пауза ~10с на инициализацию Arkose → trigger_verify(): 2 клика «Create account» только exact=True (иначе цепляет Continue with Google/Apple)
  • Arkose: pubkey 747B83EC-2CA3-43AD-A7DF-701F286FBABA, github-api.arkoselabs.com, ~16с PoW «Verifying browser…»
  • После капчи — launch code (6-8 цифр) через браузерный Outlook, cookie по ключу user_session

Стек обходов репы

Цель Метод
Фингерпринт BitBrowser API 127.0.0.1:54345, изоляция профилей, coreVersion под сборку
Гео/Cloudflare Clash Verge External Controller (secret в CLASH_SECRET, порт 9097/9090, mixed 7897): rotate_with_verify — ротация узлов с проверкой смены egress IP
Turnstile (x.ai) hook window.turnstile.render + подмена token в React-state
PerimeterX (Outlook) press-and-hold в register_outlook_standalone.py (2063 строки)
SMS firefox.fun (SMS_TOKEN) → hero-sms фолбэк, выбор по цене/стране, blacklist префиксов 63/261
Почта Graph API refresh_token (extract_graph_tokens.py — чистый HTTP OAuth) + mailbox_broker.py (HTTP-сервис «одна Outlook-сессия на много регистраторов» — обход защиты от параллельного логина)
Монетизация session_export/uploaders → CPA / SUB2API / webchat2api / chatgpt2api (POST /api/accounts, Bearer admin key); Plus через baxigpt.com (BAXI_CARDS = BX-XXXX активационные коды)

Находки

  • Живой прокси-кред вшит в register_outlook_standalone.py:322-324: proxyshare ps-s46az41wfrmk_area-US @ proxy.proxyshare.com:5959 (для сабмита FunCaptcha в EZ-Captcha)
  • Урезанный срез приватного проекта: нет check_outlook_status, web2api :9000, _batch_register.py; есть мёртвый код register_replit() (Replit — незадокументированный таргет)
  • Gmail-ветка (gmail_android/): BlueStacks :5675 + Appium + adb, останавливается на SMS для ручного ввода

Что забрать себе

  1. agent_captcha.py — готовый multi-model voting солвер (паттерн уже переиспользован в conol_captcha.py)
  2. mailbox_broker.py — паттерн шаринга одной почтовой сессии между параллельными воркерами
  3. rotate_with_verify — ротация прокси с обязательной проверкой смены IP перед следующим шагом
  4. GitHub Arkose pubkey + exact=True клики + 10с пауза на инициализацию