Распределенные атаки на отказ

 

Введение


Широкое распространение стека протоколов ТСР/IP и использование технологий Intranet обнажило слабые стороны IP-сетей. Создавая свое детище, архитекторы стека ТСР/IP не видели причин особенно беспокоиться о защите сетей, которые строятся на его основе. Они и не допускали, что когда-нибудь отсутствие эффективных средств защиты станет основным фактором, сдерживающим применение протоколов ТСР/IP.

Остановимся на более детальном рассмотрении важных проблем недостаточной информационной безопасности протоколов ТСР/IP, IP- сетей и служб Internet. Эти изъяны являются "врожденными" практически для всех протоколов стека ТСР/IP и служб Internet. Большая часть этих проблем связана с исторической зависимостью Internet от операционной системы UNIX. Сеть ARPANET строилась как сеть, которая связывает исследовательские центры, научные, военные и правительственные учреждения, большие университеты США. Эти структуры использовали операционную систему UNIX в качестве платформы для коммуникаций и решения собственных заданий. Поэтому особенности методологии программирования в среде UNIX и его архитектура наложили отпечаток на реализацию протоколов обмена ТСР/IP и политики безопасности в сети. Через открытость и распространенность система UNIX оказалась любимой добычей хакеров. Тому не удивительно, что и набор протоколов TCP/IP имеет "прирожденные" недостатки защиты.

На практике ІР-сети уязвимы для ряда способов несанкционированного вторжения в процесс обмена данными. По мере развития компьютерных и сетевых технологий список возможных типов сетевых атак на ІР-сети постоянно расширяется. Сегодня наиболее распространенными являются следующие варианты атак:

Подслушивание. Большинство данных передаются по компьютерным сетям в незащищенном формате (открытым текстом), что позволяет злоумышленнику, который получил доступ к линиям передачи информации вашей сети, подслушивать или считывать траффик. Подслушивание в компьютерных сетях называется слежкой (sniffing). Если не использовать служб, которые обеспечивают стойкую шифровку, то данные, которые передаются по сети, будут доступны для чтения. Для подслушивания в сетях могут использоваться так называемые, снифферы пакетов. Сниффер пакетов является прикладной программой, которая перехватывает все сетевые пакеты, которые передаются через определенный домен. Некоторые сетевые дополнения передают данные в текстовом формате(Telnet, FTP, SMTP и так далее), и с помощью сниффера можно узнать полезную, а иногда и конфиденциальную информацию (например, имена пользователей и пароли).

Парольные атаки. Хакеры могут проводить парольные атаки с помощью целого ряда методов, таких, как IP-спуффинг и сниффинг пакетов, атака полного перебора (brute force attack), "троянский конь". Перехват паролей и имен пользователей, которые передаются по сети в незашифрованной форме, путем "подслушивания" канала (password sniffing) создает большую опасность, поскольку пользователи часто применяют один и тот же логин и пароль для огромного количества дополнений и систем. Многие пользователи вообще имеют один пароль для доступа ко всем ресурсам. Если дополнение работает в режиме "клиент-сервер", а аутентификационные данные передаются по сети в текстовом формате, эту информацию с большой достоверностью можно использовать для доступа к другим корпоративным или внешним ресурсам. Хотя логин и пароль часто можно получить с помощью IP-спуффинга и сниффинга пакетов, хакеры часто пытаются подобрать пароль и логин, используя для этого многочисленные попытки доступа. Часто для атаки полного перебора используется специальная программа, которая дает возможность получить доступ к ресурсу общего пользования (например, к серверу). В результате хакер допускается к ресурсам на правах обычного пользователя, пароль которого был подобран. Если этот пользователь имеет значительные привилегии доступа, хакер может создать себе "проход" для будущего доступа.

"Атаки на отказ". Типичный сценарий атаки на отказ заключается в следующем: нападающий инициирует начало атаки, после чего одно или несколько источников атаки начинают посылать злоумышленные пакеты через сеть Интернет, который приводит к блокированию услуги для клиентов. Как правило при атаке нападающий не использует свой собственный компьютер, потому источники атаки, в действительности, являются агентами - машинами третьих лиц, которые были взяты под контроль атакующим. Атака может блокировать ключевой ресурс путем использования определенных слабостей в программном обеспечении жертвы (атаки уязвимости - vulnerability attacks) или путем пересылки больших объемов траффика, который жертва должна обрабатывать (атаки переполнения - flooding attacks). Атаки уязвимости обычно используют пакеты специального типа или содержания для использования конкретных уязвимостей. Как правило для успешного использования уязвимости достаточно нескольких пакетов, потому такие атаки имеют низкий объем траффика. Эти два свойства (специальный вид пакетов и низкие объемы) упрощают противодействие таким атакам. Во-первых, уязвимости можно исправлять регулярным обновлением версий программного обеспечения. Во-вторых, специальные типы пакетов можно отлавливать и обрабатывать отдельно. При атаке переполнения происходит перегрузка ресурсов жертвы большими объемами. С такой атакой тяжелее бороться, поскольку пакеты могут быть любого типа, а большой объем траффика мешает детальному анализу частот. Если в атаке на отказ принимает участие одна машина, то наилучшим решением будет обустроить машину жертвы дополнительными ресурсами. В этом случае атакующему будет сложно найти машину с достаточными возможностями для перегрузки компьютера жертвы.



Распределенные атаки на отказ


Распределенная атака на отказ(Distributed denial - of - service(DDoS)) это атака на отказ, который реализуется из нескольких подконтрольных машин (агентов). При наиболее распространенном сценарии все машины, задействованные в схеме одновременно начинают посылать пакеты жертве с максимальной интенсивностью. Большое количество агентов позволяет быстро загрузить ресурсы жертвы как основные так и резервные. Типичная DDoS атака состоит из двух этапов. На первом этапе происходит поиск уязвимых систем в сети Интернет и установление на них инструментов атаки. Этот этап также известен как превращение компьютеров на "зомби". На втором этапе атакующий дает команду своим "зомби" через защищенный канал на осуществление атаки против выбранной жертвы. Заметим, что пакеты трафика атаки могут использовать фальшивую IP адрес источника, чтобы усложнить для жертвы идентификацию атакующих компьютеров. Количество управляемых агентов при осуществлении распределенной атаки на отказ может колебаться от нескольких десятков до 100000 скомпроментированних машин. Ярким примером такой атаки было распространение черва "Code Red", который захватывал машины через эксплойт в сервере Microsoft's IIS, чтобы через определенное время начать атаку на отказ сайту Белого Дома. Анализ этого события показал, что существует несколько особенностей, присущих только распределенным атакам на отказ. Во-первых, объем трафика распределенной атаки может достигать 10 Гигабит в секунду, которая может загрузить возможности большинства корпоративных Интернет соединений. Во-вторых, при распределенной атаке пакеты приходят из многих источников, которые географически разнесены. Это значительно усложняет отслеживание IP адресов. В-третьих, трафик от каждого источника может не сильно отличаться от обычного трафика. Таким образом, трафик распределенной атаки может казаться полностью "законным", что существенно усложняет задачу фильтрования фальшивых пакетов без вреда обычным пользователям. Собственно, атаки такого типа подобны скоплению (flash crowd), которое возникает когда большое количество обычных пользователей обращается к серверу одновременно. Как правило для успешной распределенной атаки нужно большое количество источников трафика (несколько тысяч). К сожалению, в наше время создания такой армии подконтрольных агентов достаточно простое учитывая автоматизированные хакерские инструменты, которые легко можно найти в сети.


Отраженные распределенные атаки на отказ


Как уже отмечалось, при проведении атак на отказ часто используется подделка адреса - то есть подмена IP адреса источника, который содержится в заголовке пакета. Первая выгода от использования подделки заключается в том, что это значительно усложняет поиск агентов атаки. Поскольку риск раскрытия агентов низкий, то информация на них (например, файлы из логами доступа) не может быть проанализирована с целью локализации компьютера атакующего. Этот фактор еще больше поощряет к проведению таких атак. Более того, это позволяет атакующему использовать эти компьютеры для дальнейших атак. Другой выгодой использования подделки IP является возможность осуществления отраженных атак (reflector attacks). Атакующий посылает запрос (от имени жертвы) на определенный сервис, который генерирует большие пакеты ответа на небольшие запросы(эффект усиления). При атаке генерируется максимально возможное количество пакетов-запросов от имени жертвы и отсылает на общедоступные серверы. Серверы начинают отвечать, посылая объемные пакеты-ответы в адрес жертвы (таким образом, атака усиливается и отражается), переполняя ее каналы. Во время атаки атакующий агент посылает большое количество UDP DNS запросов при этом подделывая пакеты адресом жертвы. Все ответы серверов придут по сфальсифицированному адресу. Ответ сервера может быть значительно больше за DNS запрос, который является потенциальной возможностью усиления атаки. Кроме того, серверы не хранят никакой информации о пользователях, которые обращаются к ним с запросом. Остановить этот сервис также нельзя, поскольку его использует большое количество обычных пользователей. В зависимости от ресурсов и объема запросов этих серверов, можно предупредить отраженную атаку путем ограничения количества ответов по определенному адресу. Однако этот подход требует хранения в памяти определенной информации и потенциально может загружать значительные объемы ресурсов.


Ботнеты


Ботнет(Botnet) - это жаргонный срок, который означает группу программных агентов или ботов, которые функционируют автономно. Также это слово может относиться к сети компьютеров, которые используют распределенное программное обеспечение. На сегодняшний момент, компьютеры, которые имеют мощный пропускной выход в Интернет становятся желательной целью для атакующих. Нападающий может взять такой компьютер под свой контроль путем прямой или непрямой атаки. Прямая атака заключается в пересылке злоумышленных пакетов, которые используют эксплойты компьютерной системы, например операционной системы. Как правило, эти атаки осуществляются автоматизированными средствами, что позволяет за короткий срок захватить значительное количество машин. Необходимым условием проведения прямой атаки является наличие на компьютере сервиса с известной уязвимостью. Например, Blaster Worm распространялся с помощью эксплойта в службе Отдаленный Вызов Процедур (Remote Procedure Call(RPC)), что позволяло выполнить на отдаленном компьютере злоумышленный скрипт. К сожалению, количество уязвимостей растет из года в год. На рисунке 1 изображено статистику количества уязвимостей на протяжении последних шести лет, данные одержаны с сайта [1].

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


Рис. 1. Количество задокументированных уязвимостей


Взаимодействие из ботнет


Как правило для контроля ботами используют каналы Internet Relay Chat(IRC). IRC - это одна из форм общения в сети Интернет. Он был разработан для коммуникации между группами через дискуссионные форумы, которые называются каналами (channels), но может использоваться и для общения один-один. После инсталляции на скомпрометированный компьютер, бот автоматически присоединяется к выделенного IRC канала и ожидает дальнейших инструкций. Эта группа скомпрометированных компьютеров, которая находится под управлением одного человека и называется ботнет. В действительности, IRC каналы не наилучшее решение для управления с точки зрения эффективности и гибкости. С увеличением числа агентов IRC канал может перегружаться. Кроме того использования IRC сервера для коммуникации делает всю систему уязвимой. Выявление и уничтожение такого сервера может прекратить распределенную атаку. Есть две причины, которые предопределяют высокую популярность IRC ботнетов. Во-первых, IRC серверы общеупотребительные и легко доступные, их просто настроить. Во-вторых, как правило атакующие хакеры хорошо разбираются из IRC коммуникациями. Возможны и другие способы координации ботнет, например, с использованием пиринговых сетей.


Функции ботнет

атака отказ ботнет компьютерный

Ботнеты могут использоваться с разной целью. Однако, как правило, основное назначение программного обеспечения ботнет - это осуществление распределенных атак. Каждый тип программы для ботнетов реализовывает определенное множество механизмов атаки на отказ, таких, как SYN flood, ICMP flood или HTTP flood (атаки на отказ, которые будут описаны ниже). Для управления атакой применяется сложная система параметров, таких как частота пересылки и размер пакета. Другой важной особенностью ботнетов является свойство обновлять программную часть из отдаленного серверу. Благодаря этому атакующий может добавлять новые функции и исправлять ошибки в своем коде. Например, он может загрузить на боты новый механизм атаки, гибко реагировать на изменения в защитном обеспечении жертвы, руководить атакой в течение ее осуществления.



Классификации атак на отказ


На сегодняшний момент существует достаточно много разных видов атак на отказ, каждая из которых использует определенную особенность построения сети или уязвимости программного обеспечения. Например, атаки могут осуществляться путем непосредственной пересылки большого количества пакетов (UDP, ICMP flood), использования промежуточных узлов (Smurf, Fraggle), передачи слишком длинных пакетов (Ping of Death), некорректных пакетов (Land) или большого количества трудоемких запросов. Заметим, что в течение последнего времени происходит развитие этого направления деятельности и появление новых видов и способов атак. Из последних тенденций можно отметить появление атак ухудшения качества (Quality Reduction Attack) и низкочастотных атак (Low Rated Attack) и, безусловно, этот процесс будет продолжаться, нуждаясь новых исследований и разработки новых методов противодействия. Основные существующие классы атак достаточно хорошо изучены. Представляют интерес, однако, разные подходы к их классификации. В роботе [5] атаки классифицированы согласно протоколам, по которым они осуществляются. Выделенные следующие атаки: SYN flood, TCP reset, ICMP flood, UDP flood, DNS request, CGI request, Mail bomb, ARP storm и атаки на алгоритмическую сложность.


Рис. 2. Классификация атак на отказ

В отчете Prolexic Technologies [6] приводится классификация атак (Рис. 2). Выделяют три тип атак:

Targeted attacks (используют недостатки в протоколах, прикладных программах).

- Consumption attacks (загружают ресурсы системы).

Exploitative attacks (используют уязвимости, ошибки кода).

Распределенные атаки на отказ (по способу реализации и объекта действия) разделяют на два класса:

истощение ресурсов сети;

истощение ресурсов узла.

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

UDP/ICMP flood заключается в пересылке значительного количества больших (фрагментируемых) пакетов по протоколам UDP/ICMP;

Smurf/Fraggle заключается в пересылке пакетов UDP/ICMP ECHO на широкий диапазон адресов с сфальсифицированной IP адресом.

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

TCP SYN - сознательное прерывание процесса установления соединения и создания большого количества полуоткрытых TCP/IP соединений (поскольку это число ограничено, то узел перестает принимать запросы на соединение).

Land - пересылка пакета TCP SYN с одинаковыми адресами получателя и источника и портами (при посылке таких пакетов узел из Windows NT зависает).

Ping of Death - посылка пакета "ping" очень большой длины, который ОС не может обработать.

Пересылка некорректных пакетов при обработке которых на узле могут возникнуть ошибки.

Пересылка трудоемких запросов для загрузки узла.

Критерии, которые используются в классификации, охватывают следующие аспекты:

Стадию реализации атак;

Степень их автоматизации;

Стратегию сканирования и распространения;

Механизмы взаимодействия агентов;

Состав и организацию агентов;

Уязвимости, что используются;

Способы выполнения атак;

Состав пакетов атаки;

Индивидуальное поведение агентов;

Информацию об агентах атаки;

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

- Тип атаки. Будем рассматривать атаки двух типов: типичную (когда атака идет из одной машины) и распределенную (когда используются машины-агенты).

- Направление атаки - определяет конкретную часть инфраструктуры сети, которая испытывает атаку. Выделим две части: ресурсы сети (то есть пропускных каналов) и ресурсы целы (то есть ресурсы конкретного компьютера) [8].

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

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


Рис. 3. Характеристики атак на отказ


Описание основных видов атак


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


Прямые атаки


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

