Разработка и анализ эффективности средств отражения распределенных атак

Модели нарушителей глобальной информационной системы Интернет. Классификация угроз в соответствии с IT-Baseline Protection Manual. Реализация DoS/DDos атак. Программная реализация Snort: установка, препроцессоры и структура модулей обнаружения и вывода.

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 05.06.2011
Размер файла 509,5 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Разработка и анализ эффективности средств отражения распределенных атак

СОДЕРЖАНИЕ

СОКРАЩЕНИЯ И УСЛОВНЫЕ ОБОЗНАЧЕНИЯ

ВВЕДЕНИЕ

1. ОПИСАНИЕ ИС

1.1 Описание ИС

1.2 Модель нарушителя

1.3 Модель угроз

1.3.1. Классификация угроз в соответствии с IT-Baseline Protection Manual

1.3.1.1 Угрозы, связанные с форс-мажорными обстоятельствами

1.3.1.2 Угрозы, связанные с недостатками организации и управления

1.3.1.3 Угрозы, связанные с человеческим фактором

1.3.1.4 Угрозы, связанные с техническими неисправностями

1.3.1.5 Угрозы, связанные со спланированными действиями нарушителей

1.3.2 Классификация угроз по нарушаемым базовым услугам ИС

1.3.2.1 Угрозы нарушения конфиденциальности информации

1.3.2.2 Угрозы нарушения целостности информации

1.3.2.3 Угрозы нарушения аутентичности

1.3.2.4 Угрозы нарушения наблюдаемости

1.3.2.5 Угрозы нарушения доступности ресурсов

1.4 Особенности реализации DoS/DDos атак. TCP SYN атака

1.5 Постановка задач по защите от угроз

2. ИЗВЕСТНЫЕ МЕТОДЫ ПРОТИВОДЕЙСТВИЯ TCP SYN АТАКЕ

2.1 TCP SYN cookies

2.2 TCP RST cookies

2.3 Floodgate

2.4 Предмаршрутизационная фильтрация

2.5 Random/Old Drop

2.6 Syn-Proxy

2.7 Stack tweaking

2.8 BlackListing

3. МАТЕМАТИЧЕСКАЯ МОДЕЛЬ TCP SYN АТАКИ

3.1 Краткие сведения из теории систем массового обслуживания

3.2 Поток требования СМО

3.3. Сервер TCP соединения как СМО

3.4 СМО с бесконечным количеством обслуживающих приборов

3.5 Модель, учитывающая потерю пакетов в сети

4. МЕТОДИКИ СБОРА ДАННЫХ

4.1 Определение времени прохождения IP пакета по сети Internet

4.2 Определение вероятности потери пакетов в сети

4.3 Определение интенсивности входящего потока требований

5. ПРОГРАММНАЯ РЕАЛИЗАЦИЯ

5.1 Особенности установки Snort

5.2 Внутренняя структура Snort

5.2.1 Препроцессоры

5.2.2 Модули обнаружения

5.2.3 Модули вывода

5.3 Разработка модуля обнаружения

5.3.1 Структура модуля TcpConnEstTimeChecker

5.3.2 Структура модуля TcpSynFloodPreventionModule

5.3.3 Взаимодействие TcpConnEstTimeChecker и TcpSynFloodPreventionModule в реализации tcp_syn_flood

ВЫВОДЫ

ПЕРЕЧЕНЬ ССЫЛОК

ПРИЛОЖЕНИЯ

СОКРАЩЕНИЯ И УСЛОВНЫЕ ОБОЗНАЧЕНИЯ

БД - базы данных

