Сейчас на форуме: asfa, _MBK_, Adler (+5 невидимых)

 eXeL@B —› Вопросы новичков —› поставте на путь истенный :)
Посл.ответ Сообщение

Ранг: 2.4 (гость)
Активность: 0=0
Статус: Участник

Создано: 31 августа 2011 18:47
· Личное сообщение · #1

Вобщем ковыряю программу которая сделана прогерами страны восходящего солнца упакована VM протектом. Чтобы она работала необходима авторизация на сервере, пакеты которые шлются на сервер динамические пакеты которые приходят от сервера тоже, даже если пытатся авторизоватся на одинаковое имя то всёравно шифруются по разному. Пакеты отправляются с портов 6006...6010. Собственно я хочу найти место где происходит проверка на валидность или найти алгоритм шифрации и отправки пакетов. Сама программа мне особо не интересна просто тут дело принципа
По какому пути я пошёл:
Запускаю её в ольке.
Ставлю мемори бряк на WS2_32
Жму кнопку логина на сервер
После сработки бряка убираю его и ставлю мемори бряк на секцию программы ( 401000 ) с целью поймать место где происходит проверка.
Но загвозка в том что бряк срабатывает почти всегда в разных местах не важно валидный или не валидный пришёл ответ от сервера.
Я не прошу всё сделать за меня мне самому интересно разобратся как это всё устроенно но не хватает знаний и опыта чтобы разобратся в этом. Буду признателен если уделите мне время и подскажите куда копать.
http://rghost.ru/20013461 программа
josefsch8 валидное имя



Ранг: 301.4 (мудрец), 194thx
Активность: 0.170.01
Статус: Участник

Создано: 31 августа 2011 20:52 · Поправил: Veliant
· Личное сообщение · #2

Не знаю как сейчас, а во всех предыдущих версиях вплоть до 10.8.6 (дальше не ковырял) можно вообще напрочь вырезать проверку на Verify сервере, единственное придется на этом месте писать код, которые забьет в нужную структуру ip, порт и протокол сервера

Upd. Немного помогу в поисках. Т.к. код почти везде похожий, то ищите по аналогии. Скачайте и распакуйте 10.8.6
По адресу 0041659A идет проверка, а прошли мы Verify или нет.
00435F33 - проверка для выполнения шифрования rsa или нет.
0048A010 - собственно функция шифрования пакетов для отправки Verify серверу
00442D50 - парсинг ответа Verify

Обычный поиск по hex в новой версии выдает следующие адреса:
sub_4A0320 - функция шифрования пакетов


P.s. там кстати повсюду timegettime палят задержки на бряки

| Сообщение посчитали полезным: tapak
 eXeL@B —› Вопросы новичков —› поставте на путь истенный :)
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати