Сделай Сам Свою Работу на 5

Флуд канала связи и TCP-подсистемы





Любой компьютер, имеющий связь с внешним миром по протоколу TCP/IP, подвержен таким типам флуда:

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

UDP-флуд — этот тип флуда атакует не компьютер-цель, а его канал связи. Провайдеры резонно предполагают, что UDP-пакеты надо доставить первыми, а TCP- могут подождать. Большим количеством UDP-пакетов разного размера забивают канал связи, и сервер, работающий по протоколу TCP, перестаёт отвечать.

ICMP-флуд — то же самое, но с помощью ICMP-пакетов.

Флуд прикладного уровня

Многие службы устроены так, что небольшим запросом можно вызвать большой расход вычислительных мощностей на сервере. В таком случае атакуется не канал связи или TCP-подсистема, а непосредственно служба (сервис) — флудом подобных «больных» запросов. Например, веб-серверы уязвимы для HTTP-флуда, — для выведения веб-сервера из строя может применяться как простейшее GET /, так и сложный запрос в базу данных наподобие GET /index.php?search=<случайная строка>.



Выявление DoS-атак

Существует мнение, что специальные средства для выявления DoS-атак не требуются, поскольку факт DoS-атаки невозможно не заметить. Во многих случаях это действительно так. Однако достаточно часто наблюдались удачные DoS-атаки, которые были замечены жертвами лишь спустя 2-3 суток. Бывало, что негативные последствия атаки (флуд-атаки) выливались в излишние расходы на оплату избыточного Internet-трафика, что выяснялось лишь при получении счёта от Internet-провайдера. Кроме того, многие методы обнаружения атак неэффективны вблизи объекта атаки, но эффективны на сетевых магистральных каналах. В таком случае целесообразно ставить системы обнаружения именно там, а не ждать, пока пользователь, подвергшийся атаке, сам её заметит и обратится за помощью. К тому же, для эффективного противодействия DoS-атакам необходимо знать тип, характер и другие характеристики DoS-атак, а оперативно получить эти сведения как раз и позволяют системы обнаружения.



Методы обнаружения DoS-атак можно разделить на несколько больших групп:

Сигнатурные — основанные на качественном анализе трафика.

Статистические — основанные на количественном анализе трафика.

Гибридные (комбинированные) — сочетающие в себе достоинства обоих вышеназванных методов.

Защита от DoS-атак

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

Фильтрация и блэкхолинг. Блокирование трафика, исходящего от атакующих машин. Эффективность этих методов снижается по мере приближения к объекту атаки и повышается по мере приближения к атакующей машине.

Обратный DDOS - перенаправление трафика, используемого для атаки, на атакующего.

Устранение уязвимостей. Не работает против флуд-атак, для которых «уязвимостью» является конечность тех или иных системных ресурсов.

Наращивание ресурсов. Абсолютной защиты естественно не дает, но является хорошим фоном для применения других видов защиты от DoS-атак.

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

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



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

Использование оборудования для отражения DoS-атак. Например DefensePro® (Radware), Периметр (МФИ Софт), Arbor Peakflow® и от других производителей.

Приобретение сервиса по защите от DoS-атак. Актуально в случае превышения флудом пропускной способности сетевого канала.

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

