Сейчас на форуме: ==DJ==[ZLO], Magister Yoda, Rio (+6 невидимых)

 eXeL@B —› Основной форум —› Помогите взломать прогу
Посл.ответ Сообщение

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

Создано: 25 декабря 2004 10:25
· Личное сообщение · #1

Привет всем!
Имеется такой код, выдранный из DeDe(System Mechanic 4.0e Pro):
...
004DC616 8D45F0 lea eax, [ebp-$10]
004DC619 BA14C74D00 mov edx, $004DC714
* Reference to: system.@LStrCat;
|
004DC61E E8757DF2FF call 00404398
004DC623 8D45F0 lea eax, [ebp-$10]
* Possible String Reference to: 'P4'
|
004DC626 BA20C74D00 mov edx, $004DC720
* Reference to: system.@LStrCat;
|
004DC62B E8687DF2FF call 00404398
004DC630 BB03000000 mov ebx, $00000003
004DC635 8B45F4 mov eax, [ebp-$0C]
* Reference to: system.@LStrLen:Integer;
|
004DC638 E8537DF2FF call 00404390
004DC63D 8945D0 mov [ebp-$30], eax
004DC640 DB45D0 fild dword ptr [ebp-$30]
004DC643 D83524C74D00 fdiv dword ptr [$004DC724]
* Reference to: system.@TRUNC;
|
004DC649 E85667F2FF call 00402DA4
004DC64E 83C003 add eax, +$03
004DC651 83D200 adc edx, +$00
004DC654 52 push edx
004DC655 50 push eax
004DC656 8BC3 mov eax, ebx
004DC658 99 cdq
004DC659 290424 sub dword ptr [esp], eax
004DC65C 19542404 sbb [esp+$04], edx
004DC660 58 pop eax
004DC661 5A pop edx
...
004DC62B - тут понятно в [ebp-$10] записывается 'P4', а вот 004DC61E - не понимаю... Как мне узнать, что в $004DC714?
Чё за комманды fild и fdiv (у меня есть самоучитель по асму, но там такого нет ) и что они делают?
И ещё тут * Reference to: system.@TRUNC; что TRUNC делает?
Зарание спасибо!



Ранг: 45.7 (посетитель)
Активность: 0.050
Статус: Участник
EBFE

Создано: 25 декабря 2004 10:32
· Личное сообщение · #2

fild - загрузка числа в регистр fpu
fdiv - деление с плавающей точкой
если я конечно не ошибаюсь



Ранг: 45.7 (посетитель)
Активность: 0.050
Статус: Участник
EBFE

Создано: 25 декабря 2004 10:32
· Личное сообщение · #3

FuzzyLogic пишет:
system.@TRUNC; что TRUNC делает?

по идее строку обрезает




Ранг: 1288.1 (!!!!), 273thx
Активность: 1.290
Статус: Участник

Создано: 25 декабря 2004 10:42
· Личное сообщение · #4

FuzzyLogic пишет:
Как мне узнать, что в $004DC714

Отладчик юзать...



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

Создано: 25 декабря 2004 10:52
· Личное сообщение · #5

Ara пишет:
Отладчик юзать...


d 004DC714 что-ли...




Ранг: 1288.1 (!!!!), 273thx
Активность: 1.290
Статус: Участник

Создано: 25 декабря 2004 10:56
· Личное сообщение · #6

FuzzyLogic
Ты что хочешь узнать-то?



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

Создано: 25 декабря 2004 11:02
· Личное сообщение · #7

Узнать, что именно прога записывает в [ebp-$10] (004DC61E),
StrCat - это я так понимаю [ebp-$10] := [ebp-$10] + то что в 004DC61E




Ранг: 1288.1 (!!!!), 273thx
Активность: 1.290
Статус: Участник

Создано: 25 декабря 2004 11:05
· Личное сообщение · #8

