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

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

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

Создано: 15 августа 2007 19:31 · Поправил: Waterproof01
· Личное сообщение · #1

Не могу понять в чем проблема. Нашел место, где программа записывает ограничение по кол-ву записей (15), изменил его. Файл с большим кол-вом записей не открывается (выскакивает Exception), файл с меньшим кол-вом открывается исправно(Exception не возникает). Может не то число нашел?

Может, кто посмотрит? (http://forum.ru-board.com/topic.cgi?forum=35&topic=33018&start=0)
Уже все волосы на голове порвал

откуда-то вырисовывается строка "00015"
"00015" (вероятно при помощи StrToInt) преобразовывается в 00000F (заветное число 15)
00000F пишется куда-то в память, откуда с этим числом работают функции сверки количества программ в базе с этим числом.

Вопрос в том, на каком этапе патчить... и каким образом

Постоянно вылетает ошибка list item not found -app

00AA5EA3 . 3B82 DC000000 CMP EAX,DWORD PTR DS:[EDX+DC] ; 4islo 15 sravnivaetsa s EAX - kol-vom zapisey
00AA5EA9 . 7E 42 JLE SHORT SoftCATP.00AA5EED ; not taken (if <15 taken)



00BE379D |. E8 9234FEFF CALL SoftCATP.00BC6C34 ; "00015"
00BE37A2 8B45 D0 MOV EAX,DWORD PTR SS:[EBP-30]
00BE37A5 E8 9E9182FF CALL SoftCATP.0040C948 ; perevodit iz "00015" v 00000F
00BE37AA |. 8B13 MOV EDX,DWORD PTR DS:[EBX]
00BE37AC |. 8982 DC000000 MOV DWORD PTR DS:[EDX+DC],EAX


КОРОЧЕ этот код выше скорее всего для отвода глаз!!!
потому что в программе используется константа 0F! (смотрите ниже)

ссылка: http://www.fnprg.com/softcatplus/dl/softcatplus_setup.exe http://www.fnprg.com/softcatplus/dl/softcatplus_setup.exe



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

Создано: 16 августа 2007 16:57
· Личное сообщение · #2

что, крепкий орешек?



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

Создано: 16 августа 2007 21:09 · Поправил: Waterproof01
· Личное сообщение · #3

вот гляньте:


00BC6C67 MOV BYTE PTR SS:[ESP+4],AL ; в регистре AL число 6
00BC6C6B MOV BL,1

00BC6C6D MOV EAX,DWORD PTR SS:[ESP]
00BC6C70 CALL SoftCATP.00406094
00BC6C75 MOVZX EDI,BL
00BC6C78 MOVZX EDX,BYTE PTR SS:[EBP+EDI-1]
00BC6C7D MOVZX ECX,SI
00BC6C80 SHR ECX,8
00BC6C83 XOR DL,CL
00BC6C85 MOV BYTE PTR DS:[EAX+EDI-1],DL
00BC6C89 MOVZX EAX,BYTE PTR SS:[EBP+EDI-1]
00BC6C8E ADD SI,AX
00BC6C91 IMUL AX,SI,0BA25
00BC6C96 ADD AX,4D72
00BC6C9A MOV ESI,EAX
00BC6C9C INC EBX
00BC6C9D DEC BYTE PTR SS:[ESP+4]
00BC6CA1 JNZ SHORT SoftCATP.00BC6C6D



Это похоже на цикл распаковки?



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

Создано: 16 августа 2007 22:17
· Личное сообщение · #4

Waterproof01 пишет:
Это похоже на цикл распаковки?


Quick Unpack v0.7 всё нормально распаковал.



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

Создано: 16 августа 2007 23:07 · Поправил: Waterproof01
· Личное сообщение · #5

та да, я понял уже
AsPackDie тоже распаковл нормально, но Olly все равно ругается "... has entry point outside code as spec in pe header"
Но все равно этот участок видимо важен (формируется надпись [demo] интересно, откуда она берется)
вот листинг с комментами

00BC6C67 MOV BYTE PTR SS:[ESP+4],AL ; zadaem s4et4ik 6
00BC6C6B MOV BL,1 ; zasunuli v BL 01
00BC6C6D MOV EAX,DWORD PTR SS:[ESP] ; v EAX ukazatel na stroku
00BC6C70 CALL SoftCATP.00406094 ; kopiruet v EAX ssylku na stroku
00BC6C75 MOVZX EDI,BL ; v EDI soderjimoe BL - 01
00BC6C78 MOVZX EDX,BYTE PTR SS:[EBP+EDI-1] ; SS:[00BE3CB4]=5B ('[') v EDX simvol '[' (ot "[demo]")
00BC6C7D MOVZX ECX,SI ; v ECX 9B (155)
00BC6C80 SHR ECX,8 ; sdvig vpravo (v ECX - 0)
00BC6C83 XOR DL,CL ; logi4eskoe isklyu4ayuwee ili (v CL - 0, v DL - '[')
00BC6C85 MOV BYTE PTR DS:[EAX+EDI-1],DL ; zapisyvaem v pamyat'
00BC6C89 MOVZX EAX,BYTE PTR SS:[EBP+EDI-1] ; v EAX '['
00BC6C8E ADD SI,AX ; 9B+5B=F6
00BC6C91 IMUL AX,SI,0BA25 ; SI*BA25=B2DF8E=AX=DF8E
00BC6C96 ADD AX,4D72 ; AX+4D72=DF8E+4D72=12D00=AX=2D00
00BC6C9A MOV ESI,EAX ; EAX=00002D00, ESI=F6
00BC6C9C INC EBX ; EBX=00BE3C01+1=00BE3C02 (po etomu adresu nuli)
00BC6C9D DEC BYTE PTR SS:[ESP+4] ; umenwaem s4et4ik
00BC6CA1 JNZ SHORT SoftCATP.00BC6C6D


короче скорее всего это какая-то стандартная функция библиотеки delphi



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

Создано: 17 августа 2007 02:20 · Поправил: Waterproof01
· Личное сообщение · #6

Вроде нашел, тьфу-тьфу

00C4E088 CMP EAX,0F ; sravnenie s 0F!!!!
00C4E08B JLE SoftCATP.00C4E60F ; if 16 not taken, if 14 - taken


нашел также безусловный джамп
00C4E5FF JMP SHORT SoftCATP.00C4E60F
возможно, если прога незарегистрирована, этот джамп сразу открывает базу

Что ж, попробую теперь подложить лиц.файл и пропатчить...

добавлено: хех... с подложенным лиц.файлом уже не стращает красным экраном, а выводит стандартную надпись "limited to 15..."
добавлено:
нужно пропатчить еще одну проверку:
00C7E502 CMP EAX,0F ; ewe odno sravnenie s 0F
00C7E505 JLE SHORT SoftCATP.00C7E509
00C7E507 MOV BL,1
00C7E509 TEST BL,BL
00C7E50B JE SoftCATP.00C7EAD7


Хоть подскажите, как грамотно пропатчить
пробовал dup'om патчить запакованный файл - не получается (при запуски 100% загрузка процессора)



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

Создано: 17 августа 2007 04:57
· Личное сообщение · #7

все готово, всем спасибо



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

Создано: 18 августа 2007 00:23
· Личное сообщение · #8

Раскажи как находил?



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

Создано: 18 августа 2007 03:05 · Поправил: Waterproof01
· Личное сообщение · #9

эх, тяжко было
Значит есть 2 базы одна с 14 записями (должна открываться) другая с 16-ю (ограничение)
сравнивал пошагово. сначала открыл одну, записал все джампы, потом вторую и сверял
так и обнаружил запись вида CMP EAX,0F

а Vovan666(из http://www.exelab.ru/f/action=vthread&forum=2&topic=8910&p age=25) видимо в другом месте менял (т.к. нет надписи demo)



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

Создано: 20 августа 2007 17:26
· Личное сообщение · #10

чего то не понимаю: ну пропатчили две проверки:
Waterproof01 пишет:
00C4E08B JLE SoftCATP.00C4E60F

Waterproof01 пишет:
00C7E505 JLE SHORT SoftCATP.00C7E509

(на безусловный jmp) , - ограничение на 15 программ осталось..
с этим что делать:
Waterproof01 пишет:
нашел также безусловный джамп
00C4E5FF JMP SHORT SoftCATP.00C4E60F

Проверку je если поменять на jne, тоже не помогает.
Если не трудно, по шагам распишите процесс взлома т.к. наверно другим юзерам тоже ничего не понятно



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

Создано: 21 августа 2007 16:31
· Личное сообщение · #11

я забыл про еще одну проверочку сказать
00AA5EA3 . 3B82 DC000000 CMP EAX,DWORD PTR DS:[EDX+DC] ; 4islo 15 sravnivaetsa s EAX - kol-vom zapisey
00AA5EA9 . 7E 42 JLE SHORT SoftCATP.00AA5EED ; not taken (if <15 taken)



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

Создано: 21 августа 2007 19:23
· Личное сообщение · #12

Когда есть кряк - ломать уже не интересно.. Хотя программа суперская: простой интерфейс,
быстро работает, не тупит особо, много возможностей. Единственное чего нет -русского языка.
Давно искал такую извеняюсь за оффтоп



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

Создано: 21 августа 2007 19:32
· Личное сообщение · #13

над русиком уже работают forum.ru-board.com/topic.cgi?forum=35&topic=33018&start=20#15



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

Создано: 21 августа 2007 20:57 · Поправил: Kycok Caxapa
· Личное сообщение · #14

Непонятно только что для каждой программы найденной автопоиском инфу надо вводить вручную?
Выдрать "интеллектом" проги удается только "publisher" и версию..
Для 400 с лишним прог набивать инфу ручками не очень хочется
Особенно интересен алгоритм выборки exe-файлов для добавления в базу: программа безошибочно отличает патч, вспомогательный файл,кейген и т.д. от "правильного" файла. Хотя иногда ошибается: вместо exe программы добавляет в базу exe какого-нибудь кодировщика или патчера..
Но все равно автор видно умный мужик был



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

Создано: 21 августа 2007 21:01
· Личное сообщение · #15

у них на сайте есть ещё прога для DVD каталогизации.. можно крякнуть тоже (защита наверняка одинаковая), правда каталогизаторов DVD на рынке shareware сейчас навалом и не факт что поломанная прога будет лучше какой нибудь eXtreme Movie Manager


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


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