Сейчас на форуме: subword, rtsgreg1989, zds (+9 невидимых)

 eXeL@B —› Основной форум —› Кто нибудь смотрел СhipTuningPro Full Version CТР-3.21 ? Там СОМ ключ.
. 1 . 2 . >>
Посл.ответ Сообщение


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

Создано: 03 ноября 2007 22:43
· Личное сообщение · #1

Если кто пытался сломать СhipTuningPro Full Version CТР-3.21 (именно к этой версии) - прошу отозваться.
Не имея СОМ ключа что то сделать возможно ?



Ранг: 226.0 (наставник), 67thx
Активность: 0.160
Статус: Участник

Создано: 03 ноября 2007 22:51
· Личное сообщение · #2

Линк дай.
Или оформи запрос на взлом.
Если алго расшифровки или работы проги не в ключе, то скорее всего возможно.




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

Создано: 03 ноября 2007 23:10
· Личное сообщение · #3

Файлик тут: h..p://dump.ru/files/n/n746013375/
Программа пробегала на руборде и на других подобных форумах, и решение найдено было. Вот и хотел поинтересоваться у тех кто с ней дело имел, есть ли шанс без ключа. Ну или может кто ссылку даст на готовое решение. Дело в том, что работает или нет и работает ли правильно наверное проверить можно только подключив коробку...




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

Создано: 07 ноября 2007 13:40 · Поправил: ToBad
· Личное сообщение · #4

Так уж получилось, что эту программу параллельно вынес в запросы на взлом m1sha

Думаю не будет негативно воспринято то, что я перенесу часть диалога сюда, с целью продолжить его тут более детально.

Flint сообщил: Куски кода программы поксорены, так что без ключа она работать не будет

На что m1sha ответил: ключ есть у товарища - что и как с него надо считать...

Теперь расскажу, что удалось нарыть мне. Вся проверка ключа сводится к тому, что из него мы получаем dword и сравниваем его с “0923”. Далее, как было уже сказано, есть 2 поксореных куска. Они не большие. С ключа вычитывается как мне показалось один dword которым и ксорятся эти места. Далее когда 2 куска расшифрованы появляется интерфейс программы и в момент перехода на этот код естественно возникает ошибка.
Следовательно смею предположить, что далее никакого ксора кода скорее всего нет, а проверка ключа сводится лишь к банальному вычитыванию “0923”.

M1sha я думаю достаточно у товарища во время работы программы с ключом снять её дамп с помощью petools или подобного инструмента. Далее я смогу сделать патч убрав проверку и записав расшифрованные куски. Достаточно будет простого дамта без восстановления импорта и т.д.




Ранг: 238.8 (наставник), 67thx
Активность: 0.20
Статус: Участник
CyberHunter

Создано: 07 ноября 2007 13:51
· Личное сообщение · #5

ToBad пишет:
M1sha я думаю достаточно у товарища во время работы программы с ключом снять её дамп с помощью petools или подобного инструмента. Далее я смогу сделать патч убрав проверку и записав расшифрованные куски


Логично! Имхо, по другому никак не получится. Там еще до ключа нужно снять Aspack и еще один Call занопить, который тож ксорит код, но это уже мелочи

-----
Nulla aetas ad discendum sera




Ранг: 160.1 (ветеран)
Активность: 0.070
Статус: Участник

Создано: 07 ноября 2007 13:54
· Личное сообщение · #6

ToBad пишет:
Далее, как было уже сказано, есть 2 поксореных куска.

размер ключа для разксоривания какой ? если дворд - то простой перебор с отсечением решит все проблемы за минут 10-15.




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

Создано: 07 ноября 2007 14:06
· Личное сообщение · #7

Flint пишет:
Там еще до ключа нужно снять Aspack и еще один Call занопить, который тож ксорит код


Аспак сняли. Ксореный код встречал. Кстати, он тот участок тоже ксорит ? Дай адрес этого Call.

