logo
Лекции (Якунин) / L12

Распределенные атаки на отказ от обслуживания

Атаки на отказ от обслуживания, нацеленные на конкретные Web-узлы, вызывают переполнение последних за счет преднамеренного направления на них Internet-трафика большого объема. Такие атаки, предусматривающие запуск программ, иногда называемых зомби, ранее были скрыты на сотнях подключенных к Internet компьютерах, которые принадлежали обычно ничего не подозревающим организациям.

Распределенные атаки на отказ от обслуживания — DDoS (Distributed Denial of Service) — сравнительно новая разновидность компьютерных преступлений. Но распространяется она с пугающей скоростью.

Рис. 1.3. Характеристика средств для атак на отказ от обслуживания

Сетевые атаки на отказ от обслуживания заметно участились после 1996 года, когда на Web-серверы обрушились потоки SYN. Winnuke, teardrop, Land, bonk, snork и smurf— вот лишь некоторые из средств реализации таких атак, которые выводят из строя системы или засоряют сети. Мало того, что сами по себе эти атаки довольно неприятны, теперь они могут инициироваться одновременно с сотен удаленно управляемых атакующих серверов.

На узлах, организованных хакерами, можно найти три инструментальные средства для атак DDoS: trinoo, Tribe FloodNet (TFN) и TFN2K. Совсем недавно появилось еще одно — stacheldraht (что в переводе с немецкого означает «колючие провода»), сочетающее в себе наиболее неприятные качества TFN и trinoo. На рис. 1.3 представлены характеристики средств для атак на отказ от обслуживания.

При обычной сетевой атаке на отказ от обслуживания хакер использует инструментарий для посылки пакетов выбранной им системе. Эти пакеты должны вызвать переполнение и сбой на целевой системе и спровоцировать ее перезагрузку. Довольно часто адрес отправителя таких пакетов искажается, в силу чего обнаружить реальный источник атаки оказывается крайне трудно. Изменить адрес отправителя ничего не стоит, поскольку от жертвы не требуется ответных сообщений.

Организация атаки DDoS по-прежнему под силу одному хакеру, но эффект такой атаки значительно усиливается за счет использования атакующих серверов, известных как агенты. Этими агентами, которых в trinoo называют демонами (daemon), а в TFN — серверами (server), удаленно управляет хакер.

Получить представление о масштабах подобной атаки можно хотя бы на таком примере: в нападении на один сервер университета штата Миннесота в различное время было согласованно задействовано более 1000 систем. Атака не только привела к отключению этого сервера, но и блокировала доступ ко всей сети университета, которую связывали с Internet два соединения.

Прежде чем начать атаку DDoS, хакер должен проделать предварительную работу, в том числе получить доступ с правами корня (root) или администратора на максимально возможное число систем. До сих пор в качестве агентов при атаке DDoS использовались системы Solaris и Linux. Для получения доступа проводится поиск уязвимых мест систем с помощью таких сканирующих инструментальных средств, как sscan. Затем хакер, используя соответствующий сценарий, проникает в каждую из систем и выполняет установку серверного программного обеспечения.

Для такой инсталляции часто применяется команда удаленного копирования. Сервер, на котором устанавливается программное обеспечение, станет еще одной жертвой взлома, и внезапное увеличение частоты применения команды удаленного копирования обычно служит признаком того, что система не только взломана, но и может использоваться для проникновения на многие другие.

Как только установлен и запущен атакующий сервер — все готово к началу атаки. Чем больше вовлеченных систем, тем массивнее будет атака.

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

Если атака DDoS началась, остановить ее очень сложно. Пакеты, появляющиеся на вашем межсетевом экране, можно здесь блокировать, но они могут столь же легко переполнить вход вашего Internet-соединения. Если адреса отправителей этих пакетов не были искажены, можно попытаться связаться с задействованными системами и попросить их отключить агентов. Таких систем может быть несколько сотен по всему миру. Если же адреса искажены, вы не узнаете, действительно ли они соответствуют адресам отправителей пакетов до тех пор, пока не разыщете несколько мнимых отправителей (если только выбранные адреса не были адресами RFC 1918).

