Deny of Service (DoS) атака.
Дословно Deny of Service переводится как «отказ в обслуживании». Это означает например, что операционная система не может обслужить запрос пользователя или другой системы.
Рассмотрим нарушение работоспособности хоста в сети при использовании направленного шторма ложных TCP-запросов на создание соединения либо при переполнении очереди запросов. Из рассмотренной в предыдущем пункте схемы создания TCP-соединения следует, что на каждый полученный TCP-запрос (TCP SYN) операционная система должна сгенерировать начальное значение идентификатора ISN и отослать его на запросивший хост. Но так как в Internet (стандарта IPv4) не предусмотрен контроль за IP-адресом отправителя сообщения, то проследить истинный маршрут, пройденный IP-пакетом, невозможно и, следовательно, у конечных абонентов сети нет способа ограничить число запросов, принимаемых в единицу времени от одного хоста. Поэтому возможно осуществление типовой удаленной атаки «отказ в обслуживании», которая будет заключаться в передаче на объект атаки как можно большего числа ложных TCP-запросов на создание соединения от имени любого хоста в сети (направленный шторм запросов TCP SYN, схема которого приведена на рисунке).
При этом атакуемая сетевая ОС в зависимости от вычислительной мощности компьютера либо перестает реагировать на легальные запросы на подключение (отказ в обслуживании), либо, в худшем случае, практически зависает. Это происходит потому, что система должна, во-первых, сохранить в памяти полученную в ложных сообщениях информацию и, во-вторых, выработать и отослать ответ на каждый запрос. Таким образом, «съедаются» все ресурсы системы: переполняется очередь запросов, и ОС вынуждена заниматься только их обработкой. Эффективность данного воздействия тем выше, чем больше пропускная способность канала между атакующим и его целью, и тем ниже, чем больше вычислительная мощность атакуемого компьютера (число и быстродействие процессоров, объем ОЗУ и т.п.).
Такую атаку можно было предсказать еще лет двадцать назад, когда появилось семейство протоколов TCP/IP: ее корни находятся в самой инфраструктуре сети Internet, в ее базовых протоколах - IP и TCP. Но каково же было наше удивление, когда выяснилось, что на информационном . WWW-сервере CERT (Computer Emergency Respone Team) первое упоминание об удаленном воздействии такого рода датировано только 19 сентября 1996 года! Там эта атака носила название «TCP SYN Flooding and IP Spoofing Attacks» («наводнение» TCP-запросами с ложных IP-адресов). Другая разновидность атаки «отказ в обслуживании» состоит в передаче на атакуемый хост нескольких десятков (сотен) запросов TCP SYN в секунду (направленный мини-шторм TCP-запросов) на подключение к серверу, что может привести к временному (до 10 минут) переполнению очереди запросов на сервере (см. атаку К. Митника). Это происходит из-за того, что некоторые сетевые ОС обрабатывают только первые несколько запросов на подключение, а остальные игнорируют, Таким образом, получив N запросов на подключение, ОС сервера ставит их в очередь и генерирует соответственно N ответов. Затем в течение определенного промежутка времени (тайм-аут < 10 минут) сервер будет дожидаться сообщения от предполагаемого клиента, чтобы завершить handshake и подтвердить создание виртуального канала с сервером. Если атакующий пришлет такое количество запросов на подключение, которое равно максимальному числу одновременно обрабатываемых сервером сообщений, то в течение тайм-аута остальные запросы будут игнорироваться и установить связь с сервером не удастся.
Мы провели ряд экспериментов с направленным штормом и направленным миништормом запросов на различных по вычислительным мощностям компьютерах с разными операционными системами.