infern0 пишет:
размер ключа для разксоривания какой ? если дворд - то простой перебор с отсечением решит все проблемы за минут 10-15.


Он читает не один раз, один dword вычитывает и ксорит им пару раз. Но как мне показалось в функцию вычитки не поступает новых параметров. Я могу ошибаться или ключ возможно сам делает сдвиг.
Расскажи подробнее про перебор с отсечением ? Как проверить на осмысленность кода ?




Ранг: 238.8 (наставник), 67thx
Активность: 0.20
Статус: Участник
CyberHunter

Создано: 07 ноября 2007 14:13 · Поправил: Flint
· Личное сообщение · #8

0050172B CALL 004F2BDC вот сдесь ксорится код

от
004F06AE
до
004F1F02

Нужно сделать дамп и занопись этот Call

-----
Nulla aetas ad discendum sera





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

Создано: 07 ноября 2007 14:27
· Личное сообщение · #9

Flint пишет:
вот сдесь ксорится код


Понял ! Спасибо !

Теперь ждём ответа от m1sha или инфу про перебор с отсечением от infern0.




Ранг: 238.8 (наставник), 67thx
Активность: 0.20
Статус: Участник
CyberHunter

Создано: 07 ноября 2007 15:25
· Личное сообщение · #10

ToBad пишет:
инфу про перебор с отсечением


Вот что в нете нарыл:
Отсечение локальным перебором.

Если в процессе решения возникает ситуация, что ограничение содержит только одну неизвестную переменную, то можно перебрать значения переменной и проверять истинность этого ограничения. Если при некотором значении переменной ограничение становится ложным, то значение переменной отсекается. Такой способ отсечения называется локальным перебором: перебор и проверка осуществляется локально только для одного ограничения.
Если некоторое выражение сложное и содержит небольшое количество неизвестных, то также можно провести локальный перебор значений переменных в рамках одного ограничения: если для некоторого значения некоторой переменной ограничение всегда противоречиво, то такое значение отсекается.
_________

Я думаю что из этого следует: банальный перебор константы для xor, и передача управления на расшифрованный код, если код расшифрован криво, то будет возникать исключение, которое будет обрабатывать наш SEH и заодно делать инкремент константы и т.д. Имхо, геморно, проще снять дамп программы.
Поправьте если я не прав.

-----
Nulla aetas ad discendum sera





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

Создано: 07 ноября 2007 15:32
· Личное сообщение · #11

Flint пишет:
Поправьте если я не прав.


Думаю прав. А если использовано два dword-а то бесполезно и пытаться перебирать. Думаю нужно быть полным идиотом, что бы сделать СОМ ключ и использовать только несколько dword-ов из него.
m1sha так нам и не ответил что известно о ключе. У него был раньше официальный....



Ранг: 500.5 (!), 8thx
Активность: 0.230
Статус: Участник

Создано: 07 ноября 2007 15:48 · Поправил: Smon
· Личное сообщение · #12

Flint пишет:
передача управления на расшифрованный код, если код расшифрован криво, то будет возникать исключение

Даже правильно расшифрованный таким образом код вряд ли отработает без исключений. Это кривой метод, по той простой причине - что обычно всегда требуется "правильное" состояние регистров, локальных\глобальных переменных и стека перед передачей управления на этот код. Кроме того управление из одного шифрованного блока может передаваться в другой (причём там может использоваться другой ключ). Лучший брут - это брут по известным байтам (соответственно чем больше их известно тем меньше вероятность ошибок).

Flint пишет:
проще снять дамп программы

Это если эти куски кода расшифровываются сразу и все, а если непосредственно перед "употреблением" ? Тогда от дампа толку ноль, надо снимать на компе на котором ключ, поставив бряк после функции расшифровки.

-----
"Пусть видят, что мы не шутим. Стволы для понта, ножи для дела" Lock, Stock & Two Smoking Barrels




Ранг: 85.5 (постоянный)
Активность: 0.040
Статус: Участник