HTTP Flood. Самой популярной и наибольшей компонентой сети Интернет является World Wide Web(www) - или Всемирная Паутина. www-программы, как правило, используют протокол Hypertext Transfer Protocol (HTTP), который инициирует запрос путем установления Transmission Control Protocol (TCP) соединение с определенным портом(как правило 80 порт). Из-за этого большинство защитного программного обеспечения оставляют TCP порт 80 открытым для свободного прохождения HTTP трафика. Широкая распространенность WWW систем сделала HTTP чудесной мишенью для нападающих. Собственно говоря, атака HTTP flood связана с бомбардировкой Веб сервера обычными HTTP запросами. Согласно недавним исследованиям [11], HTTP flood атака входит в функциональный набор абсолютного большинства ботнет. Для того, чтобы послать HTTP запрос необходимо сначала установить действительное TCP соединения, которое требует наличия действительной IP адреса. Нападающий здесь может использовать IP адрес ботов. Более того, нападающий может сконструировать особенный запрос для увеличения силы атаки или для того, чтобы избежать выявления. Например, выдать боту инструкцию послать HTTP запрос на загрузку большого файла. Тогда компьютеру жертвы необходимо считать этот файл из диска, загрузить в память, загрузить в пакеты и посылать их в ботнет. Следовательно, даже простой HTTP запрос может привести к значительной загрузке процессору, памяти, устройств вводу/вывода и линии соединения из Интернет. Однако такое поведение трафика, как в предыдущем примере является подозрительной. Повторные запросы на загрузку могут быть выявлены и блокированы. Более сложной стратегией является имитация обычного трафика. Нападающий может задать ботам программу пересылки HTTP запросов, анализа ответов и рекурсивного открытия ссылок. В этом случае HTTP запросы от атакующей сети очень подобные на нормальный веб трафик, что усложняет фильтрацию атак этого типа.

ICMP атаки. В атаках этого типа используются особенности реализации протокола ICMP. Поскольку этот протокол является внутренним механизмом поддержки работоспособности IP- сетей, то он естественно вызывал повышенное внимание нападающих. Выделяют [12] несколько типов. Первый тип - атака разрыва соединения (connection - reset attacks) использует ICMP- сообщения, которые сигнализируют о фатальной ошибке и вызывают к прекращению TCP- соединение. Если нападающий сфальсифицирует такой пакет и пошлет его жертве, то ее соединение с сервером будет разорвано. Для формирования такого пакета ему нужно знать IP адреса жертвы и сервера, порт и уникальное число, которое идентифицирует соединение. Для подбора последней величины ему достаточно послать всего 65536 пакеты. Эта слабость была выявлена 13 марта 2005 года и зацепила большое количество операционных систем, маршрутизаторов. В частности, Windows XP, Windows 2000, Windows 2000 Server, Windows 98. Второй тип [13] заключается в сужении пропускной способности (throughput - reduction attacks), при этом используются ICMP- сообщения, которые требуют от источника уменьшения пропускного канала. Это служебные пакеты, которые посылаются сетью в случае ее перегрузки. Для их подделки используется аналогичный вышеприведенному набор параметров. Наконец третий тип [13] связан с пакетами ICMP, которые отвечают за допустимую фрагментацию пакетов. Посылая сфальсифицированный пакет в адрес источника нападающий добивается ситуации когда большой файл посылается мизерными кусочками, что, конечно, снижает скорость передачи.

SYN Flood. Перед тем как перейти к описанию SYN flood атаки нужно вспомнить последовательность установления TCP соединений. TCP соединения устанавливается между клиентом, который инициирует соединение и сервером, который получает запрос. В начале каждого TCP соединения клиент обращается к серверу для выполнения процедуры, которая называется тройное рукопожатие (a three - way handshake) [14]. Во-первых, клиент посылает серверу SYN пакет, спрашивая о соединении. Потом сервер отвечает на запрос пакетом SYN - ACK и хранит информацию о запросе на соединение в стеке памяти. Структуры, которые создаются в памяти, как правило, достигают 280 Байт. В этот момент времени соединение находится в полуотворенном состоянии, или в состоянии SYN RECVD(ожидание). Для предупреждения исчерпания ресурсов каждая операционная система имеет определенный лимит соединений, которые могут находиться в состоянии SYN RECVD. По получении SYN - ACK пакета клиент подтверждает свой запрос с помощью пакета ACK. Когда сервер получает пакет ACK он проверяет стек в поисках соединения, которое подтверждается этим пакетом. Если такое соединение существует, то оно переводится из состояния SYN RECVD в состояние ESTABLISHED(установленное). После этого тройное рукопожатие завершено и начинается передача данных. Кроме описанного "естественного" способа удаления соединения, которое находится в состоянии SYN RECVD также можно послать пакет RST(рестарт) или ожидать пока время ожидания превысит определенный лимит, отведенный на установление соединения. Атака SYN flood использует уязвимости TCP тройного рукопожатия, а именно, ту особенность, что сервер должен размещать в памяти данные для любого входного SYN пакета, независимо от его аутентификации. При проведении SYN flood атаки нападающий посылает SYN пакеты с сфальсифицированной IP адресом, то есть указывает IP адрес, которого не существует. В этом случае во время выполнения тройного рукопожатия сервер помещает запрос на соединение в память и ожидает в подтверждение запроса от клиента. Поскольку сфальсифицированного нападающим адреса может просто не существовать, то пакетов подтверждения сервер не получает и запрос остается в памяти в течение определенного времени. За короткое время эти запросы заполняют стек памяти, который предназначен для их хранения (как правило его объем не очень большой). В результате новые запросы на соединение от пользователей не могут быть обработаны и сервисы системы оказываются заблокированными. Возможной модификацией этой атаки (стойкой к фильтрации адресов) является ситуация, когда атака осуществляется из ботов с использованием действительной IP адреса. При этом система настраивается игнорировать SYN/ACK пакеты жертвы. SYN floods остается одним из наиболее мощных методов поглощающих атак.

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

