DoS-атака (от англ. Denial of Service, отказ в обслуживании) — атака на вычислительную систему с целью довести её до отказа, то есть создание таких условий, при которых легитимные (правомерные) пользователи системы не могут получить доступ к предоставляемым системой ресурсам (серверам), либо этот доступ затруднён. Отказ «вражеской» системы может быть как самоцелью (например, сделать недоступным популярный сайт), так и одним из шагов к овладению системой (если во внештатной ситуации ПО выдаёт какую-либо критическую информацию — например, версию, часть программного кода и т. д.).
Если атака выполняется одновременно с большого числа компьютеров, говорят о DDoS-атаке (от англ. Distributed Denial of Service, распределённая атака типа «отказ в обслуживании»). В некоторых случаях к DDoS-атаке приводит легитимное действие, например, размещение на популярном интернет-ресурсе ссылки на сайт, размещённый на не очень производительном сервере (слэшдот-эффект). Большой наплыв пользователей приводит к превышению допустимой нагрузки на сервер и отказу в обслуживании части из них.
читать дальшеСуществуют различные причины, по которым может возникнуть DoS-условие:
Ошибка в программном коде, приводящая к обращению к неиспользуемому фрагменту адресного пространства, выполнению недопустимой инструкции или другой необрабатываемой исключительной ситуации, когда происходит аварийное завершение серверного приложения. Классическим примером является обращение по нулевому (англ. null) указателю.
Недостаточная проверка данных пользователя, приводящая к бесконечному либо длительному циклу или повышенному длительному потреблению процессорных ресурсов (исчерпанию процессорных ресурсов) либо выделению большого объёма оперативной памяти (исчерпанию памяти).
Флуд (англ. flood) — атака, связанная с большим количеством обычно бессмысленных или сформированных в неправильном формате запросов к компьютерной системе или сетевому оборудованию, имеющая своей целью или приведшая к отказу в работе системы из-за исчерпания ресурсов системы — процессора, памяти либо каналов связи.
Атака второго рода — атака, которая стремится вызвать ложное срабатывание системы защиты и таким образом привести к недоступности ресурса.
Если атака (обычно флуд) производится одновременно с большого количества IP-адресов, то в этом случае она называется распределённой атакой на отказ в обслуживании (DDoS).
Эксплуатация ошибок
Основная статья: Эксплойт
Эксплойтом называют программу, фрагмент программного кода или последовательность команд, использующие уязвимости в программном обеспечении и применяемые для проведения атаки на вычислительную систему. Из эксплойтов, ведущих к DoS-атаке, но непригодных, например, для овладения «вражеской» системой, наиболее известны WinNuke и Ping of death.
Флуд
О флуде как нарушении сетевого этикета см. Флуд.
Флудом называют огромный поток бессмысленных запросов с разных компьютеров с целью занять «вражескую» систему (процессор, ОЗУ или канал связи) работой и этим временно вывести её из строя. Понятие «DDoS-атака» практически равносильно понятию «флуд», и в обиходе то и другое часто взаимозаменяемо («зафлудить сервер» — «заDDoS’ить сервер»).
Для создания флуда могут применяться как обычные сетевые утилиты наподобие ping (этим известно, например, интернет-сообщество «Упячка»), так и особые программы. Возможность DDoS’а часто «зашивают» в ботнеты. Если на сайте с высокой посещаемостью будет обнаружена уязвимость типа «межсайтовый скриптинг» или возможность включения картинок с других ресурсов, этот сайт также можно применить для DDoS-атаки.
Самая крупная DDoS-атака была зарегистрирована в октябре 2010 года, её мощность составила 120 гигабит. 120-гигабитную атаку можно сравнить с миллионом пользователей, которые осуществляют флуд различными пакетами.
Флуд канала связи и TCP-подсистемы
Любой компьютер, имеющий связь с внешним миром по протоколу TCP/IP, подвержен таким типам флуда:
SYN-флуд — при данном виде атаки на атакуемый узел направляется большое количество SYN-пакетов по протоколу TCP (запросов на открытие соединения). При этом на атакуемом сервере через короткое время исчерпывается количество открытых сокетов и сервер перестаёт отвечать.
UDP-флуд — этот тип флуда атакует не компьютер-цель, а его канал связи. Провайдеры резонно предполагают, что UDP более приоритетен, чем TCP. Большим количеством UDP-пакетов разного размера вызывается перегрузка канала связи, и сервер, работающий по протоколу TCP, перестаёт отвечать.
ICMP-флуд — то же, но с помощью ICMP-пакетов.
Флуд прикладного уровня
Многие службы устроены так, что небольшим запросом можно вызвать большой расход вычислительных мощностей на сервере. В таком случае атакуется не канал связи или TCP-подсистема, а непосредственно служба — флудом подобных «больных» запросов. Например, веб-серверы подвержены HTTP-флуду: для выведения сервера из строя может применяться как простейшее GET /, так и сложный запрос в базу данных наподобие GET /index.php?search=<случайная строка>.
Обнаружение DoS-атак
Существует мнение, что специальные средства для обнаружения DoS-атак не требуются, поскольку факт DoS-атаки невозможно не заметить. Во многих случаях это действительно так. Однако достаточно часто отмечались успешные атаки, которые были замечены жертвами лишь через 2-3 суток. Бывало, что негативные последствия атаки (типа флуд) заключались в излишних расходах по оплате трафика, что выяснялось лишь при получении счёта. Кроме того, многие методы обнаружения атак неэффективны вблизи цели атаки, но эффективны на магистральной сети. В таком случае целесообразно ставить системы обнаружения именно там, а не дожидаться, пока пользователь, подвергшийся атаке, сам её заметит и обратится за помощью. К тому же, для эффективного противодействия необходимо знать тип, характер и другие показатели DoS-атаки, а оперативно получить эти сведения как раз и позволяют системы обнаружения.
Методы обнаружения можно разделить на несколько больших групп:
сигнатурные — основанные на качественном анализе трафика;
статистические — основанные на количественном анализе трафика;
гибридные — сочетающие в себе достоинства двух предыдущих методов.
Защита от DoS-атак
Меры противодействия DoS-атакам можно разделить на пассивные и активные, а также на превентивные и реакционные.
Ниже приведён краткий перечень основных методов.
Предотвращение. Профилактика причин, побуждающих тех или иных лиц организовывать DoS-атаки. Очень часто атаки являются следствиями личной обиды, политических, религиозных разногласий, провоцирующего поведения жертвы и т. п.
Фильтрация и блэкхолинг. Блокирование трафика исходящего от атакующих машин. Эффективность этих методов снижается по мере приближения к цели атаки и повышается по мере приближения к её источнику.
Устранение уязвимостей. Не работает против атак типа флуд, для которых «уязвимостью» является конечность тех или иных ресурсов.
Наращивание ресурсов.
Рассредоточение. Построение распределённых и продублированных систем, которые не прекратят обслуживать пользователей, даже если некоторые их элементы станут недоступны из-за атаки.
Уклонение. Увод непосредственной цели атаки (доменного имени или IP-адреса) подальше от других ресурсов, которые часто также подвергаются воздействию вместе с непосредственной целью.
Активные ответные меры. Воздействие на источники, организатора или центр управления атакой, как технического, так и организационно-правового характера.
Внедрение оборудования по отражению DoS-атак. Например DefensePro® (Radware), Периметр (МФИ Софт), Arbor Peakflow® и других производителей.
Приобретение сервиса по защите от DoS-атак. Актуально в случае превышения флудом пропускной способности канала.Вики================
DDoS - виртуальный терроризм. Что такое DDoS-атака?
Терроризм - это, пожалуй, самая большая проблема человечества на сегодняшний день. И виртуальное сообщество здесь мало чем отличается от реального мира. Ушли те романтические времена, когда собирательным образом хакера являлся хитрый тип, взломавший защиту банка и перекачавший на свой счет кругленькую сумму. Жесткие времена - жесткие нравы. Теперь хакеры с помощью атаки на сервер блокируют его работу, а затем выставляют хозяевам свои требования. Виртуальный террор в чистом виде. Редкий месяц обходится без сенсационных сообщений в прессе о том, что тот или иной сервер подвергся DDoS-атаке. В данном обзоре попытаемся разобраться в том, что такое DDoS-атака и что можно предпринять, чтобы снизить ее опасность.
DDoS-атака - сокращение от Distributed Denial Of Service Attack. Особенностью данного вида компьютерного преступления является то, что злоумышленники не ставят своей целью незаконное проникновение в защищенную компьютерную систему с целью кражи или уничтожения информации. Цель данной атаки - парализовать работу атакуемого веб-узла. Первые сообщения о DDoS-атаках относятся к 1996 году. Но всерьез об этой проблеме заговорили в конце 1999 года, когда были выведены из строя веб-серверы таких корпораций, как Amazon, Yahoo, CNN, eBay, E-Trade и ряда других, немногим менее известных. Спустя год, в декабре 2000-го "рождественский сюрприз" повторился: серверы крупнейших корпораций были атакованы по технологии DDoS при полном бессилии сетевых администраторов. С тех пор сообщение о DDoS-атаке уже не являются сенсацией. Главной опасностью здесь является простота организации и то, что ресурсы хакеров являются практически неограниченными, так как атака является распределенной.
Схематически DDoS-атака выглядит примерно так: на выбранный в качестве жертвы сервер обрушивается огромное количество ложных запросов со множества компьютеров с разных концов света. В результате сервер тратит все свои ресурсы на обслуживание этих запросов и становится практически недоступным для обычных пользователей. Циничность ситуации заключается в том, что пользователи компьютеров, с которых направляются ложные запросы, могут даже не подозревать о том, что их машина используется хакерами. Программы, установленные злоумышленниками на этих компьютерах, принято называть "зомби". Известно множество путей "зомбирования" компьютеров - от проникновения в незащищенные сети, до использования программ-троянцев. Пожалуй, этот подготовительный этап является для злоумышленника наиболее трудоемким.
Чаще всего злоумышленники при проведении DDoS-атак используют трехуровневую архитектуру, которую называют "кластер DDoS". Такая иерархическая структура содержит:
- управляющую консоль (их может быть несколько), т.е. именно тот компьютер, с которого злоумышленник подает сигнал о начале атаки;
- главные компьютеры. Это те машины, которые получают сигнал об атаке с управляющей консоли и передают его агентам-"зомби". На одну управляющую консоль в зависимости от масштабности атаки может приходиться до нескольких сотен главных компьютеров;
- агенты - непосредственно сами "зомбированные" компьютеры, своими запросами атакующие узел-мишень.
читать дальшеПроследить такую структуру в обратном направлении практически невозможно. Максимум того, что может определить атакуемый, это адрес агента. Специальные мероприятия в лучшем случае приведут к главному компьютеру. Но, как известно, и компьютеры-агенты, и главные компьютеры являются также пострадавшими в данной ситуации и называются "скомпрометированными". Такая структура делает практически невозможным отследить адрес узла, организовавшего атаку.
Другая опасность DDoS заключается в том, что злоумышленникам не нужно обладать какими-то специальными знаниями и ресурсами. Программы для проведения атак свободно распространяются в Сети.
Дело в том, что изначально программное обеспечение DDoS создавалось в "мирных" целях и использовалось для экспериментов по изучению пропускной способности сетей и их устойчивости к внешним нагрузкам. Наиболее эффективным в этом случае является использование так называемых ICMP-пакетов (Internet control messaging protocol), т.е. пакетов, имеющих ошибочную структуру. На обработку такого пакета требуется больше ресурсов, после решения об ошибочности пакет отправляется посылающему, следовательно достигается основная цель - "забивается" трафик сети.
За годы это программное обеспечение постоянно модифицировалось и к настоящему времени специалисты по информационной безопасности выделяют следующие виды DDoS-атак:
- UDP flood - отправка на адрес системы-мишени множества пакетов UDP (User Datagram Protocol). Этот метод использовался в ранних атаках и в настоящее время считается наименее опасным. Программы, использующие этот тип атаки легко обнаруживаются, так как при обмене главного контроллера и агентов используются нешифрованные протоколы TCP и UDP.
- TCP flood - отправка на адрес мишени множества TCP-пакетов, что также приводит к "связыванию" сетевых ресурсов.
- TCP SYN flood - посылка большого количества запросов на инициализацию TCP-соединений с узлом-мишенью, которому, в результате, приходится расходовать все свои ресурсы на то, чтобы отслеживать эти частично открытые соединения.
- Smurf-атака - пинг-запросы ICMP (Internet Control Message Protocol) по адресу направленной широковещательной рассылки с использованием в пакетах этого запроса фальшивый адрес источника в результате оказывается мишенью атаки.
- ICMP flood - атака, аналогичная Smurf, но без использования рассылки.
Естественно, наиболее опасными являются программы, использующие одновременно несколько видов описанных атак. Они получили название TFN и TFN2K и требуют от хакера высокого уровня подготовки.
Одной из последних программ для организации DDoS-атак является Stacheldracht (колючая проволока), которая позволяет организовывать самые различные типы атак и лавины широковещательных пинг-запросов с шифрованием обмена данными между контроллерами и агентами.
Конечно же, в этом обзоре указаны только наиболее известные программы и методики DDoS. На самом деле спектр программ намного шире и постоянно дополняется. По этой же причине достаточно наивным было бы описание универсальных надежных методов защиты от DDoS-атак. Универсальных методов не существует, но к общим рекомендациям для снижения опасности и уменьшения ущерба от атак можно отнести такие меры, как грамотная конфигурация функций анти-спуфинга и анти-DoS на маршрутизаторах и межсетевых экранах. Эти функции ограничивают число полуоткрытых каналов, не позволяя перегружать систему.
На уровне сервера желательно иметь вывод консоли сервера на другой IP-адрес по SSH-протоколу для возможности удаленной перезагрузки сервера. Другим достаточно действенным методом противодействия DDoS-атакам является маскировка IP-адреса.
Весьма важным делом в этом направлении является профилактика - программное обеспечение должно быть "отпатчено" от всевозможных "дыр".
Как уже отмечалось, обнаружить виртуальных террористов, организовавших DDoS-атаку, задача очень сложная. Поэтому для борьбы с данным видом угроз необходимо тесное сотрудничество администраторов серверов и с интернет-провайдерами, а также провайдеров с операторами магистральных сетей. Потому что, как и в реальной жизни, бороться с терроризмом возможно только объединением законопослушных граждан.Автор: Владимир Малярчук
Источник:
hostinfo.ruОтсюда