Создано: 07 ноября 2007 16:04
· Личное сообщение · #13

ToBad пишет:
Он читает не один раз, один dword вычитывает и ксорит им пару раз. Но как мне показалось в функцию вычитки не поступает новых параметров. Я могу ошибаться или ключ возможно сам делает сдвиг.


ToBad пишет:
А если использовано два dword-а то бесполезно и пытаться перебирать


ну почему же! если некий кусок кода ксорится на dword_1 а потом еще раз на dword_2, то это означает, что исходный код ксориться на {dword_1 XOR dword_2} не более того. те. всегда можно найти dword_3, который даст нужный результат.
вопрос в организации процесса "XOR" .. и если он примитивно-линейный + при наличии возможности или снять дам, или получить декриптованный код в оригинальной программе как образец, достаточно совпадения 3-4-5-6 dword`ов для поиска dword_Х, который можно подложить вместо чтения ключа...
впрочем, это уже варианты....




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

Создано: 07 ноября 2007 16:09
· Личное сообщение · #14

Smon пишет:
а если непосредственно перед "употреблением" ? Тогда от дампа толку ноль.


Это два основных куска которые раскриптовываются перед появлением интерфейса. Интерфейс появляется и передаётся управление на них. Тут же ошибка. Если далее будут подобные куски, по программа будет падать при обращении к ним. Соответственно узнав место падения, будем делать патч и зацикливать программу там, запускать на ключе и снимать дамп ещё раз. Ну сколько раз он так мог сделать ? 2-3, 5 ? Не думаю что больше. К тому же одним значением из ключа не ксорил бы несколько раз. Значит местом дорожил ? Следовательно даже если ксорит ещё не раз, по восстановленным данным первого дампа можно будет вычислить содержимое ключа, и сделать эмуль на основе приаттаченной длл.




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

Создано: 07 ноября 2007 16:13
· Личное сообщение · #15

DMD пишет:
вопрос в организации процесса "XOR" .. и если он примитивно-линейный


Думаю да. Получили результат с ключа, проксорили несколько dword-ов, вычитали опять и ещё несколько. Вопрос лишь в том, считываем новое значение или тоже... Как я понял, нет зависимости ксора следующих байт от результата ксора предыдущих.



Ранг: 500.5 (!), 8thx
Активность: 0.230
Статус: Участник

Создано: 07 ноября 2007 16:16
· Личное сообщение · #16

Flint пишет:
0050172B CALL 004F2BDC вот сдесь ксорится код
от
004F06AE
до
004F1F02
Нужно сделать дамп и занопись этот Call

Скачал, посмотрел, это всё херня, этот код там расшифровывается только перед передачей на него управления, ключ не нужен. Обрати внимание на забавные слова - SHA1, RC2 и BLOWFISH (с PI fraction)

-----
"Пусть видят, что мы не шутим. Стволы для понта, ножи для дела" Lock, Stock & Two Smoking Barrels





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

Создано: 07 ноября 2007 16:22
· Личное сообщение · #17

Smon пишет:
Скачал, посмотрел, это всё херня, этот код там расшифровывается только перед передачей на него управления, ключ не нужен


В смысле ? Без ключа сделать можно или нельзя сделать даже с ключом ? Что ты имеешь ввиду ?




Ранг: 238.8 (наставник), 67thx
Активность: 0.20
Статус: Участник
CyberHunter

Создано: 07 ноября 2007 16:26
· Личное сообщение · #18

Smon пишет:
Скачал, посмотрел, это всё херня, этот код там расшифровывается только перед передачей на него управления, ключ не нужен


А я не так сказал да?! (Flint пишет: Там еще до ключа нужно снять Aspack и еще один Call занопить, который тож ксорит код, но это уже мелочи )

BLOWFISH [sbox] :: 001025DC :: 005039DC
Referenced at 004DBDF1
CRC32 [poly] :: 00101AE0 :: 00502EE0
Referenced at 0046C31D
CRC32 [poly] :: 001035DC :: 005049DC
Referenced at 004DE2CD
HAVAL (5 pass) :: 000DBDC3 :: 004DC9C3
The reference is above.
PI fraction (NIMBUS / BLOWFISH) :: 00102594 :: 00503994
Referenced at 004DBE09
RC2 [char] :: 001035E0 :: 005049E0
Referenced at 004DECE9
Referenced at 004DED02
Referenced at 005053C4
SHA1 [Compress] :: 000DA29D :: 004DAE9D
The reference is above.

н да, чую плохо дело

-----
Nulla aetas ad discendum sera




Ранг: 500.5 (!), 8thx
Активность: 0.230
Статус: Участник

Создано: 07 ноября 2007 16:29
· Личное сообщение · #19

ToBad пишет:
В смысле ? Без ключа сделать можно или нельзя сделать даже с ключом ?

В том смысле - что блоки которые раскриптовываются ксором трогать не обязательно. От двордов из ключа берется хэш SHA1, который используется в качестве ключа для BLOWFISH, которым покриптованы куски проги, надо повнимательней посмотреть - это пока только предположение Если оно правильно - то без ключа ловить нечего, надо просто отыскать какие блоки расшифровываются блоуфишем и сдампить их.

-----
"Пусть видят, что мы не шутим. Стволы для понта, ножи для дела" Lock, Stock & Two Smoking Barrels





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

Создано: 07 ноября 2007 16:31
· Личное сообщение · #20

Flint пишет:
н да, чую плохо дело


А может сигнатурок просто так накидали ?
Думаю в любом случае эмуль сделать можно будет....



Ранг: 500.5 (!), 8thx
Активность: 0.230
Статус: Участник

Создано: 07 ноября 2007 16:42
· Личное сообщение · #21

ToBad
Посмотрел повнимательней: блоки 4de370h-4dea90h; 4f5f40-4f6870h; 503994h-504adfh - находятся в секции кода и имеют слишком высокую для ксора энтропию, ставь в них бряки на чтение\запись и смотри что туда пишется\оттуда читается при наличии ключа. Ресурсы целые.

-----
"Пусть видят, что мы не шутим. Стволы для понта, ножи для дела" Lock, Stock & Two Smoking Barrels




Ранг: 85.5 (постоянный)
Активность: 0.040
Статус: Участник

Создано: 07 ноября 2007 17:41 · Поправил: DMD
· Личное сообщение · #22

Smon пишет:
это пока только предположение Если оно правильно - то без ключа ловить нечего


даже в этом случае есть два решения:
1) посмотреть внимательное алго восстановления кода на предмет сколько dword`ов считанных из ключа задействовано как вход SHA1 и от этого можно прогнозировать время определения этих dword`ов.

если прогнозы времени будут плохими см.п2

2) сделать loader/patch, который совершенно банальным образом или сохранит сами значение dword`ов ключа или запишет в некий файл восстановленные куски кода., и вручить его с подробными обяснениями m1sha.

