Жизнь после компиляции Bagie (bagie@bk.ru) Спецвыпуск: Хакер, номер #057, стр. 057-074-5 Из-за небольшой тонкости в использовании программы придется указывать адреса процедур, которые нужно зашифровать. Эти адреса можно посмотреть отправив программу в дизассемблер. Процедур для зашифровки может быть несколько, и рекомендуется защищать в первую очередь важные участки кода: точка входа в программу (здесь можно усложнить вероятное определение OEP, а также скрыть местоположение таблицы импортов), куски кода, где происходит, например, проверка серийного номера, код, содержащий ключевые строки и т.д. Так как криптор работает по совершенно другому принципу, после этого было бы неплохо упаковать файлы, обработанные VMProtect, каким-либо упаковщиком, например можно взять UPX, ASPack, Packman, PCShrinker или любой другой, с которым программа будет работать нормально. Конечно, можно попробовать повесить поверх какой-нибудь протектор, но в этом случае, скорее всего, криптор необходимо будет подбирать для каждого конкретного случая. ORiEN Сайт: www.zalexf.narod.ru Еще одна альтернатива для защиты исполняемых файлов от взлома и ограничения допуска. По умолчанию защита работает всего лишь как обычный пакер, но у программы существует множество опций, благодаря которым можно настраивать уровень и тип защиты, а также и некоторые другие дополнительные и очень полезные функции. В качестве основных возможностей ORiEN предлагает следующее: - 4096-битное шифрование (стандарт DES); - упаковка защищаемых данных (используется aPlib); - полиморфное тело защиты (движок Polystack); - защита от модификации кода; - защита от отладки; - защита по паролю (до четырех паролей); - защита ключевым файлом; - использование различных привязок (HASP, BIOS и т.д.); - возможность использовать демонстрационные ограничения; - интеграция с защищаемой программой; - полная совместимость со всей линейкой операционных систем Windows и поддержка форматов EXE, DLL, SCR, OCX и т.д., а также компиляторов C/C++, Delphi, VB, Visual FoxPro, Sybase PowerBuilder и т.д. Важно, что защита может интегрироваться с самой программой. Суть данного метода заключается в том, что протектор при загрузке создает мьютекс – специальный объект, используемый для синхронизации между процессами. В защищаемой программе мы должны проверить существование этого объекта. Если в этом случае распаковать программу, то мьютекс, естественно, не будет создан, что и послужит поводом для дальнейших действий. Хотя данный метод не нов, а также присутствует во многих других протекторах, им ни в коем случае не следует пренебрегать – поможет в борьбе хотя бы с не очень опытными взломщиками. Также необходимо помнить, что если не используется ни защита ключом, паролем, привязкой или ограничением на число запусков, то данный протектор работает как самый обычный пакер и весь смысл защиты исчезает. |