Jerry wrote:

Чего их искать. dll в памяти будет одним куском. Когда IP туда попадёт, то
вот и оно.

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

Виртуализирован только небольшой процент
всего кода и возможно точки входа в длл.
Идея атаки состоит в использовании знании
о внутренних функциях dll, не подверженных
по объективным причинам защитой виртуализации.

   Условный и безусловные переходы тоже
виртуализируются :-)
   И вызовы функций тоже :-)
   И много еще чего :-)

Речь была не про виртуализацию, а про
замусоривание невиртуализоваронного кода.
Причём без потерь в производительности.
Такое конечно возможно в принципе, но для
этого минимум нужна перелинковка всего приложения.
Ну и в крайнем случае степень полиморфизма
замусоривания крайне низкая.

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

Это совсем другое. У нас на столе dll почти 2мега
кода и многмегабайтное приложение на дельфи набитое
очевидными сигнатурами в коде и данных.


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

Если надо найти тело жирной функции, то это
сильно не помешает.

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

Такого кода очень мало...

Такого кода 95%, как признавался оппонент.

--
--- Home Page http://ok.novgorod.net/ap ---


Ответить