
- •Аппаратно-программные средства защиты информации
- •Системы идентификации и аутентификации пользователей
- •Системы шифрования дисковых данных
- •Системы шифрования данных, передаваемых по сетям
- •Системы аутентификации электронных данных
- •Средства управления криптографическими ключами
- •Лекция 5 Классы безопасности
- •Требования к политике безопасности
- •Требования к подотчетности
- •3. Лекция 6 Требования к гарантированности
- •Требования к документации
- •4.Лекция 7 Криптографические средства защиты информации
- •5.Простые криптосистемы
- •Основные требования к криптографическому закрытию информации в ас
- •Классификация основных методов криптографического закрытия информации
- •Шифрование методом замены (подстановки)
- •Шифрование методом перестановки
- •Шифрование методом гаммирования
- •Шифрование с помощью аналитических преобразований
- •Комбинированные методы шифрования
- •Организационные проблемы криптозащиты
- •6.Лекция 8
- •7.Стандарт шифрования данных Data Encryption Standard (des) Описание алгоритма des
- •Режимы работы алгоритма des
- •8.Алгоритм шифрования данных idea
- •9.Отечественный стандарт шифрования гост 28147-89
- •Режим простой замены
- •Режим гаммирования
- •Режим гаммирования с обратной связью
- •Выработки имитовставки
- •Лекция 10 Электронная цифровая подпись
- •11.10.1. Проблема аутентификации данных и эцп
- •12.Однонаправленные хэш-функции
- •Основы построения хэш-функций
- •Однонаправленные хэш-функции на основе симметричных блочных алгоритмов
- •Алгоритм md5
- •Алгоритм безопасного хэширования sна
- •Отечественный стандарт хэш-функции
- •Алгоритм цифровой подписи rsа
- •Алгоритм цифровой подписи Эль Гамаля (egsa)
- •Алгоритм цифровой подписи dsа
- •Отечественный стандарт цифровой подписи
- •12. Защита от копирования
- •13.Привязка к дискете
- •Перестановка в нумерации секторов
- •Введение одинаковых номеров секторов на дорожке
- •Введение межсекторных связей
- •Изменение длины секторов
- •Изменение межсекторных промежутков
- •Использование дополнительной дорожки
- •Ведение логических дефектов в заданный сектор
- •Изменение параметров дисковода
- •Технология «ослабленных» битов
- •Физическая маркировка дискеты
- •14.Применение физического защитного устройства
- •15.«Привязка» к компьютеру
- •Физические дефекты винчестера
- •Дата создания bios и тип компьютера
- •Конфигурация системы и типы составляющих ее устройств
- •Получение инженерной информации жесткого диска
- •16.Опрос справочников
- •17.Введение ограничений на использование программного обеспечения
- •18.Методы защиты информации на cd
- •Второй метод защиты информации на cd
- •Третий метод защиты информации на cd
- •19.Краткий справочник по методам взлома и способам защиты от них Побитовое копирование
- •Эмулирование
- •20.Взлом программного модуля
- •21.Отладчики
- •Противодействие отладчикам
- •Дизассемблеры и дамперы
- •22.Шифрование программного кода
- •Дополнительные способы противодействия
- •Лекция 15-16 Защиты от несанкционированного доступа
- •23.Идентификация и аутентификация пользователя
- •Протокол идентификации и аутентификации для первой схемы
- •Протокол идентификации и аутентификации для второй схемы
- •24.Взаимная проверка подлинности пользователей
- •Механизм запроса-ответа.
- •Механизм отметки времени
- •Механизм – «рукопожатие»
- •Непрерывная проверка подлинности
- •25.Протоколы идентификации с нулевой передачей знаний
- •Упрощенная схема идентификации с нулевой передачей знаний
- •Параллельная схема идентификации с нулевой передачей знаний
Дизассемблеры и дамперы
Про дизассемблер сказано было выше, а вот про дампер можно добавить то, что это практически тот же дизассемблер, только транслирует он не файл, находящийся на диске в Ассемблерный код, а содержимое оперативной памяти на тот момент, когда приложение начало нормально исполняться (то есть, пройдены все защиты).
Это один из коварных средств взлома, при котором хакеру не надо бороться с механизмами, противодействующими отладке, он лишь ждет, когда приложение закончит все проверки на легальность запуска, проверяя метки на диске, и начинает нормальную работу. В этот момент дампер и снимает «чистенький» код без примесей. К всеобщей радости не все защиты могут просто так себя раскрыть! И об этом ниже:
22.Шифрование программного кода
Шифрование программного кода самый простой и эффективный способ противодействия. Он подразумевает, что определенная часть кода никогда не появляется в свободном виде.
Код дешифруется только перед передачей ему управления. То есть вся программа или ее часть находится в зашифрованном виде, а расшифровывается только перед тем как исполниться.
Соответственно, чтобы проанализировать ее код надо воспользоваться отладчиком, а его работу можно очень и очень осложнить (см. выше)!
Шифрование и дешифрование (динамическое изменение кода). Более продвинутый способ шифрования, который не просто дешифрует часть кода при исполнении, но и шифрует его обратно, как только он был исполнен. При такой защите хакеру придется проводить все время с отладчиком, и взлом защиты затянется на очень и очень долгое время.
Использование виртуальных машин. Это еще одна модернизация шифрования. Способ заключается в том, чтобы не просто шифровать и дешифровать целые фрагменты кода целиком, а делать это покомандно, подобно тому, как действет отладчик или виртуальная машина: взять код, преобразовать в машинный и передать на исполнение, и так пока весь модуль не будет исполнен.
Этот способ гораздо эффективнее предыдущих, так как функции приложения вообще никогда не бывают открытыми для хакера. Естественно, что его трудно реализовать, но реализовав, можно оградить себя от посягательств любых хакеров. Но в этом способе кроется недостаток – производительность, ведь на подобное транслирование требуется много времени, и, соответственно, способ хорош для защиты только для критических участков кода.
Дополнительные способы противодействия
Здесь уже идет чистое описание всяких возможностей по противодействию. Даются общие вводные, ведь защита может быть эффективной только тогда, когда каждый ее модуль написан на совесть с использованием различных ухищрений. То есть все рецепты, о которых говорилось выше, должны в той или иной форме присутствовать в любой системе.
Использовать для хранения данных защиты системные ресурсы Windows: дополнительную память, выделяемую для параметров окон и локальные хранилища потоков. Суть способа состоит в нестандартном использовании стандартных областей, скажем, хранить ключи, пароли: и т.п., совсем не там, где их будут искать при взломе в первую очередь.
Использовать операции сравнения нестандартными способами, во избежание их явного присутствия. Для сравнения есть определенные инструкции микропроцессора, о которых знают и разработчики и хакеры.
А если попытаться использовать нестандартные виды сравнения, то можно слегка запутать хакера, ожидающего стандартного ответа.
Избегать обращений к переменным, относящимся к защите напрямую. То есть использовать любые косвенные способы доступа к специальным областям.
Использовать метод «зеркалирования» событий, то есть применять нестандартные действия на стандартные вызовы. Об этом говорилось выше.
Использовать для шифрования надежные, проверенные временем алгоритмы и т. д.
Здесь перечислены только основные подходы, даже не основные, а общеизвестные. А об оригинальных разработках мы узнаем позже, как только хакеры смогут взломать очередную уникальную защиту.