Стохастические методы защиты информации

on

ВВЕДЕНИЕ Информационная безопасность давно стала самостоятельным направлением научных исследований и разработок, по этой тематике написано значительное количество монографий. Однако нерешенных проблем не становится меньше, что объясняется созданием все более совершенных компьютерных технологий, появление которых не только ставит новые проблемы обеспечения безопасности информации (ОБИ), но и представляет, казалось бы, уже решенные вопросы совершенно в новом ракурсе. Можно выделить следующие причины трудоемкости решения задачи обеспечения безопасности программных систем: • ·все большее отстранение пользователя от процессов управления и обработки информации и передача его полномочий ПО, обладающему некоторой свободой в своих действиях и поэтому вовсе не обязательно работающему так, как предполагает пользователь; • ·появление новых технологий программирования, затрудняющих оценку качества используемых программных продуктов; • ·существование программ, изначально предназначенных для выполнения деструктивных действий -компьютерных вирусов (KB), троянских программ, сетевых червей, эксплойтов (exploits), дропперов (droppers), различного рода хакерских утилит и пр., которые получили обобщенное название разрушающих программных воздействий (РПВ) . • ·Цель создания систем ОБИ — предупреждение или оперативное устранение последствий умышленных (преднамеренных) и случайных деструктивных воздействий. • ·Эффективная система ОБИ должна обеспечивать: • ·секретность всей информации или наиболее важной ее части; • аутентичность субъектов и объектов информационного взаимодействия; • ·работоспособность компонентов системы в любой момент времени, в том числе отсутствие недеклариро-ванных возможностей; • ·своевременный доступ пользователей к необходимой им информации и ресурсам системы; • · защиту авторских прав, прав собственников информации, возможность разрешения конфликтов; • ·разграничение ответственности за нарушение установленных правил информационных отношений; • неотслежйваемость информационных потоков в системе; • ·¦ оперативный контроль за процессами управления, обработки и обмена информацией. • ·Для каждого типа угроз информационной безопасности обычно можно предложить одну или несколько мер противодействия, целью применения которых является уменьшение риска либо за счет уменьшения вероятности осуществления угрозы, либо за счет уменьшения последствий реализации угрозы. Эффективной мерой защиты может являться всего лишь оперативное обнаружение факта реализации угрозы. В совокупности указанные меры образуют политику безопасности. • ·Современная наука предоставляет все необходимые алгоритмы, методы и средства, которые позволяют построить систему защиты, затраты на взлом которой таковы, что у противника с ограниченными финансовыми и техническими возможностями для получения интересующей его информации остаются только два пути — использование, во-первых, человеческого фактора, а, во-вторых, особенностей конкретной реализации (чаще программной) алгоритмов и протоколов удаленного взаимодействия. Именно такой вывод можно сделать, анализируя примеры реальных успешных атак на компьютерные системы (КС) в защищенном исполнении. Известны лишь единичные случаи взлома с использованием исключительно математических методов. В то же время различных примеров взломов реальных систем так много, что их анализом вынуждены заниматься целые компании. • ·Система защиты в целом не может быть надежнее отдельных ее компонентов. Иными словами, для того чтобы преодолеть систему защиты, достаточно взломать или использовать для взлома самый ненадежный из ее компонентов. Очень часто причинами ненадежности реальных систем защиты являются особенности программной реализации. • ·МЕТОДЫ ЗАЩИТЫ КОМПЬЮТЕРНЫХ СИСТЕМ • ·Можно выделить две относительно самостоятельные группы методов защиты КС: методы защиты от случайных деструктивных воздействий и методы защиты от умышленных деструктивных воздействий. • ·Первая группа методов включает в себя: • ·помехоустойчивое кодирование; • автономное и встроенное диагностирование; • ·контроле пригодное и отказоустойчивое проектирование; • ·ИНЖЕНЕРНАЯ ФИЗИКА № 2. 2007. 61 • · • ·«Лекарства» даже от простейшего вида РПВ, компьютерных вирусов, не существует. Всегда можно создать вирус, который не сможет нейтрализовать ни одна из существующих антивирусных программ. Основная идея в том, что если разработчик KB знает, что именно ищет антивирусная программа, он всегда способен разработать РПВ, незаметное для нее. Конечно, после этого создатели антивирусных средств могут усовершенствовать свои продукты, чтобы они определяли уже и новый вирус, таким образом, возвращая ситуацию в исходное положение. • ·ПЕРСПЕКТИВНЫЕ МЕТОДЫ ЗАЩИТЫ ОТ РПВ • ·Можно выделить следующие недостатки средств защиты от РПВ (в порядке возрастания значимости). • ·1) Все существующие методы защиты имеют принципиальные ограничения, иначе говоря, каждый в отдельности взятый метод относительно легко «обмануть», т.е создать вредоносную программу (ВП), которая не будет обнаружена. Отсюда можно сделать вывод • ·Методы защиты информации от умышленных деструктивных воздействий • ·Организационные методы защиты • ·Методы защиты от РПВ • ·Межсетевое экранирование • ·Ограничение доступа • ·Обнаружение вторжений (IDS) • ·Обязательное • ·сканирование • ·всей входящей • ·информации • ·Анализ • ·защищенности • ·(сканирование • ·уязвимостей) • ·Оперативное • ·устранение • ·обнаруженных • ·уязвимостей • ·Внесение неопределенности в работу объектов и средств защиты • ·Периодическое • ·сканирование • ·дисков • ·Создание ложных обьектоа атаки • ·Стегоаналиэ • ·Оперативное • ·обновление • ·баз сигнатур РПВ • ·Сигнатурный анализ • ·Эвристический анализ • ·Периодическое • ·обновление • ·ключевой • ·информации • ·Разделение доступа • ·Эмуляция процессора • ·Мониторинг • ·потенциально • ·опасных действий • ·Периодический • ·анал из защищенности • ·Контроль хода • ·выполнения • ·программ • ·Обучение • ·пользователей • ·основам • ·информационной • ·безопасности • ·Аудит • ·Резервное копирование • ·защиты КС от умышленных • ·¦ контроль хода выполнения программ и микропрограмм с использованием сторожевых процессоров. • ·Причинами случайных деструктивных воздействий являются: отказы и сбои аппаратуры; помехи в каналах связи из-за воздействия внешней среды; ошибки человека как слабейшего звена любой информационной системы; ошибки разработчиков аппаратуры и/или программного обеспечения; аварийные ситуации . • ·Вторая группа методов (рис. 1) значительно обширнее и включает в себя: • ·методы защиты от несанкционированного доступа (НСД) к информации; • ·методы защиты от РПВ; • ·организационные методы защиты, направленные на защиту от НСД, защиту от РПВ, совершенствование защиты и восстановление информации. • ·РАЗРУШАЮЩИЕ ПРОГРАММНЫЕ ВОЗДЕЙСТВИЯ (РПВ) • ·РПВ принято называть программы, способные выполнять любое непустое подмножество перечисленных ниже функций : • ·Методы защиты от НСД • ·Разграничение доступа • ·Криптографическое преобразование • ·Стеганографическое преобразование • ·Очистка • освобождающейся • ·памяти • ·скрывать признаки своего присутствия в КС; • ·обладать способностью к самодублированию, в том числе созданию модифицированных своих копий; • ·обладать способностью к ассоциированию себя с другими программами; » обладать способностью к переносу своих фрагментов в иные области оперативной или внешней памяти, в том числе находящиеся на удаленном компьютере; • ·получать несанкционированный доступ к компонентам или ресурсам КС; • ·разрушать или искажать код программ в оперативной памяти; • ·наблюдать за процессами обработки информации и принципами функционирования средств защиты; • ·сохранять фрагменты информации из оперативной памяти в некоторой области внешней памяти; • ·искажать, блокировать или подменять выводимый во внешнюю память или канал связи информационный массив, образовавшийся в результате работы прикладных программ; • ·искажать находящиеся во внешней памяти массивы данных; • ·подавлять информационный обмен в компьютерных сетях, фальсифицировать информацию в каналах связи; • ·нейтрализовывать работу тестовых программ и средств защиты информационных ресурсов КС; • ·постоянно или кратковременно (что опаснее) подменять или понижать стойкость используемых алгоритмов защиты; Обнаружение несанкционированных изменений с использованием контрольных кодов целостности Рис. 1. Классификация методов деструктивных воздействий » постоянно или кратковременно изменять степень защищенности секретных данных; приводить в неработоспособное состояние или разрушать компоненты системы; ¦ создавать скрытые каналы передачи данных; инициировать ранее внедренные РПВ. 62 ИНЖЕНЕРНАЯ ФИЗИКА № 2. 2007. » 1fОбычный shetl-код NOPsShell-кодЗамещающие байтыАдрес возврата U VПолиморфный shell-код FakeNOPsРасшифровщикShell-кодЗамещающие байтыАдрес возврата Мо ем попасть а любое место зоны NOP s **- Байты, заполняющие ^ оставшееся свободное M2CTD с переполняемом буфере Адрес, на который передается управление при удачной атаке Зона oriKOflOBNOP (0x90) Можем попасть в любое место зоны FakeNQPs Байты, заполняющие » оставшееся свободное места в переполняемом буфере t Адрес, на который передается улраеление при удамной атаке Рис. 2. Структура обычного (а) и полиморфного (б) shell-кодов о том, что эффективная система защиты от РПВ должна быть полнофункциональной, т.е. использовать все существующие стратегии защиты, реализовывать все существующие методы защиты и содержать в своем составе все существующие типы программных средств (ПС) защиты. 2) ) В существующих ПС защиты недостаточно внимания уделяется самозащите от ВП, самоконтролю целостности, восстановлению после сбоев и обеспечению гарантированное™ свойств;. 3) ) Недостаточно внимания уделяется проверке на предмет отсутствия уязвимостей типа; «переполнение буфера», «состязания при доступе к ресурсу» и пр. (всего более 10) в коде ПС защиты. Наличие таких уязвимостей позволяет атакующему подменять алгоритмы функционирования ПС защиты, повышать свои привил гии в системе, вызывать отказы в обслуживании со стороны ПС защиты, выполнять любые другие деструктивные действия. Основная причина дефектов программного кода -сложность современных программных систем. Большинство, ошибок в ПО не приводит к разрушительным последствиям. Ошибки, влияющие на выполнение основной задачи, относительно легко обнаруживаются на этапе тестирования. Значительно сложнее обнаружить дефекты в ПО системы безопасности. Ошибки, влияющие на вычисления, заметны, в то время как изъяны системы защиты могут долгое.время оставаться неви-димыми.Более того, эти дефекты вовсе не обязательно находятся в коде, относящимся к системе безопасности. На защищенность системы может повлиять любая самая безобидная с виду программа, не имеющая никакого отношения к обеспечению безопасности. Распространенная ошибка разработчиков ПО — расчет на «хорошего» пользователя, который будет обращаться с программой именно так, как задумано автором. Например, в результате отсутствия или неправильной обработки нестандартных ситуаций, которые могут иметь место при работе программы (неопределенный ввод, ошибки пользователя, сбой и пр.), у противника появляется возможность искусственно вызвать в системе появление такой нестандартной ситуации, чтобы выполнить нужные ему действия: остаться в системе с правами привилегированного пользователя или заставить процессор выполнить произвольный код . На рис. 2 показана структура РПВ , использующих уязвимость типа «переполнение буфера». 4) Еще один принципиальный недостаток существующих средств защиты от РПВ заключаются в том, что при их разработке в большинстве случаев используются исключительно методы, при реализации которых нападающие всегда находятся в более выигрышном положении, чем защищающиеся. Противник не может нанести вред системе в двух случаях, когда (1) он ее «не понимает» или «понимает неправильно», либо когда (2) он ее вообще «не видит». Именно в этих ситуация защита имеет преимущество перед нападением, в отличие, например, от таких традиционных методов, как межсетевое экранирование и обнаружение атак. Поэтому чрезвычайно перспективными методами следует признать методы внесения неопределенности в работу средств и объектов защиты, создание ложных объектов атаки (ЛОА) (по сути приманок) и стеганографические методы. Создавая ЛОА, администратор безопасности знает, как выглядит сеть, и что в ней происходит. В качестве приманок он может использовать любые компоненты защищаемой компьютерной сети, зная, что ни один из законных пользователей никогда не получит доступ к ним. Он может использовать любые виды сигнализации, постоянно включая и выключая их, меняя их. Иначе говоря, он может делать все, что считает необходимым. При этом ЛОА действуют наверняка, так как противник не имеет информации, где и когда они могут появиться. ЛОА должны быть снабжены средствами сигнализации в случае осуществления нападения и слежения за действиями РПВ. В качестве ЛОА могут выступать отдельные компьютеры honeypots) и даже фрагменты защищенной сети (honeynets) . Внесение неопределенности в работу средств и объектов защиты на порядок увеличивает стойкость защитных механизмов, метод предполагает использование генераторов псевдослучайных или случайных последовательностей для • ·управления последовательностью выполнения шагов алгоритма (пермутация и полиморфизм); • ·обеспечения независимости времени выполнения отдельных шагов алгоритма от исходных данных (защита от временных атак на реализацию); • ·» внесения непредсказуемости в результат преобразований (рандомизации), например, реализации концепции вероятностного шифрования; • ·реализации «плавающих» протоколов взаимодействия программных и аппаратных средств (обычно устройств ввода-вывода (УВВ)); • ·обеспечения для каждой программы индивидуальной среды исполнения (рандомизация среды исполнения). • ·5) В заключении можно отметить отсутствие оперативной реакции на появление принципиально новых методик создания РПВ, требующих таких же принципиально новых методов защиты. Эффективная система • ·ИНЖЕНЕРНАЯ ФИЗИКА № 2. 2007. 63 • ·защиты — это не фиксированный набор методов и средств защиты, это непрерывный процесс, который включает в себя: • ·анализ защищенности системы на всех ее уровнях, • ·опережающее совершенствование методов и средств защиты. СТОХАСТИЧЕСКАЯ КОМПЬЮТЕРНАЯ ВИРУСОЛОГИЯ: ИСПОЛЬЗОВАНИЕ СТОХАСТИЧЕСКИХ МЕТОДОВ В АТАКАХ НА КОМПЬЮТЕРНЫЕ СИСТЕМЫ В настоящее время имеются все предпосылки для того, чтобы говорить о необходимости открытия нового научного направления, находящегося на стыке нескольких научных дисциплин — компьютерной вирусологии, криптологии, стеганографии и стегоанализа, технологии безопасного программирования. Стохастическая вирусология суть научная дисциплина, изучающая особенности применения стохастических методов в компьютерных вирусах (KB) и других ВП и разрабатывающая меры противодействия таким РПВ. Предмет исследования стохастической вирусологии — РПВ (в том числе распределенные во времени и/или пространстве), использующие криптографические, кри