Сейчас на форуме: vsv1 (+3 невидимых)

 eXeL@B —› Вопросы новичков —› Поиск генерации ключа. Взлом TurboLaunch version 5.0.9
Посл.ответ Сообщение

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

Создано: 12 декабря 2007 14:21
· Личное сообщение · #1

В разделе форума для новичков Ссылки на программы с простой защитой v2 скачал программку TurboLaunch 5 для тренинга в реверсинге, вот описание:
1. TurboLaunch version 5.0.9 (9/27/2006)
2. _http://www.savardsoftware.com
3. _http://www.savardsoftware.com/downloads/tlsetup.exe
4. 1637 KB
5. Быстрый запуск программ. Прога висит в трее и ждет когда ты её вызовешь, там уже кликаешь по нужной программе. Полезна крекерам для группировки программ по категориям: Дизассемблеры, отладчики, утилиты, Hex - редакторы и т.д.
6. Кейген, а можно просто в процессе генерации подсмотреть
7. Borland Delphi 6.0 - 7.0
8. Trial + NAG при запуске + Справка по работе с прогой каждый раз
9. --------
10. OllyDbg
11. Уровень сложности 0-2

Ну и начал пробывать... При запуске программы вылазиет "nag-окно" c прозьбой зарегистрировать программу, и после закрытия окна, еще впридачу вылазиет "Окно справка по программе". Запустил программу в Олле, начал трейсить код... и первое что бросилось в глаза это 0053CF0B BA 58CF5300 MOV EDX,TurboLau.0053CF58 ; ASCII "TurboLaunch.hlp" тут видно что в регистр EDX значение окна справки, я исправил на MOV EDX,0h. Окно справки перестало появляться, но наг-окно осталось...
Пробывал ставить бряк на MessageBox, который появляется после ввода неправильного рег-кея, вот 004CF816 |. E8 A188F3FF CALL <JMP.&user32.MessageBoxA>; \MessageBoxA.. Но чуть выше вызова находятся параметры мэссаджбокса, я искал первый call до вызова MessagBox, заходил в него но там мне ничего не ясно... как узнать куда именно зайти надо, на какой переход ? пробывал ставить бряк на введенный "неправильный пароль" в памяти, оказался по адресу 77E6BDE6 0FB60F MOVZX ECX,BYTE PTR DS:[EDI] .. и тут после прохода кода, видно что перебираются символы введеного мной "неправильного пароля" но дальше я не разобрался... пробывал во всех строках по адресам (0052DE73,0052D55A ,00539933), где передается ASCII "Unregistered Evaluation Copy" , ставить значение "0", но все бы казалось хорошо, нигде непоявляется надписи незарегистрированная, даже наг-окно получилось убрать 004CC062 74 0F JE SHORT TurboLau.004CC073 переход изменил на JNZ, но все равно программа неправильно работает... подскажите как найти место генерации рег-кея, или он в открытом виде лежит в памяти?!, до этого в нескольких программах более легкого уровня у меня получилось найти рег-кей, он находился рядом с "неправильным ключем".. а тут не получается.. укажите на правильное решение этого вопроса.



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

Создано: 12 декабря 2007 17:30
· Личное сообщение · #2

Там ключ в открытом виде лежит

-----
Я ещё не волшебник, я только учусь...




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

Создано: 12 декабря 2007 17:46
· Личное сообщение · #3

Assass1n, буду очень признателен если немного расскажишь, каким образом его искать?
сделал я бряк на веденный "неправильный пароль" в памяти, очутился на строке 77E6BDE6 0FB60F MOVZX ECX,BYTE PTR DS:[EDI], какие дальше действия, на что нужно обращать внимания при трейсе кода??? как прийти к ключу, если он находится невозле "неправильного ключа" в памяти?



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

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

0053C0C8 |. 8B45 F4 MOV EAX,DWORD PTR SS:[EBP-C]
Тут в eax кладётся правильный рег. номер.

-----
Я ещё не волшебник, я только учусь...





Ранг: 756.3 (! !), 113thx
Активность: 0.610.05
Статус: Участник
Student

Создано: 12 декабря 2007 19:00
· Личное сообщение · #5

Assass1n пишет:
Там ключ в открытом виде лежит

Что вводите человека в Заблуждение! Ключ не лежит в открытом виде, а вычисляется...

-----
z+Dw7uLu5+jqLCDq7vLu8PvpIPHs7uMh





Ранг: 756.3 (! !), 113thx
Активность: 0.610.05
Статус: Участник
Student

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

Будут вопросы пиши в аську

-----
z+Dw7uLu5+jqLCDq7vLu8PvpIPHs7uMh




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

Создано: 13 декабря 2007 10:52 · Поправил: fen
· Личное сообщение · #7