Reset(RST) Flood. Атаки типа SYN flood используют уязвимости установления соединения. В отличие от них, атаки RSR Flood направлены на уже установленные соединения. Пакеты с меткой RST используются для переустановления соединения (например в случае когда на одной из машин случился сбой). Если две машины С и В обмениваются данными через установленное соединение, и нападающий А решает атаковать С, то для осуществления атаки ему нужно вычислить/подобрать правильное число идентификации соединения (при разрыве соединения подтверждения пакетом АСК не используется). Теперь нападающий может прервать соединение В и С путем послания сфальсифицированного пакета. Более того, он может загружать машину пакетами от имени В поскольку С не подозревает, что соединение разорвано.

FIN Attack. Атака FIN attack использует пакеты FIN, которые отвечают за окончание TCP соединения. Нападающий пытается установить серию новых соединений и сразу по установлении закрыть их, не послав никаких данных. Идея заключается в том, чтобы загружать сервер большим количеством соединений. Преимущество этой атаки для атакующего заключается в том, что поскольку на пакет FIN машина должна ответить пакетом ACK он может сразу определить или успешные его действия.

WinNuke. Одним из первых и классических случаев эксплойтной атаки на отказ является WinNuke, который появился 7 мая 1997 года. Автор метода разместил описание и текст программы на нескольких сайтах новостей, что обусловило быстрое его распространение. Первой жертвой стал сервер www.microsoft.com, который был недосягаем для пользователей с 9 по 12 мая. Конечно, что и много других серверов, которые работали на системе Windows NT также стали жертвами атак. Сущность WinNuke очень простая. Рядом с обычными данными стандарт включает возможность пересылки по TCP- соединению и срочных (Out Of Band, OOB) служебных данных. На уровне форматов пакетов TCP это выражается в ненулевом значении соответствующего поля (urgent pointer). Большинство компьютеров, которые работают под Windows используют протокол NetBIOS, которому для работы нужно три IP- порты: 137, 138, 139. Оказалось, что если соединиться из Windows - машиной через 139 порт и послать туда несколько байт OOB- данных, то NetBIOS не зная как их обрабатывать просто подвесить машину. Под действие этой атаки подпадают системы Windows 95, Windows NT до 4.0.

Ping of Death. В этой атаке используется особенности реализации протокола ICMP. Поскольку этот протокол является внутренним механизмом поддержки работоспособности IP- сетей, то он естественно вызывал повышенное внимание нападающих. Особенность заключается в том, что ICMP- пакеты имеют определенные привилегии в обработке, потому ping большого размера может парализовать работу компьютера или даже всей сети. Существует много реализаций программ, которые используют эту ошибку: Ping of Death, SPing, Jolt, SSPing, IceNuke, IcePing, и другие. Как оказалось, Windows- системы неадекватно реагируют на получение сильно фрагментируемого ICMP- пакета (кусочками к одному килобайту) большого размера(немного больше 64 килобайт). Реакция заключается в полном повисании компьютера. В конце июня 1997 года жертвой Ping of Death стал сервер Майкрософт. В отличие от WinNuke жертвами этой атаки могут стать не только Windows-системы но и Mac OS и некоторые версии Unix.

