Защита для тех, кто делает софт


(383) 375-01-18
info@logosnsk.ru
Рекомендуем: Логос-Инвест.
Форекс, акции
 

Приемы защиты

Есть два способа защиты с использованием электронных ключей — автоматическая (или навесная) защита и защита при помощи функций API. В первом случае защищается исполняемый программный модуль, во втором — функции защиты встраиваются в исходный код программы.

Программно-аппаратная защита предоставляет достаточно большую свободу действий. Даже при автоматической защите можно выбирать среди имеющихся опций и, соответственно, определять свойства защищенной программы. А при использовании функций API можно реализовать любую, даже самую изощренную, модель защиты. Таким образом, единой и детально расписанной схемы построения защиты не существует. Однако есть много способов придать защите дополнительную стойкость (ниже приводятся лишь некоторые из них).

Комбинирование автоматической и API защиты

Как известно, каждый из этих видов защиты имеет свои узкие места. Но вместе они прекрасно дополняют друг друга и составляют труднопреодолимую преграду даже для опытного взломщика. При этом автоматическая защита играет роль своеобразной скорлупы, внешнего рубежа, а защита API является ядром.

Поэтому рекомендуется сначала встроить вызовы API в исходный код программы, а затем обработать исполняемый файл с помощью утилиты автоматической защиты.

API защита

При API-защите рекомендуется использовать несколько функций. Их вызовы необходимо распределить по коду приложения и перемешать переменные функций с переменными приложения. Таким образом, защита API оказывается глубоко внедренной в программу.

Обязательным является использование алгоритмов преобразования данных. Кодирование информации делает бессмысленным удаление вызовов функций API, ведь при этом данные не будут декодированы.

Эффективный прием усложнения логики защиты — откладывание реакции программы на коды возврата функций API. В этом случае программа принимает решение о дальнейшей работе спустя какое-то время после получения кодов возврата. Что заставляет взломщика прослеживать сложные причинно-следственные связи и исследовать в отладчике слишком большие участки кода.

Автоматическая защита

При автоматической защите необходимо задействовать опции защиты от отладочных и дизассемблирующих средств, опции кодирования и проверки ключей по времени. Полезно также использовать защиту от вирусов. При этом проверяется CRC участков кода, а значит файл предохраняется и от модификации.

Обновление системы защиты

После внедрения системы защиты важно не забывать о своевременном обновлении ПО для работы с ключами. Каждый новый релиз — это устраненные ошибки, закрытые «дыры» и новые возможности защиты. Также необходимо постоянно отслеживать ситуацию на рынке систем защиты и, в случае необходимости, своевременно менять систему защиты на более прогрессивную и надежную.


Ссылки от спонсоров: