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