вежливо попросить - вот ларчик и откроется

ps/ вот только сам m1sha пока что-то в отсутствии....

pps/ выложите, pls, распакованный exe... глянуть..




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

Создано: 07 ноября 2007 18:12
· Личное сообщение · #23

DMD пишет:
pps/ выложите, pls, распакованный exe... глянуть..


h..p://dump.ru/files/n/n38409335/
Пароль на архив: 111
Размер: 1 Мб.



Ранг: 500.5 (!), 8thx
Активность: 0.230
Статус: Участник

Создано: 07 ноября 2007 18:31
· Личное сообщение · #24

DMD пишет:
посмотреть внимательное алго восстановления кода на предмет сколько dword`ов считанных из ключа задействовано как вход SHA1

Ну это да, если хэш от одного дворда - то сложностей никаких, два - тоже реально, хотя и подольше, а если куча

DMD пишет:
сделать loader/patch, который совершенно банальным образом или сохранит сами значение dword`ов ключа или запишет в некий файл восстановленные куски кода

Я и говорю - "без ключа ловить нечего", надо смотреть откуда и что берется, для этого нужен ключ

-----
"Пусть видят, что мы не шутим. Стволы для понта, ножи для дела" Lock, Stock & Two Smoking Barrels





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

Создано: 07 ноября 2007 18:41
· Личное сообщение · #25