ДСТСЗИ СБУ - Департамент специальных телекоммуникационных систем и защиты информации Службы Безопасности Украины (Державна служба спеціального зв'язку та захисту інформації України)

ИС - информационная система

ИТС - информационно-телекомуникационная система

КЗИ - комплексная защита информации

КС - компьютерная система

ОС - операционная система

ОЗУ - оперативное запоминающее устройство

ПО - программное обеспечение

СВ - случайная величина

СМО - система массового обслуживания

ACK - Acknowledgement Flag

ARP - Address Resolution Protocol

ASN.1 - Abstract Syntax Notation One

BO - Back Orifice

CSV - Coma Separated Values

DDoS - Distributed Denial of Service

DNS - Domain Name Service

DoS - Denial of Service

DSL - Digital Subscriber Line

FIN - Finalization Flag

ICMP - Internet Control Message Protocol

IDS - Intrusion Detection System

IPS - Intrusion Prevention System

IP - Internet Protocol

HTTP - Hyper Text Transfer Protocol

MSS - Maximum Segment Size

OSI - Open System Interconnection

PSH - Push Flag

RPC - Remote Procedure Call

RST - Reset Flag

SMS - Simple Message Service

SYN - Synchronize Flag

TCP - Transmission Control Protocol

TTL - Time to Live

UDP - User Data Protocol

URG - Urgent Flag

WWW - World Wide Web

ВВЕДЕНИЕ

В настоящее время, трудно себе представить успешную компанию, не использующую для организации делопроизводства достижения науки и техники в сфере информационных технологий. Также интеграции современных технологий способствует развитие в Украине соответствующей нормативной базы. Одним из перспективных направлений является развитие электронного документооборота, инфраструктуры открытых ключей, использование средств современной криптографии органами государственной власти, органами местного самоуправления, предприятиями, учреждениями, организациями и т.д. [1,2]. Одним из основных преимуществ использования таких технологий является значительное повышение эффективности делопроизводства за счет ускорения поиска необходимой информации, увеличения скорости обмена информацией, уменьшение процента утерянной информации и т.д. Такие средства криптографии как электронная цифровая подпись способны обеспечить обеспечение таких базовых услуг информационных систем как конфиденциальность, целостность информации и т.д [3]. Однако использование этих средств не дает гарантии обеспечения такой важной услуги, как доступность ресурсов [3]. Для того чтобы инфраструктура открытых ключей могла полноценно функционировать, необходимо, чтобы пользователи системы всегда могли иметь доступ к центрам сертификации различных уровней.

К сожалению, в последнее время все большее распространение получил целый класс атак (DoS/DDoS), направленных на отказ в обслуживании. Успешная реализация таких атак позволяет блокировать доступ пользователей информационных систем к ресурсам различных серверов, что может вывести из рабочего состояния всю систему.

Одним из способов реализации атаки типа отказа в обслуживании является загрузка всех ресурсов сервера обработкой огромного количества ложных запросов. В большинстве случаев, для организации таких атак используются компьютеры "мирных" пользователей без их ведома и согласия. Это осуществляется путем установки на недостаточно защищенные машины вредоносного программного обеспечения, такого как "троянские кони", "черви", компьютерные вирусы и т.д. После того, как злоумышленник смог инфицировать достаточно большое количество узлов сети, реализация распределенной атаки сводится к тому, чтобы отправить одновременно всем зараженным машинам команду, активирующую вредоносное ПО, превращая тем самым "мирные" компьютеры в источник распределенной атаки.

В настоящее время, организация атак типа отказа в обслуживании является довольно прибыльным занятием. Существуют два способа получить финансовое вознаграждение. В первом случае за организацию атак платят нечистоплотные конкуренты, целью которых является нанесение удара по репутации других компаний и организаций. А в другом случае хакеры занимаются вымогательством - выбирают жертву, атакуют ее и требуют выкуп за прекращение атаки.

Для эффективного противодействия DDoS атакам существуют несколько серьезных препятствий. В частности, многие из них не требуют установления сеанса связи с источником атаки, что значительно затрудняет поиск злоумышленника. Но даже в случае поимки хакера, он может не получить заслуженного наказания в виду несовершенства законодательства в различных странах [4].

На данный момент в мире существуют решения, снижающие негативное воздействие DDoS атак (может отфильтровываться до 99% вредоносного трафика [5]), но такие средства обладают несколькими недостатками, которые ограничивают возможности их использования. Во-первых, использующиеся алгоритмы являются коммерческой тайной разработчиков, что не дает возможности соответствующим организациям сертифицировать эти продукты. Вторым недостатком является высокая цена, недоступная для многих компаний и организаций. Например, услуги компаний AT&T и MCI в этой области стоят около 12 тысяч долларов в месяц[5].

Из всего вышесказанного видно, что проблема обнаружения и противодействия DDoS атакам является актуальной и требует недорогих и эффективных решений. В магистерской работе предлагается методика раннего обнаружения одной из самых распространенных DDoS атак - TCP SYN атаки. В основе этой методики лежит математическая модель, описывающая взаимодействие сервера с клиентами. Разработанная модель учитывает индивидуальные значения различных параметров, характеризующих работу сети и сервера, что повышает эффективность обнаружения атаки. В работе так же предлагается программная реализация разработанной методики, представленная в виде модуля расширения функциональности для системы предотвращения вторжений Snort_inline. Такое решение ориентировано на защиту критичных ресурсов корпоративной сети от указанной выше атаки.

1. ОПИСАНИЕ ИС

1.1 Описание ИС

Как известно, XXI век принято считать веком высоких технологий. Трудно себе представить современное общество, в котором не использовались бы последние достижения стремительно развивающейся науки и техники. Одним из направлений развития современной науки являются информационные технологии, с каждым днем открывающие перед человечеством все новые и новые возможности. Одним из замечательных продуктов этих технологий являются информационные системы (ИС), повсеместно внедряемые во всяческие сферы человеческой деятельности.

Далее под информационной системой будем понимать объединенную совокупность аппаратных, программно-аппаратных и программных средств, осуществляющих создание, хранение, обработку и уничтожение разнообразной информации, а так же обмен ею путем взаимодействия между собой [6].

Наиболее известным примером информационной системы является глобальная сеть Internet. Она охватывает своей паутиной практически всю поверхность земного шара, открывая для человечества колоссальные возможности. Фактически Internet состоит из множества локальных и глобальных сетей, принадлежащих различным компаниям и предприятиям, связанных между собой различными линиями связи. Internet можно представить себе в виде мозаики сложенной из небольших сетей разной величины, которые активно взаимодействуют одна с другой, пересылая различную информацию [7].

При низкой стоимости услуг (часто это только фиксированная ежемесячная плата за используемые линии или телефон) пользователи могут получить доступ к коммерческим и некоммерческим информационным службам практически всех мировых стран. В архивах свободного доступа сети Internet можно найти информацию практически по всем сферам человеческой деятельности, начиная с новых научных открытий до прогноза погоды на ближайший месяц.

Internet предоставляет уникальные возможности дешевой и надежной связи по всему миру. Это оказывается очень удобным для фирм имеющих свои филиалы по всему миру, транснациональных корпораций и структур управления. Обычно, использование инфраструктуры Internet для международной связи обходится значительно дешевле прямой компьютерной связи через спутниковый канал или через телефон.

Электронная почта - одна из самых распространенных услуг сети Internet. Посылка письма по электронной почте обходится значительно дешевле посылки обычного письма. Кроме того, сообщение, посланное по электронной почте, дойдет до адресата за короткий промежуток времени (от нескольких десятков секунд), в то время как обычное письмо может добираться до адресата несколько дней и недель.

Еще одной распространенной услугой Internet является World Wide Web (WWW) - система для работы с гипертекстом. Потенциально она является наиболее мощным средством поиска. Гипертекст соединяет различные документы на основе заранее заданного набора слов. Например, когда в тексте встречается новое слово или понятие, система, работающая с гипертекстом, дает возможность перейти к другому документу, в котором это слово или понятие рассматривается более подробно. WWW часто используется в качестве дружественного интерфейса к базам данных [6].

С каждым днем растет зависимость успешной работы компаний от использования современных информационных технологий, которые предоставляют грандиозные возможности. На рис. 1.1 приведен пример типичной корпоративной сети компании, имеющей разветвленную структуру географически удаленных друг от друга филиалов, [8].

Рис.1.1 Пример ИС

Такая ИС позволяет, например, проводить конференции с участием сотрудников, работающих в разных городах и странах, с такой же легкостью как если бы они находились в одном помещении. В таких системах обрабатывается информация различного характера и содержания. Это может быть жизненно важная для компании информация, например о коммерческой деятельности, результаты научных исследований, на которые было затрачено много ресурсов и времени и т.д. Очевидно, что, например, ознакомление с такими сведениями конкурентов, может привести к непоправимым последствиям, вплоть до банкротства. В связи с этим к информационной системе должны выдвигаться требования по обеспечению некоторых базовых услуг. Такие услуги будут рассмотрены ниже. Здесь стоит отметить, что причинами нарушения базовых услуг могут быть как обстоятельства случайного характера, так и специально спланированные действия нарушителей.

Эти обстоятельства могут иметь как случайный характер, так и являться следствием спланированных действий нарушителей. Классификация возможных нарушителей в ИС приведена в пункте 1.2.

1.2 Модель нарушителя

В соответствии с [3], нарушитель - это пользователь, который осуществляет несанкционированный доступ к информации. Здесь стоит отметить, что под несанкционированным доступом к информации может быть как ознакомление с ней таки и ее редактирование и удаление. В контексте данной работы это определение может быть расширено с учетом того, что злоумышленник может не быть пользователем атакуемой системы. В соответствии с нормативными документами, действующими в Украине, определены четыре уровня возможностей нарушителя в ИС системе [9]:

1. Нулевой уровень - случайное неспециальное ознакомление с содержанием информации.

2. Первый уровень - нарушитель, имеющий ограниченные средства и самостоятельно создающий средства и методы атак на средства КЗИ и ИТС, с применением широко распространенного ПО и вычислительной техники.

3. Второй уровень - нарушитель корпоративного типа. Имеет возможность создания специальных технических средств, стоимость которых соотносится с возможными финансовыми убытками при потере, искажении и уничтожении защищаемой информации. Для проведения вычислений могут использоваться локальные вычислительные сети.

4. Третий уровень - нарушитель имеет научно-технический ресурс, приравниваемый к научно-техническому ресурсу экономически развитого государства.

Методика, предлагаемая в данной магистерской работе, ориентирована на защиту от злоумышленников нулевого, первого и второго уровней.

В связи с тем, что злоумышленники третьего уровня обладают практически неограниченными возможностями, защита от реализуемых ими угроз выходит за рамки данной работы.

В пункте 1.3 приведена модель возможных в рассматриваемой ИС угроз.

1.3 Модель угроз

В соответствии с [3], угроза - это любые обстоятельства или события, которые могут быть причиной нарушения политики безопасности и (или) нанесения ущерба. Ущерб может заключаться в нарушении свойств информации путем ее разрушения, искажения или несанкционированного ознакомления, либо в разрушении, искажении или несанкционированном использовании ресурсов системы. Источниками угроз могут быть различные объекты и явления, что значительно затрудняет их учет при построении комплексной системы защиты информации. В связи с этим в мировой практике принято строить модель угроз, в которой приводится классификация возможных угроз, их описание и средства возможной реализации.

1.3.1 Классификация угроз в соответствии с IT-Baseline Protection Manual

Одним из лучших документов в этой области классификации угроз является [10]. В этом стандарте приводится перечень возможных угроз, а так же рекомендуются организационные и технические меры для защиты от них. В приведенной в [10] классификации все угрозы разделены на 5 основных групп:

1. Угрозы, связанные с форс-мажорными обстоятельствами

2. Угрозы, связанные с недостатками организации и управления

3. Угрозы, связанные с человеческим фактором

4. Угрозы, связанные с техническими неисправностями.

5. Угрозы, связанные со спланированными действиями злоумышленников.

Каждая из этих групп содержит большой перечень угроз, подробное рассмотрение которых выходит за пределы этой работы, поэтому ниже приведены только некоторые примеры, дающие представление о разнообразности угроз.

1.3.1.1 Угрозы, связанные с форс-мажорными обстоятельствами

Рассматриваемые в этой группе угрозы характеризуются тем, что их источники трудно заранее предсказать и их проявление носит случайных характер. Одной из таких угроз являются проблемы с персоналом. Ущерб в этом случае проявляется в том, что болезнь, смерть или забастовки персонала могут привести к прерыванию выполнения критичных задач, или выходу из строя критичных ресурсов. Источниками целого ряда угроз являются ЧП как природного (молнии, пожары, наводнения, дожди, магнитные бури) так и техногенного (возгорание кабелей, аварии, нарушение систем тепло-, водо-, и электроснабжения) характера. Стоит отметить, что такого рода угрозы могут наносить как непосредственный, так и косвенный ущерб. Например, во время пожара оборудование может подвергаться деструктивному воздействию не только от контакта с открытым огнем, но и под действием газовых смесей, образующихся при горении.

Так же к угрозам этой группы относятся недопустимые температуры и влажность, пыль и грязь, который могут привести к выходу из строя некоторых ресурсов информационной системы.

Для систем, подсистемы которых тесно связаны между собой, серьезными угрозами являются отказы и сбои в системе. Отказ в работе одного из компонентов может повлечь за собой сбой работы всего механизма. Примером такой угрозы может быть резкий скачок напряжения в электросети, результатом которого может быть выход из строй блока питания одного из критичных ресурсов системы. В результате этот ресурс может стать недоступным для всей системы на длительное время. Еще одним примером являются распределенных ИТ систем, в которых время является критичным ресурсом. В этом случае сбои в работе WAN могут привести к сбоям работы всей системы или ее компонентов.

1.3.1.2 Угрозы, связанные с недостатками организации и управления

Угрозы этой группы характеризуются тем, что их источником являются недоработки организационного характера. К таким угрозам относятся отсутствие или несовершенство регламентирующих правил и документов, недостаточное ознакомление с ними персонала, низкокачественный мониторинг и аудит мер ИТ безопасности. Например, если в политике безопасности не запрещено использование неучтенных носителей данных, или служащий не ознакомлен с этим положением, то значительно повышается вероятность попадания в корпоративную сеть вредоносного ПО (ad-ware - вирусов, троянских коней и т.д.), принесенного сотрудником из дома на flash диске. Еще одним примером этого вида угроз является недостаточное финансирование, либо неэффективное использование ресурсов. Например, необходимость использования старых версий ОС (таких как Windows 95) приводит к невозможности аудита действий пользователей.

Так же к угрозам этой группы относятся ошибки в проектировании системы. Например, неправильный расчет пропускной способности канала связи приведет либо к необоснованным затратам на услуги связи, либо к замедлению работы других компонентов. Стоит упомянуть угрозы связанные с тестированием. К ним относятся некачественное тестирование и тестирование с использованием реальных данных. В первом случае в эксплуатацию может поступить нестабильная и (или) неправильно работающая система, а во втором может иметь место нарушение конфиденциальности данных.

Другими примерами таких угроз являются неавторизированный доступ в помещение, использование ресурсов, использование полномочий и т.д.

1.3.1.3 Угрозы, связанные с человеческим фактором

Источниками угроз этой группы являются некорректные действия пользователей системы. Вследствие таких действий возможна потеря конфиденциальности или целостности данных. Например, если пользователь распечатал информацию на принтере и забыл забрать распечатку, то ее содержание может стать доступно не имеющим на это прав пользователям. Потеря целостности возможна в случае неправильной настройки прав доступа к файлам. Еще одним примером угрозы этой группы является неполное следование мерам безопасности. Например, хранение носителей информации в закрытом ящике стола еще не гарантирует достаточной защиты от неавторизованного доступа. Если ключ от ящика находится в офисе в общедоступном месте - например на столе. Неаккуратные действия пользователей и не целевое использование системы могут привести к потере данных, порче оборудования и т.д.

Большая часть угроз этой группы связана с некорректным администрированием и настройкой системы. Например, неправильное соединение кабелей, настройка сетевых устройств может привести к тому, что данные будут дополнительно передаваться другим адресатам. В случае неправильной настройки прикладных сервисов? таких как Web, SMTP, POP3, RAS и т.д. так же возможно нарушение конфиденциальности и целостности информации.

1.3.1.4 Угрозы, связанные с техническими неисправностями.

Источниками угроз этой группы являются различного рода технические неисправности. Это могут быть сбои в сетях электро-, тепло-, водоснабжения, в противопожарных системах и системах кондиционирования и вентиляции, в сетях связи и т.д. В результате реализации таких угроз может выйти из строя оборудование, что в свою очередь может привести к остановке функционирования всей системы, или ее отдельных компонентов. Так же примерами такого рода угроз могут быть неисправности оборудования, носителей информации, ошибки при передаче данных.

Так же к этой группе относятся ошибки и уязвимости ПО. Например, в некоторых широко распространенных приложениях есть функциональность позволяющая применять криптопреобразования к документам и т.д. Однако эта функциональность реализует нестойкие алгоритмы, защиту которых можно легко обойти с помощью легкодоступных в Интернете утилит. Так же широко известной разновидностью уязвимостей ПО является переполнение буфера. Эти уязвимости используют тот факт, что разработчики довольно часто не ограничивают размер вводимых пользователями данных. Это может привести к тому, что введенные пользователем данные могут быть интерпретированы как исполняемый код.

Еще одна интересная угроза связана с настройками CD привода. В случае, когда включена опция автоматического определения диска, автоматически выполняется файл AUTORUN.INF, содержание которого заранее неизвестно.

1.3.1.5 Угрозы, связанные со спланированными действиями злоумышленников

Эта группа содержит наибольшее количество угроз. В ней представлены угрозы, которые могут быть реализованы как при непосредственном физическом воздействии (кражи, акты вандализма и т.д.) так и удаленно.

Одним из примеров таких угроз является действие так называемого adware ПО, к которому относятся компьютерные вирусы, черви, троянские кони, макро вирусы, rootkit'ы и т.д.

Так же существуют угрозы, связанные с анализом сетевого трафика с помощью специальных программ (sniffers). При реализации этих угроз злоумышленник может получить несанкционированный доступ к конфиденциальной информации: e-mail, паролям (которые во многих протоколах передаются по сети в открытом виде). Так же с помощью сетевого трафика злоумышленник может получить представление о внутренней структуре сети (используемые IP адреса, топологию и т.д.), ПО используемое на машинах в сети и т.д. Если злоумышленник контролирует сетевое устройство (маршрутизатор, мост и т.д.) через которое проходит трафик, то кроме нарушения конфиденциальности информации может присутствовать нарушение ее целостности.

Стоит упомянуть угрозы связанные со спуфингом (spoofing). Примерами таких угроз являются ARP и DNS spoofing. Реализация этих угроз позволяет изменить маршрутизацию пакетов в локальных (ARP, DNS) и глобальных (DNS) сетях, в результате чего злоумышленник получает возможность контролировать трафик атакуемых систем. Так же существует угроза Web spoofing. Она заключается в том, что злоумышленник может имитировать какой либо Web сайт путем регистрации доменного имени со схожим названием, при этом многие пользователи об этом даже не будут догадываться. Например, у компании "Рога и Копыта Ukraine" есть web сайт www.rogakopita.ua. Если пользователи не знают точного доменного имени? то многие из них начнут поиск с www.rogakopita.com, по которому злоумышленники могут разместить похожий сайт.

1.3.2 Классификация угроз по нарушаемым базовым услугам ИС

Как упоминалось ранее, к ИС должны выдвигаться требования по обеспечению базовых услуг. Такими базовыми услугами являются [3]:

· обеспечение конфиденциальности информации. Конфиденциальность - это свойство информации, заключающееся в том, что она не может быть получена неавторизованным пользователем и (или) процессом [3].

· обеспечение целостности информации. Целостность - это свойство информации, заключающееся в том, что она не может быть модифицирована неавторизованным пользователем и (или) процессом [3].

· обеспечение доступности ресурсов. Доступность - это свойство ресурса системы, заключающееся в том, что пользователь и (или) процесс, который владеет соответствующими полномочиями, может использовать ресурс в соответствии с правилами, установленными политикой безопасности, не ожидая дольше заданного (маленького) промежутка времени, т.е. когда они находятся в виде нужном пользователю, в месте нужном пользователю и в нужное пользователю время [3]

· обеспечение аутентичности. Обеспечивается с помощью аутентификации. Аутентификация - это процедура проверки соответствия предъявленного идентификатора объекта КС на предмет принадлежности его этому объекту [3].

· обеспечение наблюдаемости. Наблюдаемость - это свойство КС, которое позволяет фиксировать деятельность пользователей и процессов, использование пассивных объектов, а так же однозначно устанавливать идентификаторы причастных к конкретным событиям пользователей и процессов с целью предотвращения нарушения политики безопасности и (или) обеспечения ответственности за конкретные действия [3].

Так же угрозы могут быть классифицированы по принципу, к нарушению какой из базовых услуг ИС они приводят. Здесь можно выделить угрозы нарушающие конфиденциальность, целостность и доступность информации и ресурсов, а так же аутентичности и наблюдаемости.

1.3.2.1 Угрозы нарушения конфиденциальности информации

Эта угрозы заключается том, что информация становится известной тем сторонам информационного взаимодействия, у которых нет прав на ознакомление с этой информацией. Примерами реализации такой угрозы могут быть:

· Перехват и анализ сетевого трафика с помощью специализированного ПО. Такое ПО называется снифферами.

· Криптоанализ зашифрованных данных

· Несанкционированный доступ к данным, находящимся в различных запоминающих устройствах (на жестком диске, в ОЗУ, flash и т.д).

1.3.2.2 Угрозы нарушения целостности информации

Угрозы нарушения целостности информации включают в себя несанкционированное изменение или удаление данных, обрабатываемых в информационной системе. Примерами реализации такой угрозы могут быть:

· Модификация трафика, проходящего через хост атакующего, либо с помощью специализированного ПО (троянские кони, rootkit)

· Модификация файлов других пользователей, хранящихся на разделяемом дисковом пространстве

1.3.2.3 Угрозы нарушения аутентичности

Угрозы нарушения аутентичности заключаются в том, что в результате проведения некоторых действий пользователь и (или) процесс выдает себя за другого пользователя и имеет возможность воспользоваться чужими правами и привелегиями. Примерами реализации такой угрозы являются:

· Навязывание ложных сетевых адресов (ARP-spoofing) и доменных имен (DNS-spoofing), соответственно, может осуществляться на сетевом и транспортном уровнях модели OSI.

· Классическая атака типа человек посередине (Man in the middle). Заключается в том, что злоумышленник незаметно внедряется в канал связи между двумя абонентами и получает полный контроль над информацией (модификация, удаления, создание дезинформации), которой обмениваются участвующие стороны. При этом он остается абсолютно невидимым для абонентов.

1.3.2.4 Угрозы нарушения наблюдаемости

Угрозы нарушения наблюдаемости заключаются в том, что в результате некоторых действий злоумышленника становится невозможным фиксирование деятельности пользователей и процессов, использования пассивных объектов, а так же однозначно устанавливать идентификаторы причастных к конкретным событиям пользователей и процессов. Примерами реализации таких атак может быть:

· Очистка журналов аудита

· Отключение системы аудита

· Переполнение журнала аудита, в результате чего, записи о некоторых событиях пропадают

· Заражение системы rootkit'ом

1.3.2.5 Угрозы нарушения доступности ресурсов

Угрозы нарушения доступности ресурсов заключаются в проведении некоторых действий, в результате которых блокируется доступ к некоторому ресурсу информационной системы со стороны легальных пользователей. Примерами реализации таких угроз могут быть:

· загрузка ресурсов сервера фиктивными запросами злоумышленника, в результате чего запросы от легальных пользователей не могут быть обработаны.

· обрыв канала связи, между взаимодействующими сторонами

Атаки, реализующие такие угрозы, называются DoS (Denial of Service) атаками. Целью данной работы является разработка методики обнаружения и противодействия TCP SYN атаке - одной из самых распространенных атак этого класса. В связи с этим ниже рассматриваются особенности реализации атак типа отказа в обслуживании и, в частности, TCP SYN атаки.

1.4 Особенности реализации DoS/DDos атак. TCP SYN атака

DoS/DDoS-атаки направлены на нарушение базовой услуги доступности. Основная цель DoS/DDoS-атак вывести атакуемый объект из рабочего состояния и сделать его ресурсы недоступными для легальных пользователей. Атаку, направленную на отказ в обслуживании, можно провести двумя способами: используя уязвимости в программном обеспечении атакуемой системы и при помощи отсылки большого количества определенно составленных сетевых пакетов (flood).

Первый способ сложнее и требует более высокой квалификации атакующего. Второй способ основан на применении "грубой силы". Идея заключается в том, чтобы загрузить вычислительные ресурсы сервера обработкой огромного количества посланных злоумышленником пакетов. Такая загрузка сервера в лучшем случае может привести к тому, что сервер будет неспособен принять на обработку запросы от легальных пользователей, а в худшем случае может привести к зависанию и отключению сервера.

Здесь стоит отметить, что можно выделить два типа атак, направленных на загрузку ресурсов системы: в первом случае загружаются вычислительные ресурсы сервера, а в другом - пропускная способность канала связи. Разрабатываемая методика ориентирована на защиту от атак первого типа, поэтому дальше будем считать, что пропускной способности достаточно, чтобы сервер получил весь адресованный ему трафик.

Для многих DoS/DDoS атак результаты обработки сервером пакетов, отправленных злоумышленником, последнего не интересуют. Это значит, что атакующий может отправлять поток ложных заявок с ложных IP адресов (это понятие называется spoofing), что препятствует его обнаружению и эффективному противодействию такого рода атакам.

Для проведения успешной DoS-атаки необходима довольно высокая пропускная способность канала. Поэтому атака на отказ в обслуживании в большинстве случаев проводится сразу с нескольких машин. Атака, в проведении которой участвует большое количество машин, получила название DDoS. Стоит отметить, что для распределенной атаки могут использоваться инфицированные специальным ПО машины не принадлежащие атакующему. Такие зараженные машины называются "зомби". Одним из способов получения "зомби" является массовое внедрение "трояна" на компьютеры мирных пользователей. Получив определенную извне команду такой "троян" превращает "мирный" компьютер с доступом в Internet в источник ложных запросов, направленных на перегрузку ресурсов сервера.

Наиболее распространенными DoS атаками являются:

· TCP SYN Flood или просто TCP SYN

· TCP flood

· Ping of Death

· ICMP flood

· UDP flood

Рассмотрим подробнее TCP SYN (tcp syn flood) атаку, которая направлена на прикладные сервисы, использующие протокол транспортного уровня TCP. Этот протокол получил широкое распространение в информационных системах за счет того, что он гарантирует 100% доставку всех передаваемых данных. Взаимодействующие узлы сети, использующие в качестве транспорта этот протокол, устанавливают между собой TCP соединения, в рамках которых ведется контроль над тем, что получатель получит все посланные отправителем пакеты. Это достигается за счет того, что получатель извещает отправителя о том, какие пакеты он получил. Если до получателя дошли не все предназначенные ему пакеты, то отправитель повторно их отправит. Как видно достоинством этого протокола является возможность установления соединения. Для хранения информации о текущем состоянии соединения в частности используется поле битовых флагов в пакетах, используемых протоколом. Под это поле отведено 8 бит, однако 2 из них являются зарезервированными и в настоящее время используются только 6 флагов: URG (флаг срочности), ACK (флаг подтверждения), PSH (флаг push функции), RST (флаг сброса), SYN (флаг синхронизации) и FIN (флаг окончания). К сожалению, установленный стандартом [11] механизм установления соединения не является совершенным, и рассматриваемая атака, как раз использует его недостатки.

Основная цель этой TCP SYN атаки - превысить ограничение на количество TCP соединений, которые находятся в состоянии установки. Рассмотрим процедуру установки TCP соединения. Сначала клиент, инициализирующий соединение отправляет серверу TCP-SYN запрос. Получив такой запрос, сервер выделяет память для параметров соединения в специально предназначенном для этого буфере. Затем отправляет клиенту TCP пакет с флагами SYN+ACK. Получив пакет SYN+ACK, клиент должен отправить серверу пакет с подтверждением, т.е. пакет с установленным флагом ACK. Когда сервер получит и обработает этот пакет, соединение является установленным. Описанная выше

процедура изображена на рис. 1.1

Рис. 1.1 Установка TCP соединения

TCP SYN атака производится следующим образом: злоумышленник генерирует большое количество пакетов с установленными SYN флагами протокола TCP. Получая пакеты, атакуемая машина выделяет память для хранения параметров соединения и отправляет ответ - пакет с флагами SYN + ACK и ожидает пакета с флагом ACK. Очевидно, что ожидаемый ответ она не получит, и память будет освобождена только после истечения установленного таймаута. Через некоторое время буфер, выделенный для хранения параметров TCP, соединений будет полностью занят, в результате чего, система не сможет устанавливать новые соединения. После этого каждый дополнительный запрос еще сильнее увеличивает нагрузку. Такие атаки не нуждаются в обратной связи с атакующим, и поэтому злоумышленник может генерировать пакет с произвольными IP адресами отправителя.

Отсутствие обратной связи с атакующим делает обнаружение и отражение TCP-SYN атаки довольно сложной задачей.

1.5 Постановка задач по защите от угроз

В настоящее время в открытой литературе не известны эффективные методы обнаружения TCP SYN атак. В современных ОС присутствуют механизмы защиты атакуемого сервера, например SYN cookies. Операционная система автоматически включает защиту, когда обнаруживает превышение значений некоторых параметров. Например, ОС Windows 2000 следит за значениями трех параметров: TcpMaxHalfOpen, TcpMaxHalfOpenRetried, TcpMaxPortsExhausted [12]. Пороговые значения для этих параметров имеют значения по умолчанию и могут меняться администратором. Если исходные значения не подходят для конкретного сервера, то перед администратором стоит непростая задача эффективно настроить защиту. Кроме того, этот метод требует внесения соответствующих изменений в реализацию стека TCP/IP, которые некоторые специалисты в области сетевых технологий считают "серьезным нарушением" протокола TCP[13].

Другим недостатком средств обнаружения TCP атаки интегрированных в ОС является то, что при перегрузке (имеется в виду нехватка ресурсов процессора и памяти) или зависании самой системы средства противодействия так же становятся неработоспособными.

Целью магистерской работы является создание математически обоснованной методики обнаружения TCP SYN атаки. Для этого необходимо построить математическую модель, описывающую взаимодействие TCP сервера с клиентами. Исходными параметрами для такой модели должны быть характеристики сервера и канала связи, а выходным параметром должно быть утверждение о наличии или отсутствии TCP-SYN атаки.

Для возможности использования предлагаемой методики на практике для защиты критичных ресурсов корпоративной сети необходимы так же средства, позволяющие определить фактические значения входных параметров модели для конкретного сервера и сети, к которой он подключен.

2. ИЗВЕСТНЫЕ МЕТОДЫ ПРОТИВОДЕЙСТВИЯ TCP SYN АТАКЕ

В этом разделе рассматриваются существующие методы обнаружения и противодействия TCP SYN атаке, описываются их достоинства и недостатки.

2.1 TCP SYN Cookies

Этот метод защиты от рассматриваемой атаки был предложен в 1996 году, в скором времени после первых TCP SYN атак [13], вызвавших большой резонанс. В основе этого метода лежит изменение идентификатора последовательности TCP TCP (TCP sequence number). Значение этого параметра определяется следующим образом [13]:

· 5 старших битов: значение t mod 32, где t - 32-разрядный счетчик временных интервалов, значение которого увеличивается на 1 каждые 64 секунды;

· следующие 3 бита: кодированное значение MSS, выбранное сервером в ответ на MSS клиента;

· младшие 24 бита: выбранная сервером на основе IP-адресов и номеров портов отправителя и получателя, а также величины t значение секретной функции.

Такой алгоритм выбора начального порядкового номера соответствует основным требованиям протокола TCP, в соответствии с которыми номера должны увеличиваться достаточно медленно и начальные порядковые номера для серверов растут несколько быстрее, нежели порядковые номера для клиентов.

Серверы, использующие функции SYN cookie, не отвергают соединения при заполнении очереди SYN. Взамен они передают инициатору соединения пакет SYN+ACK, в точности соответствующий пакету, который был бы передан при большем размере очереди SYN (исключения: сервер должен отвергать (reject) опции TCP такие, как большое окно, и должен использовать 1/8 значения MSS, которое он может кодировать). При получении пакета ACK, сервер убеждается в работе секретной функции для последнего (recent) значения t и перестраивает запись очереди SYN в соответствии со значением MSS.

Стоит отметить, что этот метод реализован в ОС семейства Linux и FreeBSD. К достоинствам этого метода можно отнести его достаточную эффективность. Недостатком метода является необходимость модификации реализации стека TCP/IP, которая, по мнению некоторых специалистов в области сетевых технологий [13], противоречит спецификации протокола TCP.

2.2 TCP RST Cookies

Этот метод заключается в том, что клиенту, приславшему запрос на соединение, отправляется SYN+ACK пакет, с неверными параметрами. В соответствии со спецификацией протокола TCP [10] клиент должен прислать RST пакет. Если такой пакет приходит к серверу, то сервер добавляет клиента в список "благополучных" клиентов. Достоинством этого метода является проверка клиента, при этом к недостаткам можно отнести несовершенство механизма такой проверки. Во-первых, эта проверка требует дополнительного времени на отправку некорректного SYN + ACK и получение RST пакетов. В открытой литературе недостаточно информации об этом методе, что затрудняет анализ его достоинств и недостатков. В частности, возникает вопрос, по какому критерию сервер идентифицирует клиентов. Если это только IP адрес, то злоумышленник может при организации атаки устанавливать в качестве адреса отправителя адрес уже проверенного сервером клиента [14].

2.3 Floodgate

Метод заключается в том, что в условиях атаки сервер обрабатывает не все SYN пакеты, а только их часть. Обычно эта часть выбирается случайным образом. Достоинством этого метода является простота реализации, однако это выливается в его же основной недостаток - низкую эффективность, т.к. заявки легальных пользователей будут отфильтровываться системой наравне с вредоносным трафиком [15].

2.4 Предмаршрутизационная фильтрация

Этот метод заключается в том, что каждый маршрутизатор в сети контролирует IP адреса отправителей в маршрутизируемом им трафике, выявляет пакеты с ложными адресами и уничтожает их. Главным достоинством этого метода является то, что он полностью исключает возможность атаки с подложных адресов, что является главным препятствием для ее эффективного обнаружения и блокирования. Недостатком метода является его дороговизна, обусловленная необходимостью замены огромного числа действующих в настоящее время в сети Internet маршрутизаторов [14].

2.5 Random/Old Drop

Метод основан на том, что некоторые из полуоткрытых соединений закрываются сервером. При этом в случае Random модификации закрываются случайно выбранные соединения, а в случае Old - те полуоткрытые соединения, которые существуют дольше остальных. Достоинством такого метода является простота реализации, а главным недостатком - низкая эффективность фильтрации трафика, при которой с высокой вероятностью будут закрыты соединения с легальными клиентами [14].

2.6. SYN-Proxy

Этот метод требует дополнительный прокси-сервер, назначением которого является обработка SYN пакетов. Он служит посредником между клиентом и сервером. Если прокси-серверу удалось установить соединение с клиентом, то клиент допускается к ресурсам главного сервера. Достоинством данного метода является то, что ресурсы основного сервера используются с большей эффективностью, а недостатки заключаются в незащищенности прокси-сервера от атаки и сложность реализации [14].

2.7 Stack Tweaking

Заключается в изменениях настройки параметров протокола TCP на сервере. Как правило, этими параметрами являются: таймаут перед закрытием полуоткрытого соединения, максимально возможное количество полуоткрытых соединений и время ожидания ответного ACK-пакета. Достоинством метода является возможность повышения эффективности работы сервера за счет учета параметров сервера и сети. Недостатки заключаются в том, что это метод не работает против интенсивной атаки и требует высокой квалификации администратора [12].

2.8 Blacklisting

Заключается в том, что сервер не обслуживает заявки, поступающие от клиентов, внесенных в "черный список" [15]. Этот метод малоэффективен в виду того, что обычно атаки производятся с подставных адресов. Этот метод был бы эффективен при использовании совместно с методом предмаршрутизационной фильтрации, рассмотренном в пункте 2.4.

Таким образом, в настоящее время существуют различные механизмы обнаружения и противодействия TCP SYN атаке. Наиболее эффективным из них является метод SYN Cookies, однако он, как и все другие, имеет недостатки, такие как необходимость внесения соответствующих изменений в реализацию стека протоколов TCP/IP на защищаемом сервере, недостаточная эффективность обнаружения атаки из-за отсутствия методики выбора конкретных значений для параметров защиты. В связи с этим, проблема TCP SYN атак требует новых эффективных решений, и тематика данной работы является чрезвычайно актуальной.

3. МАТЕМАТИЧЕСКАЯ МОДЕЛЬ TCP-SYN АТАКИ

Целью магистерской работы является создание методики обнаружения TCP SYN атаки, в основе которой находится математическая модель, учитывающая особенности среды, для которой разрабатывается методика. В связи с этим на начальном этапе исследований стал вопрос о том, какой математический аппарат целесообразно использовать для построения наиболее эффективной модели. После анализа существующих направлений современной науки было принято решение использовать теорию систем массового обслуживания, специфика которой идеально подходит для решения поставленной задачи. Ниже приведено описание некоторых понятий, используемых в работе. Подробнее с этим разделом теории вероятностей можно ознакомиться здесь [16].

3.1 Краткие сведения из теории систем массового обслуживания

Под системой массового обслуживания [16] обычно понимается совокупность обслуживающих приборов и обслуживаемых требований (заявок) из некоторого входящего потока требований.

Число приборов в системе массового обслуживания может быть любым. Основной характеристикой прибора является время обслуживания одного требования этим прибором. Этот показатель характеризует не качество обслуживания, а пропускную способность прибора. Время обслуживания обычно непостоянно. Оно зависит от различных факторов. Поэтому в общем случае эта величина является случайной [16]. При этом в теории массового обслуживания считают, что продолжительность обслуживания различных требований одним прибором есть независимые случайные величины с одним и тем же законом распределения. Наиболее часто предполагают, что это закон является показательным. Его применяют в тех случаях, когда время обслуживания подавляющего большинства требований мало и только для сравнительно небольшой части требований оно велико. При показательном распределении времени обслуживания требований теоретические рассуждения существенно упрощаются, а многие окончательные результаты оказываются справедливыми и для произвольного закона распределения, но с тем же средним временем обслуживания [16].

Так же в теории массового обслуживания принято считать, что входящий поток требований распределен по пуассоновскому закону распределения. По определению пуассоновский поток должен удовлетворять трем следующим требованиям: стационарности, отсутствия последствия и ординарности.

Поток называется стационарным, если вероятность поступления k требований в течение промежутка времени t не зависит от момента начала этого промежутка.

Под отсутствием последствия понимается то, что вероятность поступлений k требований в систему после произвольного момента времени t0 не зависит от того, когда и сколько поступило требований до этого момента времени. Из этого следует взаимная независимость поступления того или иного числа требований на обслуживание в непересекающиеся промежутки времени.

Свойство ординарности означает, что вероятность поступления более одного требования за малый промежуток времени dT есть величина более высокого порядка малости, чем dT. Оно выражает практическую невозможность одновременного поступления двух или более требований.

Стоит отметить, что многие реальные потоки являются приближенно пуассоновскими.

Пуассоновский поток полностью определяется одним параметром - интенсивностью потока л.. На практике величину л находят статистически. При этом одновременно, например, при помощи критерия согласия , проверяют, действительно ли рассматриваемый поток требований с заданной вероятностью можно считать пуассоновским.

Математический аппарат теории массового обслуживания позволяет определить основные параметры системы: среднее число занятых приборов, вероятность отказа в обслуживании требования, среднюю длину очереди, среднее время простоя требования в очереди и т.д.

Для нас наибольший интерес будет представлять среднее число занятых приборов [16]:

(3.1)

Где n - количество приборов в системе,

,

- интенсивность потока требований,

- математическое ожидание времени обслуживания одного требования.

- вероятность нахождения в системе ровно k требований

(3.2)

Приведенные соотношения позволяют определить среднее количество заявок, находящихся в системе массового обслуживания, что будет использовано ниже при построении методики обнаружения рассматриваемой атаки.

3.2 Поток требований СМО

Будем рассматривать множество TCP SYN пакетов, поступающих к серверу, в качестве входящего потока заявок. Покажем, что в определённых условиях этот поток можно считать пуассоновским.

Интенсивность этого потока может зависеть от времени, если рассматривать его в течение достаточно больших промежутков времени. Например, в течение суток в дневное время его интенсивность может быть больше, чем ночью. Тем не менее, при уменьшении продолжительности рассматриваемого промежутка интенсивность поступающих TCP SYN заявок стабилизируется и может рассматриваться как некоторая постоянная величина. Для различных сетей продолжительность такого промежутка может быть разной (как правило, от нескольких минут до нескольких часов) и может быть установлена экспериментально.

В этом случае вероятность поступления k требований в интервале времени (0, t) равна вероятности поступления k требований в любом другом интервале той же длительности (a, a + t) в пределах заданного промежутка. Таким образом, рассматриваемый поток обладает свойством стационарности.

Далее будем считать, что пользователи обращаются к ресурсам сервера независимо друг от друга. Если при одном обращении пользователя к серверу устанавливается одно TCP соединение, то поток требований обладает свойством отсутствия последствия (в соответствии с определением этого свойства [16]). Однако некоторые приложения прикладного уровня взаимодействуют друг с другом посредством параллельно установленных TCP соединений. Покажем, что и в этом случае входящий поток обладает указанным свойством.

Рассмотрим влияние процесса обращения браузера к web-странице на поток TCP SYN пакетов, поступающих к серверу. Как правило, большинство возвращаемых сервером страниц содержат гиперссылки на другие ресурсы, такие как изображения, элементы ActiveX, flash-анимации и другие элементы, выводимые на html странице в окне браузера. В соответствии со спецификацией протокола HTTP [17], для получения каждого из ресурсов браузер должен сделать отдельный запрос к web серверу, и, следовательно, установить TCP-соединение. Если web-страница содержит i элементов, требующих немедленной загрузки, то при выполнении N обращений количество TCP соединений будет равно (i+1)N. В этом случае можно рассматривать в качестве одного требования отправление (i+1) SYN пакетов. Очевидно, что каждое обращение к web-странице можно рассматривать как одну заявку, и интенсивность потока таких требований будет в (i+1) раз меньше. В предлагаемой далее модели возможно введение дополнительного коэффициента для учёта объёдинения таких взаимосвязанных SYN пакетов в одну заявку. Объединенные заявки являются независимыми, т.к. пользователи обращаются к ресурсам сервера независимо друг от друга. Из этого следует, что входящий поток требований обладает свойством отсутствия последствия.


Подобные документы

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.