Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.04.18;
Скачать: CL | DM;

Вниз

Кодирование .exe   Найти похожие ветки 

 
Dmitry Klykoff   (2002-04-05 10:21) [0]

Допустим, я зашифровал часть своего .exe-шника и теперь хочу его расшифровать. Делаю так:

procedure ShowFig;
begin
ShowMessage("some text");
end;

procedure Dummy;
begin
Exit;
end;

procedure Proc;
var
i, len : integer;
mem : PByte;
mem2 : PByte;
begin
len:=Integer(@Dummy)-Integer(@ShowFig);
mem:=@ShowFig;
for i:=0 to len-1 do
begin
mem2:=mem;
Inc(mem2, i);
mem2^:=mem2^ xor 85; // здесь получаю exception
end;
end;

И получаю exception при первом же обращении к памяти. Как из дельфи залезть в код своей программы, а?


 
Digitman ©   (2002-04-05 12:18) [1]

Разумеется, ты получишь в данном случае exception, потому как сегмент кода не допускает непосредственного обращения по записи. Только - чтение и исполнение.

Но, прежде, чем вдаваться в детали, хотелось бы уточнить : ты представляешь себе принципы защиты и механизм организации памяти в защищенном режиме работы процессора ?


 
Dmitry Klykoff   (2002-04-05 14:58) [2]

Но тогда как работют полиморфные вирусы? Они же меняют свой код.


 
Digitman ©   (2002-04-05 15:02) [3]

Меняют. Но не так просто, как ты думаешь. Поэтому и спрашиваю, что тебе известно из теории.


 
Dmitry Klykoff   (2002-04-05 17:38) [4]

Представляю не очень хорошо, но если надо, то разберусь. Объясняй :))


 
Юрий Зотов ©   (2002-04-05 21:09) [5]

> Объясняй

Мило...

А как объяснять-то? Эта тема на несколько десятков (или даже сотен) страниц потянет. Для online-форума в самый раз будет!



Страницы: 1 вся ветка

Текущий архив: 2002.04.18;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.009 c
1-57777
Erik
2002-04-05 22:20
2002.04.18
Передача буфера.


1-57741
ymin
2002-04-05 12:15
2002.04.18
Кстати а можно ли записать данные допустим в таблице EXCEL


1-57766
koks
2002-04-05 15:21
2002.04.18
StringGrid


3-57599
Vlad_Leon
2002-03-27 09:13
2002.04.18
Как узнать пароль?


1-57810
snoup
2002-04-06 21:37
2002.04.18
Как сделать, что бы при нажатии на кнопку на диске С сохранялся b