Isaev, спс, уже получилось.
Assass1n, спасиб... вод думаю как ты пришел к адресу 0053C0C8, затем начал понимать немного, помню искал в Олли в "all referenced text string" и уже натыкался на 0053C085 |. BA 8CC15300 |MOV EDX,TurboLau.0053C18C ; ASCII "GF2DSA38HJKL7M4NZXCV5BY9UPT6R1EWQ40I1CP7Z7GOEPQLZ" это как я понимаю набор символов из которых генерируется правильный рег-кей... и после цикла генерации кода, весь результат помещается в регистр EAX. Вот как ты подсказал, я бряк и поставил ) получил рег-кей на свой ник R5DFR5-X67S77-FGA5QZ... как понимаю это и есть код генерации с адреса 0053C031 по 0053C0C2?



Ранг: 6.0 (гость)
Активность: 0.010
Статус: Участник

Создано: 27 декабря 2007 01:29
· Личное сообщение · #8

По этой ссылке уже версия 5.10 и в ней идет проверка на патч я не могу найти место в проге где она вызывается. После показа окна возвращает не в прогу, а в эксплорер. Подскажите как быть.



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

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

pycha
0044E246 - 74 на EB

-----
Я ещё не волшебник, я только учусь...





Ранг: 756.3 (! !), 113thx
Активность: 0.610.05
Статус: Участник
Student

Создано: 27 декабря 2007 02:57
· Личное сообщение · #10

pycha вроде не было там проверки на патч... убирал хелп в начале, всё ок!
а что ты собрался там патчить? посмотри свой рег-код и регистрируй

-----
z+Dw7uLu5+jqLCDq7vLu8PvpIPHs7uMh




Ранг: 6.0 (гость)
Активность: 0.010
Статус: Участник

Создано: 27 декабря 2007 21:59
· Личное сообщение · #11

Isaev в последней версии есть.
Assass1n подскажи каким способом ты нашол проверку на патч в этой проге, по чему надо ориентироватся иская такую проверку.
И еще. Я занопил переходы 005254ab и 005254e0 ввел имя и пароль и прога зарегистрировалась, но после перезагрузки прога обратно пишет что она не зарегистрирована. Я уже 3 часа над ней сижу, но опыта мало и ничево не подучается Как надо исправить прогу чтобы она себе сохраняла что она зарегистрирована?



Ранг: 6.0 (гость)
Активность: 0.010
Статус: Участник

Создано: 27 декабря 2007 22:00
· Личное сообщение · #12

Isaev в последней версии есть.
Assass1n подскажи каким способом ты нашол проверку на патч в этой проге, по чему надо ориентироватся иская такую проверку.
И еще. Я занопил переходы 005254ab и 005254e0 ввел имя и пароль и прога зарегистрировалась, но после перезагрузки прога обратно пишет что она не зарегистрирована. Я уже 3 часа над ней сижу, но опыта мало и ничево не подучается Как надо исправить прогу чтобы она себе сохраняла что она зарегистрирована?



Ранг: 6.0 (гость)
Активность: 0.010
Статус: Участник

Создано: 27 декабря 2007 22:01
· Личное сообщение · #13

Isaev в последней версии есть.
Assass1n подскажи каким способом ты нашол проверку на патч в этой проге, по чему надо ориентироватся иская такую проверку.
И еще. Я занопил переходы 005254ab и 005254e0 ввел имя и пароль и прога зарегистрировалась, но после перезагрузки прога обратно пишет что она не зарегистрирована. Я уже 3 часа над ней сижу, но опыта мало и ничево не подучается Как надо исправить прогу чтобы она себе сохраняла что она зарегистрирована?




Ранг: 756.3 (! !), 113thx
Активность: 0.610.05
Статус: Участник
Student

Создано: 27 декабря 2007 22:23 · Поправил: Isaev
· Личное сообщение · #14

х.з. Может недавно переделали? у меня v5.0.10 27 март 2007... качал около месяца назад... патчил, проверок не было...
pycha пишет:
Как надо исправить прогу чтобы она себе сохраняла что она зарегистрирована?

Зачем её править??? Она показывает серийник для твоего ника, введи его и она зарегена

-----
z+Dw7uLu5+jqLCDq7vLu8PvpIPHs7uMh




Ранг: 6.0 (гость)
Активность: 0.010
Статус: Участник

Создано: 27 декабря 2007 22:29
· Личное сообщение · #15

Удалите ктото лишние сообщения (был глюк с инетом)



Ранг: 6.0 (гость)
Активность: 0.010
Статус: Участник

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

Isaev пишет:
Зачем её править??? Она показывает серийник для твоего ника, введи его и она зарегена
Это если бы она нужна мне была для работы то я так и слелал, но я хочу понять систему защиты, увидеть что хотел сделать програмист. Может глупо, но я такой...



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

Создано: 28 декабря 2007 02:04
· Личное сообщение · #17

pycha пишет:
увидеть что хотел сделать програмист

При запуске программы проверяются 3 куска кода на наличие изменений.

-----
Я ещё не волшебник, я только учусь...




Ранг: 6.0 (гость)
Активность: 0.010
Статус: Участник

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

Assass1n Так напиши пожалуйста каким ты способом нашел проверку на патч.



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

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

Assass1n, угу мне тоже интерестно было бы узнать адреса этих трёх участков проверки на наличие изменений, а то после патча программа не запускается в связи с некорректным CRC, я с помощью плагина программы PEiD установил корректный CRC, но все равно не запускается, как убрать эту проверку, в кратце опиши.
Isaev'y уважение, за помощь мне в крекинге начального уровня.



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