Находится огромная сеть (с кучей машин) на широченном канале, и ей шлются запросы, source IP в которых заменен на IP жертвы. Вся эта байда начинает слать на несчастный IP`шник ответы, думая, что запросы пришли именно от него, забивая по самые уши канал атакуемому и устраивая бедняге мега3.14zDoS :).

Данные приходят, и все 65500 бит записываются в переменную, размер которой 255 бит, - нарушается организация памяти, прога глючит, сервак висит, клиенты не могут получить к нему доступ.

Resource starvation часто очень похож на bandwidth consumption: взломщик опять-таки отсылает кучу запросов на сервер, после чего тому наступает полный 3.14zDoS :). Но на этот раз пакеты не забивают канал хоста-жертвы, а занимают, скажем, все его процессорное время.

Пакеты ping-запросов и ping-ответов незначительно отличаются по размеру, и канал у атакующего и атакуемого забивается в равной степени - 3.14zDoS может произойти обоим :).

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

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

ЧЕТЫРЕ ОСНОВНЫХ ТИПА АТАК DoS

Насыщение полосы пропускания (bandwidth consumption)

Эти атаки основаны на том, что хацкер под завязку заполняет всяческим мусором атакуемую им сеть. Необходимым условием для этого является наличие у взломщика толстенного канала (во всяком случае, толще, чем у атакуемого хоста). Он отсылает на вражеский сервак тучи различных запросов и прочей информационной пурги, насколько позволяет толщина его канала, забивая линию атакуемой машины. Соответственно, забитая линия не может пропустить к серваку еще какие-либо другие запросы. Вот тебе и DoS :). Пользователи не могут получить доступ к серверу, а у самого сервера начинает отъезжать крыша, и он даже может упасть в даун. Инфа с сервера становится временно недоступной для юзеров (пока админ не спохватится и не примет меры). Bandwidth consumption - отличный выбор, если нужно временно вывести из строя какой-нибудь web-сервачек или базу данных. А также отлично подходит для выкидывания из сети всякого ламья, хамящего на ирце, - ведь у всякого диалапного ламья коннект часто очень хиленький :). И совсем не обязательно самому висеть на толстенном канале - достаточно иметь удаленный доступ к машине, висящей на таком мощном конце.

Самый типичный (и самый тупой) пример bandwidth consumption - это банальный ping. Почему тупой? Да потому что пакеты ping-запросов и ping-ответов незначительно отличаются по размеру, и канал у атакующего и атакуемого забивается в равной степени - 3.14zDoS может произойти обоим :). Фишка катит, если у атакующего канал шире, чем у атакуемого, но это туфта, так как атакуемыми чаще всего оказываются сервера (с широченными каналами), а не левые диалапные юзеры. Поэтому "не тупыми" bandwidth consumption-атаками считаются такие, при которых атакуемый комп вынужден отсылать значительно больше информации, чем атакующий. Простой пример - самый обычный HTTP-запрос на страничку. Клиент (хацкер) шлет серваку малюсенький запрос, типа "GET /index.html", а сервер ему шлет эту самую index.html, размер которой может оказаться в сотни раз больше, чем размер запроса. Дальше вступает в силу элементарная математика: хацкер висит, допустим, на мегабайтном канале, а сервак - на десятимегабайтном; разница - пропускная способность канала сервера больше в десять раз; следовательно, если ответ будет по размеру превосходить запрос, скажем, в пятнадцать раз, у хакера будет хороший шанс за3.14zDoS`ить вражеский сервак. Все очень просто :). Но тут есть еще одна заковырка: а как же index.html, которая отправляется хацкеру от сервера с каждым новым запросом? Она же тоже забивает атакующему канал... Да уж, еще как забивает - от такого трафика хакерюга со своим хиленьким каналом уйдет в даун, когда сервер еще и почесаться не успеет :). Решение, как всегда, по-хацкерски простое: подменять source IP (айпишник отправителя) в пакетах запросов на какой-нибудь другой, чтоб проклятые index.html уходили на этот самый другой адрес, не забивая канал хакера. При этом желательно, чтоб source IP в каждом запросе был разный, а то нехилая нагрузка пойдет на машину с этим адресом, и может спохватиться админ сети, которой она принадлежит, - лишний шум, лишняя возня - ничего хорошего. А так на разные IP`шки приходит какая-то хтмлка - ну, подумаешь, ошибка маршрутизации...

Если ты хорошенько пошевелишь мозгами, то сам догадаешься, как можно кого-нибудь задосить еще одним способом: находится огромная сеть (с кучей машин) на широченном канале, и ей шлются запросы, source IP в которых заменен на IP жертвы. Вся эта байда начинает слать на несчастный IP`шник ответы, думая, что запросы пришли именно от него, забивая по самые уши канал атакуемому и устраивая бедняге мега3.14zDoS :). Такая фишка называется усилением (или умножением) DoS-атаки.

 








Не нашли, что искали? Воспользуйтесь поиском по сайту:



©2015 - 2024 stydopedia.ru Все материалы защищены законодательством РФ.