До появления интерфейса раскриптоваваются блоки 4f20d4-4f2436, 500bbe-500d40, 4f495d-4f4acc.
На процедуре начинающейся с 500ba8 у меня программа падает. Когда после серии окон с ошибками влепил туда ret, программа выдала ошибочку типа в OnShow чего то там... Короче я так понял это процедура связанная с оконным интерфейсом. Думаю в дампе если m1sha его сделает - она будет восстановлена.



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

Создано: 08 ноября 2007 08:02
· Личное сообщение · #26

я не в отсутвии.. говорил же ключа у меня нет... пока списались с товарищем.. пока он понял что надо, пока прислал мне..

дамп проги снял... он тут.. ;) если снятно не так - скажите как надо - он переснимет

h___p://dump.ru/files/n/n8715875815/

пароль cracklab1

0923 - это серийный номер СТПРО ;)



Ранг: 85.5 (постоянный)
Активность: 0.040
Статус: Участник

Создано: 08 ноября 2007 09:17 · Поправил: DMD
· Личное сообщение · #27

ToBad пишет:
До появления интерфейса раскриптоваваются блоки 4f20d4-4f2436, 500bbe-500d40, 4f495d-4f4acc.
На процедуре начинающейся с 500ba8 у меня программа падает. Когда после серии окон с ошибками влепил туда ret, программа выдала ошибочку типа в OnShow чего то там... Короче я так понял это процедура связанная с оконным интерфейсом.


СПБ за дамп, я, правда, смотрел вечером on-line.. и вот что могу сказать:
до восстановления (этот термин мне кажется более правильным с этом случае) кусков кода и стрингов

0046E080 00 00 00 00 FF FF FF FF ....яяяя
0046E090 07 00 00 00 63 74 70 2E 65 78 65 00 FF FF FF FF ...ctp.exe.яяяя
0046E0A0 05 00 00 00 43 54 50 72 6F 00 00 00 FF FF FF FF ...CTPro...яяяя
0046E0B0 0E 00 00 00 43 68 69 70 54 75 6E 69 6E 67 50 52 ...ChipTuningPR
0046E0C0 4F 20 00 00 FF FF FF FF 08 00 00 00 76 65 72 2E O ..яяяя...ver.
0046E0D0 33 2E 32 31 00 00 00 00 FF FF FF FF 0B 00 00 00 3.21....яяяя ...
0046E0E0 32 39 2E 30 35 2E 32 30 30 34 20 00 FF FF FF FF 29.05.2004 .яяяя
0046E0F0 07 00 00 00 63 74 70 2E 68 6C 70 00 FF FF FF FF ...ctp.hlp.яяяя
0046E100 1A 00 00 00 68 74 74 70 3A 2F 2F 77 77 77 2E 73 ...http://www.s
0046E110 6D 73 2D 73 6F 66 74 77 61 72 65 2E 72 75 00 00 ms-software.ru..
0046E120 FF FF FF FF 1A 00 00 00 68 74 74 70 3A 2F 2F 77 яяяя...http://w
0046E130 77 77 2E 61 75 74 6F 65 6C 65 63 74 72 69 63 2E ww.autoelectric.


собственно ключ и не нужен. Все начинается примерно вот здесь:

004F1B20 B8 2C204F00 MOV EAX, 004F202C ; ASCII "COM %d"

stack
0097FD7C 0097FDAC \Arg1 = 0097FDAC

004F1B25 E8 BE8AF1FF CALL 0040A5E8

