Главная страница
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.48 MB
Время: 0.012 c
3-57588
stepashka
2002-03-26 19:05
2002.04.18
как узнать зарегистрированные на сервере базы данных


14-57889
heruvim4ik
2002-03-09 17:10
2002.04.18
Посоветуйте самоучитель (Delphi 5)


3-57635
yuricom
2002-03-28 08:06
2002.04.18
Справочники, как определить свободна ли запись?


4-57916
AndreySG
2002-02-15 09:12
2002.04.18
WinApi


1-57703
B_A_V
2002-04-08 10:29
2002.04.18
select c выборкой по последней дате, которая < введенной даты