Аппаратно-программные средства и методы защиты информации. Варлатая С.К - 191 стр.

UptoLike

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


                  8.2 Методы защиты программ от исследования
        Для защиты программ от исследования необходимо применять методы
защиты от исследования файла с ее исполняемым кодом, хранящемся на
внешнем носителе, а также методы защиты исполняемого кода, загружаемого в
оперативную память для выполнения этой программы.
        В первом случае защита может быть основана на шифровании секретной
части программы, а во втором - на блокировании доступа к исполняемому коду
программы в оперативной памяти со стороны отладчиков. Кроме того, перед
завершением работы защищаемой программы должен обнуляться весь ее код в
оперативной памяти. Это предотвратит возможность несанкционированного
копирования из оперативной памяти дешифрованного исполняемого кода после
выполнения защищаемой программы.
        Таким образом, защищаемая от исследования программа должна
включать следующие компоненты:
        •    инициализатор;
        •    зашифрованную секретную часть;
        •    деструктор (деициниализатор).
        Инициализатор должен обеспечивать выполнение следующих функций:
        •    сохранение параметров операционной среды функционирования
             (векторов прерываний, содержимого регистров процессора и т.д.);
        •    запрет всех внутренних и внешних прерываний, обработка которых не
             может быть запротоколирована в защищаемой программе;

                                         191