Безопасность операционных систем. Безбогов А.А - 101 стр.

UptoLike

методов защиты и нападения, а также за счет создания и использования новых методов. В целом это взаимодействие может
быть описано схемой на рис. 10.1.
Рис. 10.1. Схема противостояния технических методов и средств защиты
По принципу функционирования СЗ можно подразделить на:
1)
упаковщики/шифраторы;
2)
СЗ от несанкционированного копирования;
3) СЗ от несанкционированного доступа (НСД).
10.2. ДОСТОИНСТВА И НЕДОСТАТКИ ОСНОВНЫХ СИСТЕМ ЗАЩИТЫ
Рассмотрим достоинства и недостатки основных систем защиты ПО, исходя из принципов их функционирования.
10.2.1. УПАКОВЩИКИ/ШИФРАТОРЫ
Первоначально основной целью упаковщиков/шифраторов являлось уменьшение объема исполняемого модуля на диске
без ущерба для функциональности программы, но позднее на первый план вышла цель защиты ПО от анализа его алгорит-
мов и несанкционированной модификации. Для достижения этого используются алгоритмы компрессии данных; приемы,
связанные с использованием недокументированных особенностей операционных систем и процессоров; шифрование дан-
ных, алгоритмы мутации, запутывание логики программы, приведение ОС в нестабильное состояние на время работы ПО и
др.
Положительные стороны:
1.
В рамках периода безопасного использования данные системы обеспечивают высокий уровень защиты ПО от анали-
за его алгоритмов.
2.
Методы упаковки/шифрации намного увеличивают стойкость СЗ других типов.
Отрицательные стороны:
1.
Практически все применяемые методы замедляют выполнение кода ПО.
2.
Шифрование/упаковка кода ПО вызывает затруднения при обновлении (update) и исправлении ошибок (bugfix,
servicepack).
3.
Возможно повышение аппаратно-программных требований ПО.
Разработчики СЗПО
Злоумышленники
Технические методы и средства
Алгоритмы запутывания
Алгоритмы мутации
Алгоритмы компрессии
данных
Алгоритмы шифрования
данных
Вычисление сложных
математических выраже-
ний в процессе отработ-
ки механизма защиты
Методы затруднения от-
ладки
Эмуляция процессов и
операционных систем
Нестандартные методы
работы с аппаратным и
программным обеспече-
нием
Использование специаль-
ного аппаратного обес-
печения
Комбинирование мето-
дов
Создание новых методов
Системный мониторинг
Логический анализ
Дизассемблирование
Декомпиляция
Анализ алгоритмов
Перехват и анализ инфор-
мационного обмена
Использование отладочных
средств
Распаковка/дешифрация
Криптоанализ
Принудительное сохране-
ние раскрытого кода ПО
Модификация кода ПО
Эмуляция аппаратного
обеспечения
Использование специаль-
ного аппаратного обеспе-
чения
Комбинирование методов
Создание новых методов
Динамическое равновесие