- 18
- 17
Приветствую.
Black Russia
капча: сервер присылает диалог с картинкой с CDN и ждёт ответ в поле ввода. Живой пакет выглядит так:
{"o": 1, "u": "https://bh-captcha-cdn2.srv00.com//Rhoc.png"}
Что я проверил руками в игре:
Гипотезы, которые я рассматриваю, по убыванию правдоподобия:
Black Russia
капча: сервер присылает диалог с картинкой с CDN и ждёт ответ в поле ввода. Живой пакет выглядит так:
{"o": 1, "u": "https://bh-captcha-cdn2.srv00.com//Rhoc.png"}
Что я проверил руками в игре:
- имя PNG генерируется при каждой выдаче (Rhoc.png не статичное название), то есть тривиальной таблицы «имя файла → ответ» не существует;
- картинка лежит на внешнем CDN, ответ валидируется на сервере.
Гипотезы, которые я рассматриваю, по убыванию правдоподобия:
- Хеш-таблица картинок. Если набор капч конечен (шаблоны + предгенерация), достаточно таблицы «хеш байтов PNG → ответ». Рандомное имя файла не мешает - хеш считается от содержимого. Базу можно crowdsourcить: у мода тысячи пользователей, каждый решённый вручную ответ пополняет таблицу.
- Обход на уровне handshake. Photon - репак клиента: если капча выдаётся по условиям (поведение, версия клиента, флаги соединения), её можно просто не получать - правка handshake-параметров, чтобы сервер считал клиента «доверенным».
- Клиентская валидация / флаг. Если в цепочке проверки есть клиентский компонент (или ответ-пакет, закрывающий капчу без реального решения), репак позволяет вырезать или подменить это без всякого решения капчи.
- OCR/CV на лету - не исключаю, но сомневаюсь. Я дампил момент проверки, ничего подобного я не нашел. Но если это так, я буду в ахуях, это буквально инвалид среди всего что я видел в своей жизни
- Какой из вариантов реалистичнее для приватного мода с большой базой?
- С чего начали бы исследование такой схемы: сетевой слой, нативный слой, сам диалог?
- Если кто-то копал именно BR или похожие клиенты - как там решается выдача капчи: по поведению игрока или по факту действий?