stack
0097FDAC 013F7274 ASCII "COM 1"
.
.
004F1B43 E8 A433F9FF CALL 00484EEC ;
продолжение иллюминации
004F1B48 66:8B45 E4 MOV AX, WORD PTR [EBP-1C]
004F1B4C E8 CBE7FDFF CALL 004D031C ; >> Do we have Com<i> ?
.


в Proc_ 004D031C будет:

0097FD44 013F7228 |FileName = "COM1:"
0097FD48 C0000000 |Access = GENERIC_READ|GENERIC_WRITE
0097FD4C 00000000 |ShareMode = 0
0097FD50 00000000 |pSecurity = NULL
0097FD54 00000003 |Mode = OPEN_EXISTING
0097FD58 A0000080 |Attributes = NORMAL|WRITE_THROUGH|NO_BUFFERING
0097FD5C 00000000 \hTemplateFile = NULL

004D0398 E8 536EF3FF CALL 004071F0 ; JMP to kernel32.CreateFileA


и собственно окончание цикла сканирования COM-интерфесов на предмет ключа:

004F1C27 FF45 E4 INC DWORD PTR [EBP-1C]
004F1C2A 837D E4 08 CMP DWORD PTR [EBP-1C], 8
004F1C2E 7E 07 JLE SHORT 004F1C37
004F1C30 C745 E4 01000000 MOV DWORD PTR [EBP-1C], 1
004F1C37 FF45 F0 INC DWORD PTR [EBP-10]
004F1C3A 837D F0 0A CMP DWORD PTR [EBP-10], 0A ; Is this finish?
004F1C3E ^0F85 A0FEFFFF JNZ 004F1AE4
004F1C44 6A 07 PUSH 7
004F1C46 BA 34204F00 MOV EDX, 004F2034
004F1C4B B8 20394F00 MOV EAX, 004F3920
004F1C50 B9 00010000 MOV ECX, 100
004F1C55 E8 5EAAF7FF CALL 0046C6B8 ; >> compare


Proc_0046C6B8 сравнивает два блока данных:

