скрыть

скрыть

  Форум  

Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Google  
 

9 live by DuoMark SETUP



Оформил: DeeCo
Автор: http://www.cracklab.narod.ru

взят на диске "Хакер №10"

Вот попалась мне эта прога, которая автоматически следит за изменениями в системных файлах и если эти изменения были зделаны несознательно и это, недай бог, привело к каким-то проблемам, то эта программка восстанавливает файлы так, что даже намёка на глюки не будет. Так вот, запустил я инсталяцию (setup.exe) и увидел душераздирающую надпись: "Извините, но триал этого сетапа истёк! сорри!". Ну ни хера себе, подумал я. Мало того, что сама прога триальная, так ещё и установка её триальная. "Я увидел это всё и стал подругам звонить..." Короче говоря, после недолгих раздумий я решил установить таки прогу (судя по виду установки - прога не крепкая). Первым делом я дизассемблировал прогу WDasm'om и начал искать сообщение об ошибке в String Reference, но ничего дельного там не нашел :( Затем по привычке открыл айс и ввёл такой вот бряк:

bpx GetLocalTime
и соответственно запустил прогу, послен нажатия ОК в первом окне, а как я уже говорил, после этого нажатия выскакивает окно о конце триальности, и выскочил в айсе, после чего нажал F11 (чтобы очутиться не в kernel32.dll, а в setup.exe) и вот что увидел:
call [kernel32!GetLocalTime]
lea ecx, [esp+00]
push ecx
call [kernel32!GetSytemTime]
mov dx, [esp+0A]
....
....
Это всё не то, и до процедуры реальной проверки ещё нужно скролить и скролить, поэтому нажимаем F10 до тех пор, пока не увидим это место:
add edx, ecx
cmp edx, -05 ; проверяем результаты проверок
jl 00401589  ; если они негативные - прыгаем
cmp edx, 5A  ; опять проверим
jge 00401589 ; опять прыгнем туда же :)
cmp edx, 50  ; ещё проверка
jl 00401517  ; ещё прыжок.
Я сначала хотел убрать эти проверки, после чего у меня выскакивало таки то окно, но при нажатии ОК, выскакивало другое, что триальная установка ещё действует, но мне смотреть на эти галимые окна не захотелось и я начал думать дальше. Потом я снова проделал шаги, описанные выше и обнаружил, что чуть ниже последнего листинга (около 3 строчек вниз есть четрые подряд call'a:
call 00405470 ;загрузка текста для первого message
...
...
call 00405670 ;вызов первого сообщения
...
...
call 00405470 ;загрузка текста для второго message
...
...
call 00405670 ;вызов второго сообщения
:0040152C mov bl,01
я подумал и придумал вот что: а если убрать все проверки, о которых я писал выше, и вместо них зделать прыжок (jmp) сразу за вызовы сообщений об окончании триальной установки и о его волшебном возобновлении :)
и правда, когда я заменил первую строку проверок (cmp edx, -05) на (jmp 0040152C), то после этих изменений никаких сообщений не осталось (кроме приветственного) и потом сразу же начиналась установка.

На таком простом примере я показал, как бороться с "триальными" Setup'aми (хотя я чесно говоря с таким родом защиты столкнулся впервые, чтобы триальную прогу да ещё и триальным сетапом :)

А для особо ленивых вот готовый крак:
----------вырезать тут--------
9live's SETUP CRACK by vallkor//PTDS(vallkor@chat.ru)

you can install it when you want!
setup.exe
000008EB: 83 EB
000008EC: FA 3F
000008ED: FB 90
----------вырезать тут--------
исследовал и наваял туториал:
vallkor //PTDS (vallkor@chat.ru)
{Комманда PTDS нуждается в новых членах! Если вы считаете, что способны на многое и хотите поделиться своими знаниями и взамен получить новые пишите мне}






Copyright © 2004-2016 "Delphi Sources". Delphi World FAQ




Группа ВКонтакте   Ссылка на Twitter   Группа на Facebook