TFN и trinoo используют различные подходы к удаленному управлению. В обоих случаях хакер применяет клиента для передачи команд, управляющих агентами. Ядро trinoo, называемое обработчиком, ждет сигнала, приходящего на порт 27665/ТСР для организации соединения, устанавливая его только после того, как передан соответствующий пароль (по умолчанию это betaalmostdone). Как только хакер аутентифицирован обработчиком, он может послать команды всем агентам о начале передачи потоков UDP на одну или несколько целевых систем в течение известного периода времени (от 1 до 2000 с). Адреса отправителя пакетов trinoo не искажаются, в силу чего определить, какие системы являются агентами, довольно просто. Единственная трудность состоит в том, что их может оказаться очень много.

TFN использует ответные сообщения ICMP (Internet Control Message Protocol) для взаимодействия с клиентами и агентами. Пакеты того же типа пересылаются и в ответных сообщениях команды Ping. Различным командам присваиваются разные кодовые значения; например, 345 означает старт потока SYN. Инструментарий TFN поддерживает несколько разновидностей атак на отказ от обслуживания: потоки SYN, UDP, ICMP и smurfmg. Поскольку сервер TFN работает как корневой, адреса отправителя могут быть искажены (скорее всего, так и будет сделано), чтобы затруднить поиск источников атаки.

TFN2K. появился в декабре 1999 года и предусматривает надежный уровень шифрования (алгоритм CAST-256) при управлении пакетами. Этот метод передачи управляющих сообщений был усовершенствован для того, чтобы разрешить искажение адресов отправителей и передачу пакетов различных типов. Агент TFN2K анализирует сетевой интерфейс и проверяет приходящие из адреса клиентской сети данные, которые он может дешифровать в корректные команды. Все это еще больше усложняет выявление и отслеживание обработчика. Обработчику не передаются никакие ответные сообщения, поэтому он делает вывод, что агент TFN отвечает исключительно по собственному усмотрению.

Инструментарий stacheldraht сочетает в себе возможности TFN и trinoo. Как и TFN, stacheldraht способен искажать адреса отправителей. Кроме того, он может проводить тестирование, чтобы выявить присутствие фильтрации RFC 2267, попытавшись передать пакет с адресом отправителя 3.3.3.3. Если тот блокируется, значит, адреса отправителей по-прежнему искажены, но только в последних восьми битах адреса. Stacheldraht предоставляет возможность модернизации, что позволяет автоматически заменить агентов на новые и запустить их. Stacheldraht использует зашифрованные пакеты TCP (аналогично trinoo) для взаимодействия между клиентами (интерфейс хакера) и обработчиками. Для связи с агентами он также использует зашифрованные пакеты TCP или ICMP. Теперь нетрудно представить себе «удовольствие» стать объектом нападения одновременно сотен хакеров.

Из-за огромного числа систем, вовлеченных в атаки DDoS, попытки прекратить эти атаки практически обречены на провал. Однако существуют превентивные меры, предпринимая которые можно вообще не допустить подобных нападений. Главное — учесть, что атаки начинаются с поиска тысяч уязвимых систем, подключенных к Internet, и последующего проникновения в них. Если эти системы обновить, проникновение можно предотвратить.

Наконец, можно сделать так, чтобы сети не становились источником пакетов с искаженными адресами отправителя. RFC 2267 описывает методику проверки прав доступа, то есть фильтрации пакетов при их входе в сеть так, чтобы только пакеты с легальными адресами отправителя могли преодолеть маршрутизаторы. Остановка всех пакетов с искаженными адресами не предотвратит подобной атаки, но навести порядок после ее завершения будет намного проще.

Методы сбора сведений для вторжения в сеть