FuzzyLogic
Ну адреса ты нашел. Теперь бросай этот ДеДе и юзай отладчик, ставь на свои адреса бряки и смотри. Сразу все поймешь.




Ранг: 1288.1 (!!!!), 273thx
Активность: 1.290
Статус: Участник

Создано: 25 декабря 2004 11:07
· Личное сообщение · #9

Судя по твоему листингу, по адресу 4DC61E стоит вызов процедуры:
004DC61E E8757DF2FF call 00404398 [/i]
Так чтоFuzzyLogic пишет:
StrCat - это я так понимаю [ebp-$10] := [ebp-$10] + то что в 004DC61E
- это не совсем верно. И почему именно ебр-10?
Отладчик рулит.



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

Создано: 25 декабря 2004 11:09
· Личное сообщение · #10

Понятно короче
А вот ещё кусок кода (цикл), Если не влом может пожешь...

004DC566 BB01000000 mov ebx, $00000001 < *** начало цикла (ebx := 1)
004DC56B 8B45FC mov eax, [ebp-$04] < eax := name
004DC56E 8A4418FF mov al, byte ptr [eax+ebx-$01] < al := символ из имени (номер символа в ebx)
004DC572 3C46 cmp al, $46 < если al="F" (т.е. 1-ый символ имени), тогда
004DC574 7622 jbe 004DC598 < переход на 004DC598
004DC576 8B45FC mov eax, [ebp-$04] < eax := name
004DC579 0FB64418FF movzx eax, byte ptr [eax+ebx-$01] < eax := символ из имени (номер символа в ebx)
004DC57E 8D143B lea edx, [ebx+edi] < загружаем в edx адрес [ebx+edi] (edx := номер символа из имени+edi)
004DC581 2BC2 sub eax, edx < eax := eax-edx
004DC583 8D55E4 lea edx, [ebp-$1C] <

* Reference to: sysutils.IntToStr(Integer):AnsiString;overload;
|
004DC586 E865F2F2FF call 0040B7F0
004DC58B 8B55E4 mov edx, [ebp-$1C] <
004DC58E 8D45F4 lea eax, [ebp-$0C] <

* Reference to: system.@LStrCat;
|
004DC591 E8027EF2FF call 00404398 < [ebp-$0C] := [ebp-$0C]+[ebp-$1C]
004DC596 EB20 jmp 004DC5B8 <
004DC598 8B45FC mov eax, [ebp-$04] <
004DC59B 0FB64418FF movzx eax, byte ptr [eax+ebx-$01] <
004DC5A0 8D143B lea edx, [ebx+edi] <
004DC5A3 03C2 add eax, edx <
004DC5A5 8D55E0 lea edx, [ebp-$20] <

* Reference to: sysutils.IntToStr(Integer):AnsiString;overload; <
|
004DC5A8 E843F2F2FF call 0040B7F0
004DC5AD 8B55E0 mov edx, [ebp-$20] <
004DC5B0 8D45F4 lea eax, [ebp-$0C] <

* Reference to: system.@LStrCat;
|
004DC5B3 E8E07DF2FF call 00404398 < [ebp-$0C] := [ebp-$0C]+[ebp-$20]
004DC5B8 47 inc edi < edi := edi+1
004DC5B9 43 inc ebx < ebx := ebx+1
004DC5BA 4E dec esi < esi := esi-1
004DC5BB 75AE jnz 004DC56B

Где рядом написано - типо понятно (если чё не правильно, то подскажи...) А конкретно с 004DC598 по 004DC5A8...




Ранг: 1288.1 (!!!!), 273thx
Активность: 1.290
Статус: Участник

Создано: 25 декабря 2004 11:26
· Личное сообщение · #11

FuzzyLogic
Чес слово, в листинге влом копаться. Дай лучше урл, если прога небольшая.



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

Создано: 25 декабря 2004 11:36
· Личное сообщение · #12

