Издательский дом ООО "Гейм Лэнд"СПЕЦВЫПУСК ЖУРНАЛА ХАКЕР #57, АВГУСТ 2005 г.

Навесная защита

Bit-hack (bit-hack@mail.ru)

Спецвыпуск: Хакер, номер #057, стр. 057-088-4


7.1. Одно название защиты будит в разуме реверс-инженера чувство безнадежности :).

7.2. Применяется хорошо отлаженный драйвер, который не дает подступиться к защите.

7.3. Применяется виртуальная машина, до которой практически не возможно добраться при попытке отладки.

7.4. Защита кода программы с применением очень стойких криптоалгоритмов.

Все преимущества этой защиты трудно перечислить, так как они мало кому известны :).

Самой перспективной (по моему мнению) защитой является AsProtect. Так как Алексей с каждым новым билдом добавляет что-то новое и очень неприятное, защита очень сильно "поднялась" со времен AsProtect 1.23. Рекомендую ее или Armadillo (не со всеми опциями, желательно без Copy Mem II, так как из-за нее очень сильно падает производительность программы, а толку с нее мало) всем, кто действительно хочет защитить свой программный продукт.

Защита на практике

О! Это целое искусство. Существует множество аспектов, от которых зависит качество защиты приложения. Для каждого протектора они индивидуальны. Разберем их с несколькими из описанных протекторов.

1. AsProtect

В главном окне AsProtect советую установить галочки: Resources Protection, Preserve Extra Data, Anti-Debugger Protection, CheckSum Protection, Protect Original EntryPoint(!), Emulate standard system functions(!), Advanced Import protection(!), Best Compression, Create backup copy (BAK-file). После этого указать путь к map-файлу. С этими опциями AsProtect максимально защитит программу и создаст резервную копию файла (она нужна – мало ли что случится). В следующих закладках выбирай сам: они не влияют на защиту приложения серьезно, так как отвечают за регистрационные ключи и trial. Я не советую использовать некоторые api-функции, предоставляемые AsProtect'ом: GetRegistrationInformation, так как после снятия AsProtect'а эта функция "эмулируется", то есть пишется код, который всегда возвращает, что программа зарегистрирована. Соответственно, твоя защита быстро нейтрализуется.

2. Armadillo

С такими опциями, как показано на рисунке, защита будет на максимально возможном уровне. Но может случиться упадок производительности, если они покажутся слишком большими, и тогда передвинь шарик на одну позицию вниз. Служебные функции, предоставляемые защитой, использовать не советую (кроме функций проверки ключей). И вот почему. Однажды судьба вынудила меня взяться за взламывание программы, на которой "висела" Armadillo и в которой применялись функции проверки регистрации. Я решил сделать по-хитрому: написал dll-библиотеку, содержащую необходимые функции, которые возвращали мой ник, после чего программа стала зарегистрированной… Халява всегда такая ;-).

Скрэмблеры

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

Назад на стр. 057-088-3  Содержание  Вперед на стр. 057-088-5