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

 eXeL@B —› Вопросы новичков —› Crackme прошу помощи
Посл.ответ Сообщение

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

Создано: 11 февраля 2009 14:44
· Личное сообщение · #1

Code:
  1. JGE SHORT step1__.004011D8
  2. PUSH 10
  3. PUSH step1__.0040B17C
  4. PUSH step1__.0040B14C Проверка имени, и проверка что оно состоит из 4 и более символов
  5. PUSH ESI                        вызов MessageBoxA
  6. CALL <JMP.&user32.MessageBoxA>
  7. JMP SHORT step1__.0040123F
  8. XOR EDX,EDX Обнуление EDX
  9. XOR EAX,EAX  Обнуление EAX
  10. CMP ECX,EAX сравнение ECX с EAX


Подскажите пожалуйста, если берем имя из 8 или с любым другим количеством символом больше 4, то после выхода из кода после генерации получаем, 3-значный правильный код,где он определяет что именно 3-значный код который генерируется верный, или это задумка создателя кррякми, хотя он же где то должен определяться.

И еще подскажите если можно поточнее, как именно генерируется код на основе имени в данном случае, а то, что то не понятно не много, имя из 4 и более символов а на выходе 3 значный верный код

Сам код генерации регистрационного номера.

Code:
  1. JLE SHORT step1__.004011ED
  2. XOR EBX,EBX
  3. MOV BL,BYTE PTR SS:[EBP+EAX-1C]
  4. ADD EDX,EBX
  5. INC EAX
  6. CMP ECX,EAX
  7.  JG SHORT step1__.004011E0



0576_11.02.2009_CRACKLAB.rU.tgz - step1.exe



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

Создано: 11 февраля 2009 15:58
· Личное сообщение · #2

Code:
  1. 0040120F  |.  85C0          TEST EAX, EAX
  2. 00401211  |.  75 17         JNZ SHORT 0040122A
  3. 00401213  |.  68 30000400   PUSH 40030                               ; /Style = MB_OK|MB_ICONEXCLAMATION|MB_APPLMODAL|40000
  4. 00401218  |.  68 CEB14000   PUSH 0040B1CE                            ; |Title = "You Did It!"
  5. 0040121D  |.  68 85B14000   PUSH 0040B185                            ; |Text = "Congradulations, you have figured out Step1
  6. Step1 unlock code is: 17FF25"
  7. 00401222  |.  56            PUSH ESI                                 ; |hOwner
  8. 00401223  |.  E8 D68F0000   CALL 0040A1FE                            ; \MessageBoxA


если правильно понял суть вопроса, то в EAX поместился правильный код, и сверяется с твоим кодом, если они совпали, то перехода на плохую мессагу не происходит
TEST EAX,EAX



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

Создано: 11 февраля 2009 16:12
· Личное сообщение · #3

с генерацией номера еще проще, код каждой буквы складывается, получаем число



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

Создано: 11 февраля 2009 16:25
· Личное сообщение · #4

Amidosha пишет:
И еще подскажите если можно поточнее, как именно генерируется код на основе имени в данном случае, а то, что то не понятно не много, имя из 4 и более символов а на выходе 3 значный верный код

Вот например имя Lampik(ansi)=4C+61+6D+70+69+6B=25E(hex)
потом этот 25E входит в call 4011F7 потом в call 403ADA
потом из всего цикла выходит правильный ключ 606



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

Создано: 12 февраля 2009 00:30
· Личное сообщение · #5

Lampik пишет:
Вот например имя Lampik(ansi)=4C+61+6D+70+69+6B=25E(hex)
потом этот 25E входит в call 4011F7 потом в call 403ADA
потом из всего цикла выходит правильный ключ 606


Откуда ты взял 4C+61+6D+70+69+6B=25E(hex)

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



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

Создано: 12 февраля 2009 06:17
· Личное сообщение · #6

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

вот ссыла api.farmanager.com/ru/winapi/virtualkeycodes.html, тут можно посмотреть коды виртуальных клавиш,



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

Создано: 12 февраля 2009 12:47
· Личное сообщение · #7

Amidosha пишет:
Откуда ты взял 4C+61+6D+70+69+6B=25E(hex)



Code:
  1. 004011E0  |> /33DB          /XOR EBX,EBX
  2. 004011E2  |. |8A5C05 E4     |MOV BL,BYTE PTR SS:[EBP+EAX-1C]
  3. 004011E6  |. |03D3          |ADD EDX,EBX
  4. 004011E8  |. |40            |INC EAX
  5. 004011E9  |. |3BC8          |CMP ECX,EAX
  6. 004011EB  |.^\7F F3         \JG SHORT step1__.004011E0



 eXeL@B —› Вопросы новичков —› Crackme прошу помощи
Эта тема закрыта. Ответы больше не принимаются.
   Для печати Для печати