"Alexey Popov писал:"
> > А это и не нужно. Ты сначала дрого и упорно будешь искать точки входа и 
> > туда и туда.
> Чего их искать. dll в памяти будет одним куском. Когда IP туда попадёт, то
> вот и оно.

Оно то оно. Но в случае влинковки DLL в
приложение, оно будет достаточно
виртуализировано, что бы двумя
проходами попасть в нужный кусок кода.
Да и сам код будет несколько "другим"...

> > Тебе рассказать как простыми компандами типа mov, sub, xor размазывается 
> > код?
>
> А вот и расскажи, как скомпилированный и оптимизованный код "размазать" без
> декомпиляции автоматически, чтобы условные и безусловные переходы не
> поплыли и т.д..
   Условный и безусловные переходы тоже
виртуализируются :-)
   И вызовы функций тоже :-)
   И много еще чего :-)

   Есть желание - скомпили какой-нить
"hello word" и защити триальным ASP или
фемидой. Начать рекомендую с ASP - у него
немного проще загрузчик.

> Есть конечно небольшая возможность заменять
> инструкции эквивалентными совпадающими по длине (или меньше), но в таком
> случает будет дофига сигнатур.

   Про injection code почитать можно много
где...

>   Короче, код не под ВМ элементарно уязвим.
   Такого кода очень мало...   

--
WBR, Jerry

Ответить