Teardrop. Данный тип атак на отказ использует эксплойт реализации протокола, согласно которому если пакет слишком большой для обработки, то он должен разбиваться на два фрагмента. Эти фрагменты содержат информацию об относительном смещении начала второго пакета. При приеме пакетов система прорабатывает информацию о смещении и формирует целый пакет. При атаке teardrop нападающий подделывает значение смещений второго или следующих пакетов и приводит к тому, что длина пакета становится менее за нуль или в машинной логике очень большим числом. Это приводит к копированию огромного блока памяти, которая затирает системные области. После появления атаки Teardrop возникло несколько модификаций, которые были способны пробивать Windows NT с установленным патчем от обычного Teardrop. Наиболее известны из них Bonk(Boink), NewTear, SynDrop. Указанные атаки могут применяться против систем Windows 3.1/95/NT, Linux(до 2.0.32 и 2.1.63).

LanD. Следующий метод атаки, который называется lanD известен тем, что в свое время поражал большое количество систем. Кроме Windows NT, под его действие подпадали Mac OS и много вариантов Unix(от бесплатных к коммерческим), и такие экзотические системы, как QNX и BeOS, и даже аппаратные маршрутизаторы (в том числе Cisco и 3Com). Суть атаки land заключается в следующем: при установлении TCP соединения ссылается SYN- пакет с адресом отправителя, который совпадает с адресом. Пакет ссылается на любой открытый порт. Реакцией Windows- компьютера на land является полное зависание. Атака была эффективна против операционных систем Windows 9х/NT. В 2005 году была выявленная уязвимость в системах Windows XP и Windows 2003 Server, которая привела к появлению модификации атаки lanD - Remote LanD.



Нацеленные на ресурсы сети


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



Вывод


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

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



Литература


1.http://www.symantec.com

.T. Peng, C. Leckie, and K. Ramamohanarao Survey of Network-Based Defense Mechanisms Countering the DoS and DDoS Problems // ACM Computing Surveys, Vol. 39, N 1, Article 3, Publication date: April 2007.

.http://securityvulns.com/articles/codered/

.V. Parxson. An analysis of using reflectors for distributed denial-of-service attacks // ACM SIGCOMM Computer Communication Review, Vol. 31, N 3, July 2001, pp 38 - 47.

.Y. Xiang, W. Zhou, M. Chowdhury. A Survey of Active and Passive Defence Mechanisms against DDoS Attacks. Technical Report, TR C04/02, School of Information Technology, Deakin University, Australia, March 2004.

.http://www.prolexic.com/downloads/whitepapers/Prolexic_WhitePaper-DDoS.pdf

.S. Specht and R. Lee Distributed Denial of Service: Taxonomies of Attacks, Tools, and Countermeasures. Proceedings of the 17th International Conference on Parallel and Distributed Computing Systems, 2004 International Workshop on Security in Parallel and Distributed Systems, pp. 543-550, September 2004.

8.А. В. Уланов, И. В. Котенко Защита от DDoS-атак: механизмы предупреждения, обнаружения, отслеживания источника и противодействия // Защита информации. INSIDE, № 1-3, 2007.

9.MIRKOVIC, J., DIETRICH, S., DITTRICH, D., AND REIHER, P. Internet Denial of Service: Attack and Defense // Mechanisms. Prentice Hall, Engle Wood Cliffs, NJ. 2005

10.Rocky K. C. Chang, Defending against Flooding-Based Distributed Denial-of-Service Attacks: A Tutorial, IEEE Communications Magazine, October 2002, pages: 42-51

.http://www.honeynet.org/papers/bots/

.F. Gont, ICMP attacks against TCP. http://www.gont.com.ar/drafts/draft-gont-tcpm-icmpattacks-03.txt.

.Watson, P., "Slipping in the Window: TCP Reset Attacks ", 2004 CanSecWest Conference, 2004.

.http://condor.depaul.edu/~jkristof/technotes/tcp.html


Введение Широкое распространение стека протоколов ТСР/IP и использование технологий Intranet обнажило слабые стороны IP-сетей. Создавая свое детище, архи

Больше работ по теме:

КОНТАКТНЫЙ EMAIL: [email protected]

Скачать реферат © 2017 | Пользовательское соглашение

Скачать      Реферат

ПРОФЕССИОНАЛЬНАЯ ПОМОЩЬ СТУДЕНТАМ