"Alexey Popov писал:" > > А это и не нужно. Ты сначала дрого и упорно будешь искать точки входа и > > туда и туда. > Чего их искать. dll в памяти будет одним куском. Когда IP туда попадёт, то > вот и оно.
Оно то оно. Но в случае влинковки DLL в приложение, оно будет достаточно виртуализировано, что бы двумя проходами попасть в нужный кусок кода. Да и сам код будет несколько "другим"... > > Тебе рассказать как простыми компандами типа mov, sub, xor размазывается > > код? > > А вот и расскажи, как скомпилированный и оптимизованный код "размазать" без > декомпиляции автоматически, чтобы условные и безусловные переходы не > поплыли и т.д.. Условный и безусловные переходы тоже виртуализируются :-) И вызовы функций тоже :-) И много еще чего :-) Есть желание - скомпили какой-нить "hello word" и защити триальным ASP или фемидой. Начать рекомендую с ASP - у него немного проще загрузчик. > Есть конечно небольшая возможность заменять > инструкции эквивалентными совпадающими по длине (или меньше), но в таком > случает будет дофига сигнатур. Про injection code почитать можно много где... > Короче, код не под ВМ элементарно уязвим. Такого кода очень мало... -- WBR, Jerry