Ну врядли ты захочешь качать ~30MB...
У меня она журнала: ChipCD - февраль 2004!!!



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

Создано: 25 декабря 2004 11:37
· Личное сообщение · #13

А ссылка www.iolo.com - там уже версия поновее есть!




Ранг: 1288.1 (!!!!), 273thx
Активность: 1.290
Статус: Участник

Создано: 25 декабря 2004 11:43
· Личное сообщение · #14

FuzzyLogic пишет:
Ну врядли ты захочешь качать ~30MB

Да, ты прав... Под отладчиком-то смотрел?



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

Создано: 25 декабря 2004 11:47 · Поправил: FuzzyLogic
· Личное сообщение · #15

Тут ещё ты спрашивал:
Ara пишет:
И почему именно ебр-10?


Я тут исследовал код программ на Delphi в DeDe и вот чё получается...

Delphi

var
s, s2: stringl
begin
s := 'CRACK';
s2 := s2+s;
end;

ASM

...
0044DBC1 8D45FC lea eax, [ebp-$04] < s

* Possible String Reference to: 'CRACK'
|
0044DBC4 BA14DC4400 mov edx, $0044DC14

* Reference to: System.@LStrLAsg(void;void;void;void); < s := edx ($0044DC14) - наша строка
|
0044DBC9 E8C266FBFF call 00404290

0044DBDB 8D45F8 lea eax, [ebp-$08] < s2
0044DBDE 8B55FC mov edx, [ebp-$04] < s

* Reference to: System.@LStrCat;
|
0044DBE1 E8D268FBFF call 004044B8 < s2 := s2+s
...

Вот так!

Немного подправлю: [ebp-$04] - это s, а [ebp-$08] - s2
И ешё в SoftIce вмотрел... Вроде всё правильно!



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

Создано: 25 декабря 2004 11:49
· Личное сообщение · #16

Вот блин тут пора инет вырубать
Если чё то может завтра утром ещё зайду...



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

Создано: 25 декабря 2004 11:54
· Личное сообщение · #17

А вот ещё я посмотрел там на сайте проги есть не PRO версия...
~6-8MB



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

Создано: 02 января 2005 16:56
· Личное сообщение · #18

Даже не интересно...
Кстати обратили внимание, что оно доооооолго думает при вводе данных?

Как я понял оно копается в памяти на тему поиска окошек в которых фигурируют слова: DAMN, keygen, serial.com и т.д.

System Mechanic v 5.0.3.0

Name: BitEat
Serial: 93445-P5004-1887572774

Распаковка - aspdie, дебаг - Olly.




Ранг: 303.7 (мудрец), 4thx
Активность: 0.190
Статус: Участник
tPORt Manager

Создано: 03 января 2005 01:12
· Личное сообщение · #19

Я эту прогу ломал уже давно, защита - 0.
Name: Bit-h@ck
Serial: 74637-P4682-0675357828
Она проверяет, не запущен ли кейген от TSRh.



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

Создано: 03 января 2005 10:15
· Личное сообщение · #20

5я версия проверяет ооооооооочень многие кейгены и сайты
Я когда на этот код наткнулся - плакал от смеха

А ты кейген писал к ней?
А то я к 5ой версии попробовал... 2/3 нормально генерит, а вот последнее - не могу понять логику и всё



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

Создано: 03 января 2005 23:30
· Личное сообщение · #21

Эх... Написал кейген... КажИся генерит...
При том что не знаю асма вообще удивительно что получилось...




Ранг: 303.7 (мудрец), 4thx
Активность: 0.190
Статус: Участник
tPORt Manager

Создано: 04 января 2005 00:22
· Личное сообщение · #22

BitEat пишет:
Эх... Написал кейген... КажИся генерит...
При том что не знаю асма вообще удивительно что получилось...

Там один из самых слабых алго генерации пароля



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

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

Зато я единственный и неповторимый
За неимением на компе ни msvc, ни delphi написал на php кейген


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


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