004F3929 C0 88 BE F3 95 B1 20 30 39 32 33 00 8B C6 83 C0 А€ѕу•± 0923.‹ЖѓА
004F3939 04 83 F8 0A 0F 87 3E 06 00 00 FF 24 85 4A 39 4F ѓш.‡>..я$…J9O
004F3949 00 EB 3D 4F 00 EB 3D 4F 00 EB 3D 4F 00 EB 3D 4F .л=O.л=O.л=O.л=O
004F3959 00 76 39 4F 00 15 3A 4F 00 B8 3A 4F 00 5B 3B 4F .v9O.:O.ё:O.[;O
004F3969 00 02 3C 4F 00 A5 3C 4F 00 48 3D 4F 00 33 D2 8B .<O.Ґ<O.H=O.3Т‹
004F3979 83 6C 04 00 00 E8 25 5D F5 FF 33 D2 8B 83 48 04 ѓl..и%]хя3Т‹ѓH
004F3989 00 00 E8 18 5D F5 FF 33 D2 8B 83 48 04 00 00 E8 ..и]хя3Т‹ѓH..и
004F3999 53 47 FE FF 33 D2 8B 83 60 04 00 00 E8 76 81 F6 SGюя3Т‹ѓ`..иvЃц
004F39A9 FF 33 D2 8B 83 30 03 00 00 E8 69 81 F6 FF 33 D2 я3Т‹ѓ0..иiЃця3Т

004F2035 C0 88 BE F3 95 B1 00 31 C0 48 BA 57 01 07 00 31 А€ѕу•±.1АHєW.1
004F2045 C0 48 BA 08 49 11 00 31 C0 48 BA 56 2E 6D 00 31 АHєI.1АHєV.m.1
004F2055 C0 48 BA 02 82 8E 00 31 C0 48 BA 54 13 72 00 31 АHє‚Ћ.1АHєTr.1
004F2065 C0 48 BA 54 45 74 00 55 8B EC 81 C4 50 FA FF FF АHєTEt.U‹мЃДPъяя
004F2075 53 56 57 33 C9 89 8D 50 FA FF FF 89 8D 7C FA FF SVW3Й‰ЌPъяя‰Ќ|ъя
004F2085 FF 89 8D 80 FA FF FF 89 8D 84 FA FF FF 89 8D 88 я‰ЌЂъяя‰Ќ„ъяя‰Ќ€
004F2095 FA FF FF 89 4D F8 89 4D F4 8B D8 8D 85 8C FE FF ъяя‰Mш‰Mф‹ШЌ…Њюя
004F20A5 FF 8B 15 E8 83 40 00 E8 6F 35 F1 FF 33 C0 55 68 я‹иѓ@.иo5ся3АUh
004F20B5 86 24 4F 00 64 FF 30 64 89 20 80 BB 95 1A 00 00 †$O.dя0d‰ Ђ»•..


и последнее что я успел посмотреть:
проверка "0923"

004F1C64 8B45 F8 MOV EAX, DWORD PTR [EBP-8]
004F1C67 8B55 F0 MOV EDX, DWORD PTR [EBP-10]
004F1C6A 8A8410 784F2000 MOV AL, BYTE PTR [EAX+EDX+204F78] ; 016F4F7C ASCII 0923
004F1C71 8B55 F0 MOV EDX, DWORD PTR [EBP-10]
004F1C74 3A0413 CMP AL, BYTE PTR [EBX+EDX]
004F1C77 74 10 JE SHORT 004F1C89
004F1C79 8B15 3C535000 MOV EDX, DWORD PTR [50533C] ; CTP.005031A8
004F1C7F 8B12 MOV EDX, DWORD PTR [EDX]
004F1C81 8B45 F8 MOV EAX, DWORD PTR [EBP-8]
004F1C84 E8 930D0000 CALL 004F2A1C
004F1C89 FF45 F0 INC DWORD PTR [EBP-10]
004F1C8C 837D F0 04 CMP DWORD PTR [EBP-10], 4
004F1C90 ^75 D2 JNZ SHORT 004F1C64


дальше будет еще несколько проверок сравнением и поскольку данные невалидны (ключа-то у нас нет), то и будем получать исключения и мессадж: "Вставьте ключ и презапустите программу".
ну и на_выход!

до использования данных ключа как вход SHA и там далее возможные варианты дело пока не дошло.
нужно пройти вот эти проверки сравнением..

пока - все

ps/ никто не задумался - с каким, собственно, ключем мы имеем дело?



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

Создано: 08 ноября 2007 09:57
· Личное сообщение · #28

могу попросить разобрать ключ и сфоткать..

ПС .. вот фотки ключа... ключ прозрачный для сигналов компорта...
cобран на pic12f629

e20f_07.11.2007_CRACKLAB.rU.tgz - DSC00151.JPG




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

Создано: 08 ноября 2007 10:20
· Личное сообщение · #29

m1sha пишет:
cобран на pic12f629


А на другой стороне тоже разводка есть ? Или всего 3 ноги пика подключены ?

m1sha - сделай дамп работающей с ключом программы.



Ранг: 85.5 (постоянный)
Активность: 0.040
Статус: Участник

Создано: 08 ноября 2007 10:33 · Поправил: DMD
· Личное сообщение · #30

ToBad пишет:
сделай дамп работающей с ключом программы.


смысл?

целесообразннее идти по шагам: ставить защелки (0хEBFE) в интересующих местах и получать нужные данные/дамп.
первый интересный момент

004F1B7D > 8B45 F8 MOV EAX, DWORD PTR [EBP-8]

будем знать какой порт и пр. задействованы в оригинале.

второй:

004F1C44 . 6A 07 PUSH 7 ; /Arg1 = 00000007

получим первый кусок данных ключа (и достаточно большой!)

и так далее..


. 1 . 2 . >>
 eXeL@B —› Основной форум —› Кто нибудь смотрел СhipTuningPro Full Version CТР-3.21 ? Там СОМ ключ.
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


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