|
|
|
Защита от копирования и методы ее взлома
XML и веб-сервисы
Безопасный офис
Защита от копирования и методы ее взлома
История PHP
Корпоративная информационная система
Новое в PHP5
Основные типы данных PHP
Основы языка программирования РНР 5
Программистские байки
Торговая информационная система
|
Автоматические распаковщики
Взлом с использованием отладчиков
Возражения против защиты
Защита методом ключевой дискеты или диска
Защита на основе параметров ПК
Защита от копирования, доводы за
Защита с использованием пристыковочного механизма
Защита с использованием функций API
Ключи на базе ASIC-микросхем
Ключи на базе EEPROM-микросхем
Ключи на базе микропроцессора
Программная защита при использовании электронных ключей
Простая защита паролем
Снятие дампа памяти
Так нужна ли защита
Электронные ключи в стандарте PCMCIA
Электронные ключи
Эмуляция ключа
Прием сохранения дампа памяти, описанный выше, настолько универсален для взлома конвертов, что были созданы специальные инструменты для автоматического снятия защиты с использованием данного приема. Условно такие инструменты называют автоматическими распаковщиками. Автоматические распаковщики используют следующие основные режимы работы: 1.Распаковка трассировкой. В данном режиме защищенная программа запускается с включенной трассировкой. После каждой инструкции анализируется значение сегментного регистра кода (CS) и в случае его изменения делается предположение о том, что защитные механизмы отработали и управление передалось прикладной программе. Данный режим малоэффективен против защит с мощными антитрассировочными механизмами. 2. Распаковка с поддержкой таблиц компиляторов. Данный режим основан на том, что каждый компилятор при генерации ЕХЕ - файла помещает в его начало абсолютно одинаковый для всех программ startup-код. Например, любая программа, скомпилированная Borland С, начинается с инструкций mov ah,30h; int 21h. Для каждого компилятора можно выделить последовательность инструкций, однозначно его идентифицирующую. Как правило, для определения таких последовательностей используется перехват программных прерываний, вызываемых из startup-кода. В качестве примеров подобных распаковщиков можно привести Intruder, реализующий только второй режим, и AutoHack, реализующий оба режима.
|
|
|
|