Создано: 28 декабря 2007 17:46
· Личное сообщение · #20

Запускаем программу, вводим любой серийник, жмякаем на OK, получаем сообщение
The Registration Name and Code you entered are not correct. You must type your Name and Code EXACTLY as it appears on your registration acknowledgement. Please try again.
Запускаем HDasm вводим эту фразу, оказываемся тут:

0052556F: EB18 jmp 00525589
* Jump:
005254AB(C)
00525571: 6A40 push 00000040 ;'@'
* String: "TurboLaunch"
00525573: B980565200 mov ecx, 00525680
* String: "The Registration Name and Code you entered are not correct. You must
type your Name and Code EXACTLY as it appears on your registration
acknowledgement. Please try again."
00525578: BA8C565200 mov edx, 0052568C
0052557D: A138285400 mov eax, [00542838]


Видим что прыгаем с адреса 00525589, 2 раза кликаем мышой на нём, переходим на такой вот кусок кода

005254A4: E86B120100 call 00536714
005254A9: 84C0 test al, al
005254AB: 0F84C0000000 je 00525571


соответсвенно от того что вернёт call будет зависить прыгнем мы на неправильное сообщение или нет.
зайдём туда - видим что он вызывается из 6 мест. в нашем случае это очень похоже на то , что мы наткнулись на начало процедуры регистрации. Т.е. меняем
00536714: 8B9068010000 mov edx, [eax+00000168]
на
00536714: 32C0 xor al,al
00536716: FEC0 inc al
00536718: C3 retn
00536719: 90 nop

(если нужен ключ или кейген кто то хочет написать, то надо дальше смотреть и желательно уже в отладчике трассировать до сравнения с введённым числом)
После этого мы зареганы... (были в предыдущих версия)
а сейчас при запуске получили
The file "TurboLaunch.exe" seems to be corrupt!
Лезем опять в HDasm, вводим вышепреведённую строку - ничего не находим.
ПОэтому запускаем отладчик и набераем в комманд баре
bpx MessageBoxA
Тормознули тут

0044DF6D |. 50 PUSH EAX ; |Text
0044DF6E |. 6A 00 PUSH 0 ; |hOwner = NULL
0044DF70 |. E8 4FA1FBFF CALL <JMP.&user32.MessageBoxA> ; \MessageBoxA
0044DF75 |. 6A 00 PUSH 0 ; /pModule = NULL

нажали для верности F8 - получили сообщение, значит были тормознули верно.
Ctrl+F2 -> F9
Опять тормознули на сообщении. Переходим на начало процедуры

0044DE3C 55 PUSH EBP
0044DE3D |. 8BEC MOV EBP,ESP


выделяем 0044DE3C и нажимаем Ctrl+R (find all reference, а по нашенски - адреса откуда вызывается данная процедура.)
нашли 2 штуки

0044E26F . E8 C8FBFFFF CALL TurboLau.0044DE3C
0044E290 . E8 A7FBFFFF CALL TurboLau.0044DE3C


Ставим бряки на оба адреса - перезапускаемся.
Тормознули тут

0044E23E . FF92 08030000 CALL DWORD PTR DS:[EDX+308] <- первая проверка
0044E244 . 84C0 TEST AL,AL
0044E246 . 74 4D JE SHORT TurboLau.0044E295
0044E248 . A1 20045400 MOV EAX,DWORD PTR DS:[540420]
0044E24D . 8B10 MOV EDX,DWORD PTR DS:[EAX]
0044E24F . FF92 0C030000 CALL DWORD PTR DS:[EDX+30C] <- вторая (EDX 00432E60 ASCII "CheckFileCrc")
0044E255 . 84C0 TEST AL,AL
0044E257 . 74 3C JE SHORT TurboLau.0044E295
0044E259 . A1 20045400 MOV EAX,DWORD PTR DS:[540420]
0044E25E . 8B10 MOV EDX,DWORD PTR DS:[EAX]
0044E260 . FF92 18030000 CALL DWORD PTR DS:[EDX+318] <- третья
0044E266 . 84C0 TEST AL,AL
0044E268 . 74 2B JE SHORT TurboLau.0044E295
0044E26A . A1 68365400 MOV EAX,DWORD PTR DS:[543668]
0044E26F . E8 C8FBFFFF CALL TurboLau.0044DE3C <- тут


если вам охота - можно зайти в эти колы и посмотреть что там проверяется, а мне лень.
для того что бы проверка прошла успешно - достаточно один из JE изменить на JMP и будет вам счастье.
На сим предполагаю что тема закрыта.

-----
Я ещё не волшебник, я только учусь...




Ранг: 6.0 (гость)
Активность: 0.010
Статус: Участник

Создано: 28 декабря 2007 23:38
· Личное сообщение · #21

Спасиб! Вот теперь все понятно.


 eXeL@B —› Вопросы новичков —› Поиск генерации ключа. Взлом TurboLaunch version 5.0.9
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


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