Глава 12. АТАКИ DOS
|
Атаки DoS Взрыв и медленно рассеивающееся облако. Нет, сейчас речь пойдет не о детском безалкогольном напитке. Мы познакомимся с различными средствами, которыми пользуются взломщики. В последние годы их применение приводит к опустошительному хаосу в Internet. Ежегодно атаки DoS (Denial of Service — отказ в обслуживании) стоят различным компаниям миллионы долларов и таят в себе серьезную угрозу для любой системы или сети. Все эти убытки обусловлены длительным простоем системы, упущенным доходом и большим объемом работ по идентификации и подготовке адекватных ответных мер. По существу, атака DoS нарушает или полностью блокирует обслуживание легитимных пользователей, сетей, систем или других ресурсов. Цель любой из таких атак обычно не имеет ничего общего с благими намерениями, и ее достижение зачастую не требует высокой квалификации, поскольку все необходимые средства абсолютно доступны. |
Причины использования атак DoS На протяжении этой книги обсуждались и демонстрировались многочисленные средства и приемы, используемые взломщиками для нарушения системы защиты различных систем. Зачастую политика обеспечения безопасности, реализованная в целевой системе или сети, способна предотвратить проникновение неквалифицированных злоумышленников. Ощущая свое бессилие, взломщик может прибегнуть к последнему средству — атаке DoS. |
Типы атак DoS Зачастую гораздо проще нарушить функционирование сети или системы, чем на самом деле получить к ней доступ. Сетевые протоколы типа TCP/IP были разработаны для применения в открытом и доверенном сообществе пользователей, и его текущая версия 4 унаследовала все слабые места своих предшественников. Кроме того, многие операционные системы и сетевые устройства имеют различные изъяны в используемой реализации сетевого стека, что значительно снижает их способность противостоять атакам DoS. Мы были свидетелями, как на устройствах управления различными процессами, в которых использовался устаревший стек протокола IP, сбой происходил от простого перенаправления ICMP с некорректным параметром. Поскольку существует много средств для реализации атак DoS, очень важно идентифицировать их типы, а также разобраться с тем, как выявить и предотвратить эти атаки. Сначала мы познакомимся с теорией, лежащей в основе четырех стандартных типов атак DoS. |
Насыщение полосы пропускания Наиболее коварной формой атак DoS является насыщение полосы пропускания (bandwidth consumption). По существу, взломщики могут заполнить всю доступную полосу пропускания определенной сети. Это можно осуществить и в локальной сети, однако чаще всего злоумышленники захватывают ресурсы удаленно. Для реализации такой атаки можно воспользоваться двумя сценариями. Сценарий 1 Взломщик может насытить сетевое подключение целевой системы, воспользовавшись более широкой полосой пропускания. Такой сценарий вполне возможен, если злоумышленник обладает сетевым подключением Т1 (1.544 Мбит/с) или более быстрым, и лавинно заполняет сетевое соединение с полосой пропускания 56 или 128 Кбит/с. Это эквивалентно столкновению трактора-тягача с автомобилем Yugo: большее транспортное средство, или в данном случае канал, наверняка станет победителем в этой битве. Этот тип атак не ограничивается возможностью применения к низкоскоростным сетевым соединениям. Нам встречались ситуации, когда взломщики получали доступ к сетям с полосой пропускания более 100 Мбит/с. Для атаки на Web-узел и насыщения его канала взломщику достаточно иметь канал Т1. Сценарий 2 Взломщики усиливают атаку DoS, вовлекая в процесс насыщения целевого сетевого соединения несколько узлов. Воспользовавшись таким подходом, сеть с доступом ТЗ (45 Мбит/с) можно насытить с помощью канала связи 56 Кбит/с. Благодаря чему это возможно? Используя другие узлы для усиления атаки DoS, взломщик с помощью ограниченной полосы пропускания может насытить полосу пропускания 100 Мбит/с. Для того чтобы успешно реализовать эту возможность, взломщик должен привлечь дополнительные узлы. Как вы увидите ниже в данной главе, в некоторых случаях осуществить усиление атаки гораздо проще, чем может показаться на первый взгляд. |
Недостаток ресурсов Атака, приводящая к недостатку ресурсов (resource starvation), отличается от предыдущей атаки тем, что она направлена на захват системных ресурсов, таких как центральный процессор, память, дисковые квоты или другие системные процессы. Зачастую взломщик обладает легитимным доступом к ограниченному количеству системных ресурсов. Однако он предпринимает попытку захватить и дополнительные ресурсы. Таким образом, система или законные пользователи будут испытывать недостаток в совместно используемых ресурсах. Атаки такого типа обычно приводят к недоступности ресурса, и, следовательно, к краху системы, переполнению файловой системы или зависанию процессов. |
Ошибки программирования Ошибки программирования (programming flaw) заключаются в неспособности приложения, операционной системы или логической микросхемы обрабатывать исключительные ситуации. Обычно эти ситуации возникают при передаче уязвимому элементу несанкционированных данных. Взломщики будут много раз передавать пакеты, в которых не учитываются рекомендации документов RFC, чтобы определить, способен ли сетевой стек справиться с этими исключениями или это приведет к панике ядра (kernel panic) или краху всей системы. Для определенных приложений, которым требуются пользовательские входные данные, взломщики будут передавать строковые данные длиной в тысячи строк. Если программой используется буфер фиксированной длины, скажем, 128 байт, то злоумышленники попробуют сгенерировать условие переполнения буфера и вызвать крах приложения. Что еще хуже, взломщики могут также выполнить привилегированные команды, как описывалось в главах 5 и 7. Ошибки программирования часто встречаются и в логических микросхемах. Печально известная атака под названием Pentium f00f основывается на том, что пользовательский процесс, выполнив некорректную инструкцию 0xf 00f c7c8, приведет к краху любой операционной системы. |
Общие атаки DoS Некоторые атаки DoS можно использовать для нескольких типов систем. Мы будем называть такие атаки общими (generic). В основном общие атаки направлены на насыщение полосы пропускания или захват ресурсов. Стандартным элементом атак этого типа является манипулирование протоколами. При использовании протокола ICMP одновременно можно воздействовать на несколько систем. Например, взлом-шик может воспользоваться "почтовой бомбой" и отправить тысячи почтовых сообщений целевой системе, чтобы насытить полосу пропускания и истощить ресурсы почтового сервера. Хотя вирус Melissa не планировалось использовать в качестве средства генерации атаки DoS, однако на гребне лавины почтовых сообщений он может привести к краху почтового сервера. Его саморепликация оказалась настолько успешной, что из-за недостатка ресурсов почтовые серверы просто завершают свою работу. Атака Smurf Атака Smurf — это одна из наиболее опасных атак DoS, поскольку при ее реализации на целевые узлы осуществляется усиленное воздействие. Эффект усиления возникает из-за рассылки направленных широковещательных ping-запросов на узлы сети, которые должны сгенерировать ответные сообщения. Направленный широковещательный запрос может передаваться либо на сетевой адрес, либо на сетевой широковещательный адрес, однако в любом случае требуется устройство, выполняющее преобразование данных уровня 3 (IP) к уровню 2 (сеть). (Более подробную информацию по этому вопросу можно получить в документе RFC 1812, Requirements for IP Version 4 Routers.) Если предполагается, что сеть принадлежит к классу С, то сетевым адресом будет .0, а широковещательным адресом — .255. Направленные широковещательные запросы обычно используются для диагностики, позволяя выявить функционирующие узлы без использования утилиты ping отдельно для каждого адреса используемого диапазона. Контрмеры: защита от атак Smurf Для того чтобы предотвратить возможность использования вашей сети (компьютера) для усиления, запретите прохождение направленных широковещательных запросов на пограничном маршрутизаторе. На маршрутизаторах Cisco для этого можно воспользоваться командой no ip directed-broadcast. На устройствах Cisco IOS версии 12 этот режим включен по умолчанию. При использовании других устройств обратитесь к документации, входящей в комплект поставки. Системы Solaris 2.6, 2.5.1, 2.5, 2.4 и 2.3 Чтобы предотвратить генерацию ответных сообщений на запросы ECHO в системах Solaris, добавьте в файл /etc/rc2 .d/S69inet следующую строку, ndd -set /dev/ip ip_respond_to_echo_broadcast 0 Linux Для того чтобы обеспечить такую же защиту в системе Linux, необходимо активизировать функции брандмауэра на уровне ядра с помощью утилиты ipfw. Убедитесь, что эти требования учтены при компиляции ядра и выполните следующие команды ipfwadm -I -a deny -Р icmp -D 10.10.10.0 -S О/О 0 8 При этом не забудьте заменить строку 10.10.10.0 своим сетевым адресом, а 10.10.10.255 — сетевым широковещательным адресом. FreeBSD Система FreeBSD версии 2.2.5 и выше запрещает обработку направленных широковещательных запросов по умолчанию. Этот режим можно активизировать или отключить, изменив параметр sysctl в файле net. inet. icmp. bmcastecho. AIX Система AIX 4.x запрещает генерировать ответные сообщения на широковещательные запросы по умолчанию. Для переключения этого режима можно воспользоваться командой по с параметром bcastping. Эта команда служит для настройки сетевых атрибутов в выполняющемся ядре. Данные атрибуты должны устанавливаться при каждом запуске системы. Все версии системы UNIX Для того чтобы предотвратить генерацию узлами сообщений в ответ на атаку Fraggle, отключите службы echo и chargen в файле /etc/inetd/conf, поместив в начало соответствующих строк символ #. |
Узлы под воздействием атак Конечно, очень важно понимать, как предотвратить возможность использования узла в качестве усилителя атаки, однако еще важнее разобраться в том, как определить, что узел уже используется для этих целей. Как упоминалось в предыдущих главах, нужно ограничить возможность поступления данных ICMP и UDP лишь заданных типов и только на требуемые узлы. Причем это нужно обеспечить на пограничных маршрутизаторах. Естественно, такая мера не позволит защититься от атак Smurf и Fraggle, приводящих к насыщению полосы пропускания. Гораздо лучше обратиться к провайдеру услуг Internet и совместными усилиями максимально ограничить входящий трафик ICMP. Эти защитные меры можно усилить с помощью режима CAR (Committed Access Rate — допустимая частота обращений), который можно установить на устройствах Cisco IOS 1.1СС, 11.ICE и 12.0. Это позволит ограничить трафик ICMP некоторой разумной величиной, например 256 или 512 Кбайт. Атака с помощью переполнения пакетами SYN До того как атака Smurf не стала такой популярной, наиболее разрушительной считалась атака с помощью переполнения пакетами SYN. Упоминавшаяся в начале этой главы атака на компанию PANIX является прекрасным примером реализации такой атаки. Давайте подробно разберемся с тем, что же происходит в этом случае. В обычной ситуации пакет SYN отсылается с определенного порта системы А на конкретный порт системы в, который находится в состоянии LISTEN. В этот момент потенциальное соединение системы в находится в состоянии SYN_RECV. На этой стадии система в передает системе А пакет SYN/ACK. Если процесс проходит нормально, система А передает обратно пакет АСК и соединение переходит в состояние ESTABLISHED. Контрмеры: защита от атак с использованием пакетов SYN Чтобы определить, подвержена ли атаке ваша система, можно воспользоваться командой netstat, если она поддерживается операционной системой. Многочисленные соединения в состоянии SYN_RECV свидетельствуют о том, что именно в этот момент проводится атака. Увеличение размера очереди на установку соединений Несмотря на то что стек протокола IP каждым производителем реализуется по-своему, вполне возможно настроить размер очереди на установку соединений таким образом, чтобы нейтрализовать воздействие атаки с использованием пакетов SYN. Это полезное, однако не самое оптимальное решение, поскольку его реализация требует дополнительных системных ресурсов, а это может сказаться на общей производительности. Уменьшение периода ожидания установки соединения Сокращение интервала ожидания установки соединения также поможет снизить влияние атаки. Тем не менее, это тоже не самое оптимальное решение проблемы. Использование пакетов обновления программного обеспечения и защита от потенциальных атак SYN Как следует из названия подраздела, большинство современных операционных систем имеет встроенные механизмы выявления и предотвращения атак с использованием пакетов SYN. Для получения перечня таких операционных систем и соответствующих модулей обновления читайте отчет СА-96:21 группы CERT TCP SYN Flooding and IP Spoofing Attacks. Использование сетевых систем IDS Некоторые системы IDS уровня сети могут обнаруживать и активно противодействовать атакам SYN. Такие атаки можно обнаружить по возросшему потоку пакетов SYN, который не сопровождается потоком ответных сообщений. Система выявления вторжений может передать системе, используемой в процессе атаки, пакет RST, соответствующий начальному запросу SYN. Это будет способствовать восстановлению корректного состояния очереди на установку соединений. Атаки DNS В 1997 году группа специалистов по вопросам безопасности Secure Networks, Inc. (SNI), которая в настоящее время называется Network Associates, Inc. (NAI), опубликовала отчет о различных изъянах реализации BIND (Berkeley Internet Name Domain) системы DNS (NAI-0011, BIND Vulnerabilities and Solutions). Версии BIND до 4.9.5.+Р1 могут кэшировать фиктивную информацию, если активизирован режим рекурсии. Этот режим позволяет серверу имен обрабатывать запросы на получение данных о зонах и доменах, которые он не обслуживает. Когда серверу имен приходит запрос на получение информации о неизвестной зоне или домене, он перенаправляет запрос авторизованному серверу имен этого домена. После получения ответа от этого сервера первый сервер имен передает полученные данные обратно узлу, сгенерировавшему запрос. Контрмеры: защита службыDNS Для разрешения проблем службы BIND обновите ее версию до 4.9.6 или 8.1.1 и выше. Поскольку изъян многих версий BIND связан с возможностью повреждения буфера, лучше всего обновить ее используемую версию до самой последней, в которой реализованы дополнительные средства зашиты. Для получения более подробной информации по этому вопросу обращайтесь по адресу http://www.isc.org/bind.html. Информацию о модулях обновления можно найти в отчете СА-97.22 BIND — the Berkeley Internet Name Daemon. |
Атаки DoS систем UNIX и Windows NT Последние двадцать лет популярность системы UNIX неустанно возрастает. И это абсолютно закономерно, поскольку эта система обладает мощью, элегантностью и позволяет выполнять самые невероятные задачи. В то же время эти же преимущества иногда могут послужить причиной возникновения некоторых проблем. В течение многих лет были выявлены сотни условий DoS в различных версиях системы UNIX. |
Удаленные атаки DoS В настоящее время большинство условий DoS связано с ошибками в программировании, которые имеют отношение к реализации стека IP различными разработчиками. Как упоминалось в главе 2, каждый разработчик реализует стек IP по-разному. Поскольку реализация стека является достаточно сложной задачей, решение которой постоянно эволюционирует, то всегда имеется большая вероятность появления самых разнообразных ошибок. В основе многих атак лежит возможность передачи пакета или последовательности пакетов на целевой узел и использование определенного изъяна программного обеспечения. После того как эти пакеты будут получены целевой системой, могут возникать самые различные ситуации, начиная с некорректной обработки поступивших пакетов до краха всей системы в целом. Перекрытие фрагментов пакетов IP Эти атаки связаны с изъянами в программном коде определенной реализации стека IP, который используется для восстановления пакетов. Когда пакеты проходят через различные сети, может оказаться необходимым разделить эти пакеты на меньшие части (фрагменты), размер которых определяется заданным в сети значением MTU (Maximum Transmission unit — максимальная единица передачи). Такая атака была характерна для старых версий ядра системы Linux, в котором некорректно обрабатывались перекрывающиеся IP-фрагменты. Хотя ядро Linux и следит за тем, чтобы фрагменты не превышали максимально допустимого размера, такая проверка не выполняется для слишком малых фрагментов. Таким образом, тщательно сконструированные пакеты после их отправки системе Linux могут привести к ее перезагрузке или останову функционирования. Linux является далеко не единственной системой, которая уязвима для таких атак. Системы Windows NT/95 также могут подвергаться подобным нападениям (newtear.c, syndrop.c, boink.c). Контрмеры Ошибки, используемые в описанных выше атаках, были исправлены в более поздних версиях ядра 2.0.x и 2.2.x. Для обеспечения защиты обновите ядро операционной системы до версии 2.0.x или 2.2.x. В этих версиях исправлен не только алгоритм восстановления фрагментов IP-пакетов, но и многие другие ошибки подсистемы защиты. Утечка памяти в Windows NT -именованные каналы поверх RPC В системе Windows NT возможна утечка памяти, управляемой файлом spoolss.exe, позволяющая неавторизованному пользователю подсоединиться к ресурсу \\server\ PIPEXSPOOLSS и захватить всю доступную память целевой системы. Ситуация усугубляется еще и тем, что эту атаку можно реализовать через нулевое соединение даже в том случае, когда в системном реестре установлено значение RestrictAnonymous. Для полного и скрытого захвата всех ресурсов может потребоваться некоторое время, поэтому деятельность вхтомшика может оказаться довольно продолжительной. Контрмеры: предотвращение утечки памяти Для предотвращения этой атаки через нулевое соединение нужно удалить параметр SPOOLSS, расположенный в поддереве системного реестра HKLM\System\CCS\ Services\LanmanServer\ Parameters\NullSessionPipes (REG_MULTI_SZ). Однако не забывайте, что эта мера не позволит обезопасить систему от проведения атаки авторизованными пользователями. Переполнение буфера в FTP-сервере IIS Как вы узнали из главы 8, атаки с использованием переполнения буфера чрезвычайно эффективны при нарушении зашиты уязвимых систем. Кроме того, переполнение буфера оказывается эффективным также для создания условия DoS. Если в результате переполнения буфера не удалось получить привилегии администратора, то в большинстве случаев его можно использовать для того, чтобы удаленно вызвать крах уязвимого приложения. Контрмеры: защита от переполнения буфера в RP-сервере IIS Описанную проблему позволяют устранить сервисный пакет SP5 и модули обновления, выпушенные компанией Microsoft после появления сервисного пакета SP4 Атаки stream и raped Программа stream, с (неизвестного автора) и raped.с, написанная Ликвидом Стилом (Liquid Steel), появились в начале 2000 года. С их использованием можно осуществить две похожие друг На друга простые атаки, которые, несмотря на это, будут очень эффективными.
Контрмеры: защита от атак stream и raped К сожалению, для защиты от таких атак модули обновления выпущены лишь для некоторых операционных систем. Нам неизвестно о каких-либо модулях обновления Windows NT. Однако в системе FreeBSD можно воспользоваться неофициальным модулем, который можно получить по адресу http: //www. freebsd.org/~alfred/tcp_fix.diff. Атака на сервер ColdFusion Эта атака была исследована в июне 2000 года компанией Foundstone. Она основана на ошибке программы и позволяет нарушить функционирование сервера. Условие DoS возникает в процессе конвертирования введенного и хранящегося паролей в форму, пригодную для их сравнения, когда введенный пароль имеет очень большой размер (более 40000 символов). Воспользоваться этим приемом очень просто. Для получения более подробной информации читайте главу 15. Контрмеры Подробные рекомендации по устранению этого изъяна приведены в главе 15, "Хакинг в Web". |
Распределенные атаки DoS В сентябре 1999 года в момент появления первого издания этой книги концепция распределенных атак DoS была не более чем предположением. А сейчас разговор о компьютерах без упоминания фразы "распределенная атака DoS" (DDoS — Distributed Denial of Service) можно считать неполным. Как и вирусы, появляющиеся в Internet как сорная трава, атаки DDoS привлекают все большее внимание средств массовой информации.
TFN Пакет TFN (Tribe Flood Network), разработанный хакером Микстером (Mixter), является первым общедоступным средством реализации атаки DDoS, который предназначен для использования в системе UNIX. В состав пакета входит как клиентский, так и серверный компонент. Это позволяет взломщику установить серверную часть на удаленном взломанном узле, а затем с помощью нескольких команд, введенных с использованием клиентной части, инициировать полномасштабную распределенную атаку DoS. С помощью пакета TFN можно реализовать атаки с использованием ICMP-, UDP-пакетов, пакетов SYN, а также атаку Smurf. Помимо этих компонентов, в состав пакета TFN входит модуль, позволяющий получить доступ к удаленной командной оболочке, связанной с TCP-портом. Контрмеры Обнаружение Для выявления атак TFN существует несколько механизмов, и соответствующие средства можно найти в Internet. К заслуживающим внимания инструментам можно отнести следующие: DDOSPing Робина Кейра , Zombie Zapper от группы Razor и find_ddos, разработанный центром NIPC (National Infrastructure Protection Center). Предотвращение Конечно, наилучшая зашита компьютеров от использования в качестве "зомби" заключается в предотвращении их взлома на начальной стадии атаки. Это означает, что нужно реализовать все шаги, описанные в главе 8: ограничьте использование служб, установите модули обновления операционной системы и приложений, задайте адекватные разрешения на использование каталогов и файлов, а также воспользуйтесь всеми другими рекомендациями. Trinoo Как и TFN, в состав пакета Trinoo входит программа удаленного управления (клиент), которая взаимодействует с основной программой, передающей команды программе-демону (серверу). Взаимодействие между клиентом и основной программой осуществляется посредством соединения через TCP-порт 27665. При этом обычно используется пароль betaalmostdone. Связь основной программы с сервером устанавливается через UDP-порт 27444, а в обратном направлении — через LJDP-порт 31335. Контрмеры: защита от использования пакета Тrinоо Обнаружение Для выявления атак Trinoo существует несколько механизмов, и соответствующие средства можно найти в Internet. К заслуживающим внимания инструментам можно отнести следующие: DDOSPing Робина Кейра, Zombie Zapper от группы Razor () и find_ddos , разработанный центром NIPC (National Infrastructure Protection Center). Предотвращение Как и в случае пакета TFN, наилучшая зашита состоит в применении всех рекомендаций, приведенных в главе 8. Stacheldraht Пакет Stacheldraht комбинирует возможности Тrinоо и TFN и является мощным деструктивным средством, реализующим зашифрованный сеанс telnet между главным и подчиненным модулем. Теперь взломщик может блокировать системы выявления вторжений и благодаря этому получать неограниченные возможности по генерации условия DoS. Как и TFN, пакет Stacheldraht предоставляет возможность инициирования ICMP-, UDP-, SYN- и Smurf-атак. Взаимодействие клиента с сервером осуществляется через комбинацию TCP- и ICMP-пакетов ECHO REPLY. Контрмеры Обнаружение Для выявления атак Stacheldraht существует несколько механизмов, и соответствующие средства можно найти в Internet. К заслуживающим внимания инструментам можно отнести следующие: DDOSPing Робина Кейра , Zombie Zapper от группы Razor и find_ddos, разработанный центром NIPC (National Infrastructure Protection Center). Предотвращение Как и ранее, лучше всего предотвратить использование компьютеров в качестве "зомби". Это означает, что необходимо учесть все рекомендации, приведенные в главе 8, т.е. ограничить использование служб, установить модули обновления операционной системы и приложений, задать необходимые разрешения на использование файлов/каталогов и т.д. TFN2K Аббревиатура TFN2K — это обозначение пакета TFN 2000. который является преемником пакета TFN, разработанного хакером Микстером (Mixter). Это одно из самых последних средств DDoS, которое принципиально отличается от своего предшественника и позволяет в процессе взаимодействия использовать порты с произвольно выбранными номерами. Благодаря этому можно обойти блокирование портов на пограничных маршрутизаторах. Как и TFN, пакет TFN2K поддерживает SYN-, UDP-, ICMP- и Smurf-атаки. а, кроме того, позволяет случайным образом переключаться между различными методами проведения атаки. Однако в отличие от алгоритма шифрования, используемого в пакете Stacheldraht, в TFT2K применяется более слабый алгоритм Base 64. Контрмеры Обнаружение Дта выявления атак TFN2K существует несколько механизмов, и соответствующие средства можно найти в Internet. К заслуживающим внимания инструментам можно отнести следующие: DDOSPing Робина Кейра , Zombie Zapper or группы Razor и find_ddos , разработанный центром N1PC (National Infrastructure Protection Center). Предотвращение Как и ранее, лучше всего предотвратить использование компьютеров в качестве "зомби". Это означает, что необходимо учесть все рекомендации, приведенные в главе 8, т.е. ограничить использование служб, установить модули обновления операционной системы и приложений, задать необходимые разрешения на использование файлов/каталогов и т.д. WinTrinoo Широкой общественности программа WinTrinoo впервые была представлена группой Razor. Это версия пакета Trinoo, предназначенная для использования в системе Windows. Это средство представляет собой программу типа "троянский конь", которая обычно называется service, ехе (если не была переименована) и имеет размер 23,145 байт. Контрмеры Для того чтобы выявить программу WinTrinoo, нужно проверить сеть на предмет открытого порта с номером 34555 или выполнить поиск файла с именем service. ехе (если он не был переименован) размером 23,145 байт. Кроме такого "ручного" способа можно воспользоваться также антивирусной программой Norton Antivirus компании Symantec, которая автоматически изолирует этот файл еше до его запуска. |
Локальные атаки DoS Несмотря на то что удаленные атаки DoS получили большее распространение, локальные атаки тоже способны принести немало бед. Существует множество многопользовательских систем, в которых атаку DoS может инициировать авторизованный пользователь. Большинство локальных атак основано на захвате ресурсов или на использовании изъянов в программном обеспечении и направлено на то, чтобы запретить доступ легитимным пользователям. В системах NT и UNIX существуют сотни возможностей реализации локальных атак DoS, однако мы познакомимся с захватом ресурсов и использованием ошибок в программном обеспечением для систем Windows NT и UNIX соответственно. Терминальный сервер Windows NT и процесс proquota. ехе Классическим примером атаки, направленной на захват ресурсов, является использование свободного дискового пространства сверх выделенной квоты. Если функции квотирования дискового пространства в мире UNIX давно ни у кого не вызывают удивления, то в системе Windows NT эта возможность является относительно новой. Терминальный сервер Windows NT позволяет обычному пользователю применить функцию квотирования дискового пространства и заполнить системный диск (%systemdrive%). После этого пользователи, у которых отсутствует кэшированный профиль доступа, не смогут обратиться к системе. В процессе этой атаки пользователи, у которых превышена дисковая квота, не смогут завершить свою работу. Однако для того, чтобы обойти это ограничение, можно удалить процесс proguota. ехе. Это можно осуществить, поскольку владельцем этого процесса является пользователь, а не системная учетная запись. Контрмеры Практика подсказывает, что системные файлы и пользовательские данные лучше всего хранить в разных разделах. Эта аксиома как нельзя лучше подходит к приведенному примеру. Переменная %systemdrive% должна указывать на другой диск, а не на тот, на котором хранятся данные пользователей. Кроме того, поместите профили на незагружаемом разделе и используйте их только при необходимости. Паника ядра В ядре системы Linux версии 2.2.0 появлялась потенциальная возможность для возникновения условия DoS, если программа idd, используемая для печати зависимостей совместно используемых библиотек, применялась для печати определенных файлов ядра. Этот изъян был связан с вызовом функции munmap (), используемой для отображения файлов или устройств в оперативную память. При определенных обстоятельствах функция munmap () могла перезаписать важные области памяти, используемые ядром, и вызвать в системе панику и ее перезагрузку. Хотя такая ситуация не выглядит необычной, она все же иллюстрирует основную концепцию, на которой основано большинство направленных на ядро атак. В большинстве случаев непривилегированный пользователь может воспользоваться изъяном в программном обеспечении и повредить важную область памяти, применяемую ядром. Конечным результатом подобной деятельности практически всегда является паника ядра (panic kernel). Контрмеры против паники ядра Модуль обновления, позволяющий заделать эту брешь в программном обеспечении, был встроен в ядро версии 2.2.1. Практически ничего нельзя сделать для исправления ошибок в операционной системе и связанных с ней компонентах, таких как ядро, если их исходный код остается недоступным. Однако во многих свободно распространяемых версиях системы UNIX вполне возможно проверить исходный код и при необходимости внести изменения. |
Резюме Как вы убедились при чтении этой главы, существует много типов атак DoS, с использованием которых злоумышленники могут нарушить функционирование различных служб. Атаки, направленные на насыщение полосы пропускания, являются наиболее жестокими из-за их способности захвата трафика. Атаки с захватом ресурсов уже используются многие годы, и взломщики продолжают применять их с большим успехом. Бреши в программном обеспечении особенно популярны у взломщиков, поскольку сложность реализации стека протокола IP и связанных с ним программ постоянно повышается. И наконец, атаки DNS чрезвычайно эффективны при использовании унаследованных изъянов важнейших служб, являющихся фундаментом Internet. Фактически, некоторые эксперты по вопросам безопасности считают, что теоретически вполне возможно инициировать атаку DoS против самой сети internet, если через протокол BGP воспользоваться данными о маршрутах. Этот протокол интенсивно применяется большинством магистральных провайдеров. |