Для осуществления несанкционированного доступа в компьютерную сеть требуется, как правило, провести два подготовительных этапа:

 собрать сведения о системе, используя различные методы (рис. 1.4);

 выполнить пробные попытки войти в систему.

Рис. 1.4. Методы сбора сведений для НСД в компьютерную сеть

Многие владельцы систем часто не представляют, какую кропотливую подготовительную работу должен провести нарушитель, чтобы проникнуть в ту или иную компьютерную систему. Поэтому они самонадеянно полагают: чтобы защитить файл, необходимо только указать для него пароль, и забывают, что любая информация о тех или иных слабых местах системы может помочь злоумышленнику найти лазейку и обойти пароль, получив доступ к файлу. Таким образом, информация становится легко доступной, если злоумышленник знает, где и что смотреть. Так, даже простая брошюра, описывающая возможности системы, может оказаться весьма полезной хакеру, который не знаком с системой, и может послужить ключом для вхождения в систему.

Следует учитывать, что в зависимости от профессионализма злоумышленника и поставленных им целей возможны различные направления сбора сведений:

 подбор соучастников;

 анализ периодических изданий, ведомственных бюллетеней, документации и распечаток;

 перехват сообщений электронной почты;

 подслушивание разговоров, телексов, телефонов;

 перехват информации и электромагнитного излучения;

 организация краж;

 вымогательство и взятки.

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

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

Для установления контактов с целью получить информацию о вычислительной системе или выявить служебные пароли хакеры могут применять разнообразные приемы. Например:

 знакомясь, они представляются менеджерами;

 используют вопросники, раздавая их в фойе фирмы и детально расспрашивая сотрудников о компьютерной системе;

 звонят оператору ЭВМ в обеденное время с просьбой напомнить якобы забытый пароль;

 прогуливаются по зданию, наблюдая за доступом к системе;

 устанавливают контакты с незанятыми в данный момент служащими охраны, которым посетители при входе в здание фирмы должны предъявлять идентификационный код или пароль.

Более злонамеренным, но, возможно, и более успешным, является метод «охоты за мозгами», когда на фирму приходит человек, якобы желающий работать системным программистом или инженером по линиям связи, и просит дать ему консультацию. Удивительно, как много информации может передать простой служащий, не имеющий перспективы роста, но считающий себя достойным более важной и высокооплачиваемой должности, — он может раскрыть коды пользователей, пароли, указать слабые места в сетях связи.

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

Перехват сообщений электронной почты производится с помощью компьютера. Обычно для подключения к электронной почте используется бытовой компьютер с модемом, обеспечивающим телефонную связь.

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

Недавние аресты и судебные преследования хакеров в США и Великобритании позволили выявить, насколько усложнились способы извлечения информации. Сейчас нет ничего необычного в том, что блоки, установленные хакерами, могут быть зашифрованы, и только отдельные члены преступных группировок могут считывать с них информацию.

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

 перехват устных сообщений с использованием радиопередатчиков, микрофонов и микроволновых устройств;

 подслушивание сообщений, передаваемых по телефону, телексу и другим каналам передачи данных;

 контроль за электромагнитным излучением от дисплеев;

 перехват спутниковых или микроволновых передач.

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

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

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

Администраторы и менеджеры некоторых фирм имеют возможность брать работу домой или при необходимости связываться и передавать информацию по телефонным каналам в банк данных фирмы. Торговые агенты могут совершать сделки, используя терминалы в номерах отелей, или получать доступ к информации непосредственно из салона автомобиля. Это создает почву для кражи информации непосредственно в домах, автомобилях и отелях с целью вхождения в вычислительную систему.

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

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

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

Чтобы осуществить несанкционированное вхождение в систему, хакеру требуется знать номер телефона или иметь доступ к линии связи, иметь протоколы работы, описание процедур входа в систему, код пользователя и пароль. Если хакер не знает телефонного адреса порта, он должен либо узнать его, завязывая знакомства, либо воспользоваться автонабирателем.

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