ВУЗ:
Составители:
191
• "трассировщики", сначала запоминающие каждую инструкцию,
проходящую через процессор, а затем переводящие набор инструкций в
форму, удобную для статического исследования, автоматически
выделяя циклы, подпрограммы и т.п.;
• "следящие системы", запоминающие и анализирующие трассу уже не
инструкции, а других характеристик, например вызванных программой
прерывания.
8.2 Методы защиты программ от исследования
Для защиты программ от исследования необходимо применять методы
защиты от исследования файла с ее исполняемым кодом, хранящемся на
внешнем носителе, а также методы защиты исполняемого кода, загружаемого в
оперативную память для выполнения этой программы.
В первом случае защита может быть основана на шифровании секретной
части программы, а во втором - на блокировании доступа к исполняемому коду
программы в оперативной памяти со стороны отладчиков. Кроме того, перед
завершением работы защищаемой программы должен обнуляться весь ее код в
оперативной памяти. Это предотвратит
возможность несанкционированного
копирования из оперативной памяти дешифрованного исполняемого кода после
выполнения защищаемой программы.
Таким образом, защищаемая от исследования программа должна
включать следующие компоненты:
• инициализатор;
• зашифрованную секретную часть;
• деструктор (деициниализатор).
Инициализатор должен обеспечивать выполнение следующих функций:
• сохранение параметров операционной среды функционирования
(векторов прерываний, содержимого регистров процессора и т.д.);
• запрет всех внутренних и внешних прерываний, обработка которых не
может быть запротоколирована в защищаемой программе;
• "трассировщики", сначала запоминающие каждую инструкцию,
проходящую через процессор, а затем переводящие набор инструкций в
форму, удобную для статического исследования, автоматически
выделяя циклы, подпрограммы и т.п.;
• "следящие системы", запоминающие и анализирующие трассу уже не
инструкции, а других характеристик, например вызванных программой
прерывания.
8.2 Методы защиты программ от исследования
Для защиты программ от исследования необходимо применять методы
защиты от исследования файла с ее исполняемым кодом, хранящемся на
внешнем носителе, а также методы защиты исполняемого кода, загружаемого в
оперативную память для выполнения этой программы.
В первом случае защита может быть основана на шифровании секретной
части программы, а во втором - на блокировании доступа к исполняемому коду
программы в оперативной памяти со стороны отладчиков. Кроме того, перед
завершением работы защищаемой программы должен обнуляться весь ее код в
оперативной памяти. Это предотвратит возможность несанкционированного
копирования из оперативной памяти дешифрованного исполняемого кода после
выполнения защищаемой программы.
Таким образом, защищаемая от исследования программа должна
включать следующие компоненты:
• инициализатор;
• зашифрованную секретную часть;
• деструктор (деициниализатор).
Инициализатор должен обеспечивать выполнение следующих функций:
• сохранение параметров операционной среды функционирования
(векторов прерываний, содержимого регистров процессора и т.д.);
• запрет всех внутренних и внешних прерываний, обработка которых не
может быть запротоколирована в защищаемой программе;
191
Страницы
- « первая
- ‹ предыдущая
- …
- 189
- 190
- 191
- 192
- 193
- …
- следующая ›
- последняя »
