- •Конспект лекций
- •Специальные материалы, способы защиты и кодирования информации
- •090900 «Информационная безопасность»
- •Содержание
- •Тема 9. Комплекс средств защиты информации в распределенных вычислительных сетях 114
- •Тема 10 Защита электронных документов 123
- •Тема 1. Основные понятия в области информационной безопасности
- •Тема 11 Методы и средства обеспечения целостности и достоверности используемого программного кода 195
- •Тема 12.Методы защиты программного обеспечения от внедрения на этапе его эксплуатации и сопровождения программных закладок 227
- •Тема 13 Основные подходы к защите программ от несанкционированного копирования 232
- •Тема 2. Направления, методы и средства обеспечения информационной безопасности
- •2.1. Основные направления обеспечения информационной безопасности
- •2.2. Классификация методов и средств защиты информации
- •2.1. Основные направления обеспечения информационной безопасности
- •2.2. Классификация методов и средств защиты информации
- •Тема 3. Основы законодательства России по вопросам защиты информации
- •Тема 4. Разработка политики безопасности
- •Тема 5. Проведение анализа риска
- •5.1. Основные этапы анализа риска
- •5.2. Предварительный этап анализа риска
- •5.3. Идентификация активов
- •Основные активы информационной системы предприятия
- •5.4. Анализ угроз
- •5.5. Оценка рисков
- •Логарифмическая частота угрозы
- •5.6. Выбор и проверка защитных мер
- •Тема 6 планирование обеспечения информационной безопасности
- •6.1. План защиты
- •6.2. План обеспечения непрерывной работы и восстановления функционирования автоматизированной системы
- •6.3. Реализация планов
- •6.1. План защиты
- •6.2. План обеспечения непрерывной работы и восстановления функционирования автоматизированной системы
- •Восстановительные работы.
- •6.2.1. Меры реагирования на нарушения
- •6.2.2. Восстановительные работы
- •6.3. Реализация планов
- •Тема 7. Механизмы обеспечения информационной безопасности
- •Основные механизмы и средства интегрированной системы информационной безопасности предприятия
- •7.1. Идентификация и аутентификация
- •7.2. Идентификация и аутентификация
- •Примеры методов биометрии
- •7.3. Разграничение доступа
- •Фрагмент матрицы установления полномочий
- •7.4. Регистрация и аудит
- •7.5. Криптография
- •7.7. Экранирование
- •Типы межсетевых экранов и уровни модели iso osi
- •Экран как средство разграничения доступа
- •Тема 8. Антивирусные средства
- •8.1. Общая характеристика и классификация компьютерных вирусов
- •8.2. Общая характеристика средств нейтрализации компьютерных вирусов
- •8.3. Классификация методов защиты откомпьютерных вирусов
- •8.4. Уровни и методы антивирусной защиты
- •8.5. Обзор современных антивирусных средств
- •8.5.1. Комплект антивирусных средств dsav
- •8.5.2. Интегрированная антивирусная система avp
- •Тема 9. Комплекс средств защиты информации в распределенных вычислительных сетях
- •Тема 10 Защита электронных документов
- •10.1. Основы организации защиты электронных документов
- •10.1.Основные мероприятия по обеспечению защиты электронных документов
- •10.2. Технология применения цифровой подписи.
- •10.2.1 Общая организация цифровой подписи
- •10.2.2. Архитектура алгоритмов цп
- •10.2.3 Постановка подписи
- •10.2.4. Проверка подписи
- •10.2.5. Критерии (показатели эффективности)
- •10.2.6. Нападения
- •10.3. Особенности применения цифровой подписи
- •10.4. Защита электронных платежей
- •10.5. Анализ нарушений в системе электронных расчетов и платежей
- •10.6. Основы криптографической защиты электронных документов
- •10. 6.1. Основные требования к криптосистемам
- •10.6.2. Основные требования к криптосистемам
- •10.6.3. Реализация криптографических методов
- •Тема 11 Методы и средства обеспечения целостности и достоверности используемого программного кода
- •11.1. Методы защиты программ от несанкционированных изменений
- •11.2. Краткое описание криптографических средств контроля целостности и достоверности программ
- •11.3. Краткое описание основных криптографических методов защиты данных
- •11.1. Методы защиты программ от несанкционированных изменений
- •11.2. Краткое описание криптографических средств контроля целостности и достоверности программ
- •11.3. Краткое описание основных криптографических методов защиты данных
- •Открытый ключевой обмен Диффи-Хеллмана и криптосистемы с открытым ключом
- •Электронная цифровая подпись
- •Криптографические протоколы
- •Тема 12.Методы защиты программного обеспечения от внедрения на этапе его эксплуатации и сопровождения программных закладок
- •12.1.Классификация средств исследования программ
- •12.2. Методы защиты программ от исследования
- •12.3.Анализ программ на этапе их эксплуатации
- •12.1. Классификация средств исследования программ
- •12.2. Методы защиты программ от исследования
- •12.3. Анализ программ на этапе их эксплуатации
- •Тема 13 Основные подходы к защите программ от несанкционированного копирования
- •13.1. Основные функции средств защиты от копирования
- •13.3. Методы противодействия динамическим способам снятия защиты программ от копирования
- •13.1. Основные функции средств защиты от копирования
- •13.2. Основные методы защиты программ откопирования
- •Метод привязки к идентификатору
- •13.3. Методы противодействия динамическим способам снятия защиты программ от копирования
- •Методы, основанные на работа с переходами и стеком
- •Манипуляции с кодом программы
- •Библиографический список Основная литература
- •Дополнительная литература
12.3. Анализ программ на этапе их эксплуатации
В данном разделе будут рассмотрены методы поиска и нейтрализации РПС с помощью дизассемблеров и отладчиков на этапе эксплуатации программ. То есть задача защиты в отличии задач защиты в предыдущих разделах здесь решается «с точностью до наоборот».
Основная схема анализа исполняемого кода, в данном случае, может выглядеть следующим образом [45] (см. также раздел 2.2.):
выделение чистого кода, то есть удаление кода, отвечающего за защиту этой программы от несанкционированного запуска, копирования и т.п. и преобразования остального кода в стандартный правильно интерпретируемый дизассемблером;
лексический анализ;
дизассемблирование;
семантический анализ;
перевод в форму, удобную для следующего этапа (в том числе и перевод на язык высокого уровня);
синтаксический анализ.
После снятия защиты осуществляется поиск сигнатур (лексем) РПС. Примеры сигнатур РПС приведены в работе [45]. Окончание этапа дизассемблирования предшествует синтаксическому анализу, то есть процессу отождествлению лексем, найденных во входной цепочке, одной из языковых конструкций, задаваемых грамматикой языка, то есть синтаксический анализ исполняемого кода программ состоит в отождествлении сигнатур, найденных на этапе лексического анализа, одному из видов РПС.
При синтаксическом анализе могут встретиться следующие трудности:
могут быть не распознаны некоторые лексемы. Это следует из того, что макроассемблерные конструкции могут быть представлены бесконечным числом регулярных ассемблерных выражений;
порядок следования лексем может быть известен с некоторой вероятностью или вообще не известен;
грамматика языка может пополняться, так как могут возникать новые типы РПС или механизмы их работы.
Таким образом, окончательное заключение об отсутствии или наличии РПС можно дать только на этапе семантического анализа, а задачу этого этапа можно конкретизировать как свертку терминальных символов в нетерминалы как можно более высокого уровня там, где входная цепочка задана строго.
Так как семантический анализ удобнее вести на языке высокого уровня далее проводится этап перевода ассемблерного текста в текст на языке более высокого уровня, например, на специализированном языке макроассемблера, который нацелен на выделение макроконструкций, используемых в РПС.
На этапе семантического анализа дается окончательный ответ на вопрос о том, содержит ли входной исполняемый код РПС, и если да, то какого типа. При этом используется вся информация, полученная на всех предыдущих этапах. Кроме того, необходимо учитывать, что эта информация может считаться правильной лишь с некоторой вероятностью, причем не исключены вообще ложные факты, или умозаключения исследователей. В целом, задача семантического анализа является сложной и ресурсоемкой и скорее не может быть полностью автоматизирована.
Тема 13 Основные подходы к защите программ от несанкционированного копирования
13.1. Основные функции средств защиты от копирования
13.2. Основные методы защиты от копирования
13.3. Методы противодействия динамическим способам снятия защиты программ от копирования
13.1. Основные функции средств защиты от копирования
При защите программ от несанкционированного копирования применяются методы, которые позволяют привносить в защищаемую программу функции привязки процесса выполнения кода программы только на тех ЭВМ, на которые они были инсталлированы.
Инсталлированная программа для защиты от копирования при каждом запуске должна выполнять следующие действия:
анализ аппаратно-программной среды компьютера, на котором она запущена, формирование на основе этого анализа текущих характеристик своей среды выполнения;
проверка подлинности среды выполнения путем сравнения ее текущих характеристик с эталонными, хранящимися на винчестере;
блокирование дальнейшей работы программы при несовпадении текущих характеристик с эталонными.
Этап проверки подлинности среды является одним из самых уязвимых с точки зрения защиты. Можно детально не разбираться с логикой защиты, а немного «подправить» результат сравнения, и защита будет снята.
При выполнении процесса проверки подлинности среды возможны три варианта: с использованием множества операторов сравнения того, что есть, с тем, что должно быть, с использованием механизма генерации исполняемых команд в зависимости от результатов работы защитного механизма и с использованием арифметических операций. При использовании механизма генерации исполняемых команд в первом байте хранится исходная ключевая контрольная сумма BIOS, во второй байт записывается подсчитанная контрольная сумма в процессе выполнения задачи. Затем осуществляется вычитание из значения первого байта значение второго байта, а полученный результат добавляется к каждой ячейки оперативной памяти в области операционной системы. Понятно, что если суммы не совпадут, то операционная система функционировать не будет. При использовании арифметических операций осуществляется преобразование над данными арифметического характера в зависимости от результатов работы защитного механизма.
Для снятия защиты от копирования применяют два основных метода: статический и динамический [47].
Статические методы предусматривают анализ текстов защищенных программ в естественном или преобразованном виде. Динамические методы предусматривают слежение за выполнением программы с помощью специальных средств снятия защиты от копирования.
