Оригинальный DVD-ROM: eXeL@B DVD !
eXeL@B ВИДЕОКУРС !

ВИДЕОКУРС ВЗЛОМ
выпущен 12 ноября!


УЗНАТЬ БОЛЬШЕ >>
Домой | Статьи | RAR-cтатьи | FAQ | Форум | Скачать | Видеокурс
Новичку | Ссылки | Программирование | Интервью | Архив | Связь

Сломать программу? Легко! Пишем кейген.

Обсудить статью на форуме

Очень удобно, когда все крэкерские инструменты, книги и статьи в одном месте. Используйте сборник от EXELAB - вот тут.

Автор: specz <specz@mail.ru>

Ну вот вроде справились с 1 задачей, а именно регистрацией, теперь неплохо было бы сделать кейген к проге :) Тут для этого я буду использовать OllyDBG и Delphi. Начнем-с.
Сперва там стоит грозный UPX поэтому будьте осторожны :)), достаточно набрать upx -d и наше файло стало беззащитным :).В принципе мы уже знаем где происходит проверка на правильность кода, поэтому давай посмотрим немного выше:
 00489F3C |> 8B45 FC /MOV EAX,DWORD PTR SS:[EBP-4]
 00489F3F |. 0FB67438 FF |MOVZX ESI,BYTE PTR DS:[EAX+EDI-1] ; берём по одной букве из нашего имени
 00489F44 |. 8D55 F0 |LEA EDX,DWORD PTR SS:[EBP-10]
 00489F47 |. 8BC6 |MOV EAX,ESI ; тут что-то каму-то передаём, посмотрите в отладчике :)
 00489F49 |. E8 26FFFFFF |CALL disk.00489E74 ; что-то там вызываем :))
 00489F4E |. 8B55 F0 |MOV EDX,DWORD PTR SS:[EBP-10]
 00489F51 |. 8D45 F4 |LEA EAX,DWORD PTR SS:[EBP-C]
 00489F54 |. E8 03ADF7FF |CALL disk.00404C5C ; что-то там вызываем :))
 00489F59 |. 47 |INC EDI ; увеличиваем EDI на 1
 00489F5A |. 4B |DEC EBX
 00489F5B |.^75 DF JNZ SHORT disk.00489F3C ; looping (повторяем пока не закончатся знаки в нашем имени)

Вот это место где происходит вся генерация нашего серийника. Тут в частности надо знать что находится в EDI. А то, что находится в EDI я посмотрел в SoftICE. Там увидел вот что - CMW273333- Вот это и есть гвоздь программы :) Ну а дальше всё просто:
прога берёт наше NAME, затем смотрит из скоки символов она состоит, добавляет длину имени к CMW273333, ну а дальше после ’-’ идёт HEX код нашего имени. Сложно? :)) ОК вот пример:
Допустим мы ввели произвольное имя specz :)) HEX код этого имени (737065637A). specz <--- состоит из 5 символов поэтому CMW273333+5=CMW273338 математика :)) то какая. Ну и весь код=CMW273338-737065637A
Всё теперь переходим к кодингу:
Сбрось на форму 2 TEdit, расставь всё красиво, потом входи в Events Tedit1, и там дави 2 раза по OnChange. Вот и сам замысловатый код :))
 procedure TForm1.Edit1Change(Sender: TObject);
 var // присваиваем значения
 len, i, scet, t: integer;
 name, last: string;
 begin
 name:=Edit1.Text;
 len:=Length(name);
 if len<1 then //ограничиваем длину имени
 begin //ограничиваем длину имени
 Edit2.Text:='Имя не меньше 1 знака'; //ограничиваем длину имени
 exit;
 end;
 if len>25 then //ограничиваем длину имени
 begin //ограничиваем длину имени
 Edit2.Text:='Имя не больше 25 знаков'; //ограничиваем длину имени
 exit;
 end;
 scet:=33+len; // добавляем к 33 длину нашего имени
 Edit2.Text:='CMW2733'+inttostr(scet)+'-'; // вывод всего безобразия в Edit2
 for i:=1 to len do // тут начинается сама процедура
 begin
 t:=Ord(name[i]); // перевод имени в ASCII
 last:=InttoHex(t, 2); // перевод имени в HEX
 Edit2.Text:= Edit2.Text+(last); // вывод всего безобразия в Edit2
 end;
 end;
 
Вот и вся любовь. Если кому впадлу использовать функцию copy&paste тогда вот !работающий! кейген :). За статью не отвечаю, ибо ещё сам являюсь в этом деле newbie поэтому могут быть ашипки :))..
Будут вопросы мыльте, всегда рад принять пару тысяч писем со спамом :)).
Adioz...

Обсуждение статьи: Сломать программу? Легко! Пишем кейген. >>>


Комментарии к статье: Сломать программу? Легко! Пишем кейген.

Scar Shock Spade 01.07.2004 12:25:19
В общем хреновый у тебя киген получился. Все просто (но до гениальности далеко). Вот напиши киген для среднего крякмиса, тогда все будет ОК
---
А2К 03.07.2004 17:38:04
я тоже так умею :-)
---
specz 05.07.2004 00:00:19
спасибо, спасибо :)), да я вроде и не выёживался что афигенный кейген напишу, так что иногда лучше промолчать, чем спиздеть...
---
дфььук 07.07.2004 02:58:11
Клева, мне бы так
---
Han 02.04.2005 16:22:08
OllyDBG где взять ?

---

Материалы находятся на сайте https://exelab.ru



Оригинальный DVD-ROM: eXeL@B DVD !


Вы находитесь на EXELAB.rU
Проект ReactOS