Алгоритм локализации источника атаки для одного из видов DoS-атак

Ю.А.Семенов


В настоящее время известно более десятка видов DoS-атак. Среди наиболее известных – использование широковещательных адресов Интернет (255.255.255.255) или субсетей. Но так как такая адресация хорошо известна администраторам, которые блокируют такие адреса, атакеры используют возможности современных скоростных сетевых интерфейсов и реализуют сканирующий тип атак.

При этой атаке адресом получателя является IP-addr+i, где i принимает значение от 0 до 254, а IP-addr имеет вид X.X.X.0. Это адреса машин, выбранных в качестве посредников. Диапазон вариации адресов может быть легко расширен, если известно, что в данной сети имеются и другие блоки адресов С-класса. Адресом отправителя служит IP-адрес атакуемого сетевого объекта, он может находиться внутри локальной сети или на другом континенте. ЭВМ атакера может располагаться также где угодно, но для повышения эффективности атаки лучше, чтобы она находилась в той же LAN. При этом обычно для достижения большего эффекта пакеты имеют минимальную длину, так как это позволяет увеличить частоту посылок. Одна из возможных схем DoS-атаки показана на рис. 1.


Рис. 1.

Объектом атаки помимо устройства, указанного в IP-адресе отправителя, являются маршрутизаторы, расположенные на пути от локальной сети посредника до атакуемого объекта. Ведь число пакетов в единицу времени может достигать нескольких тысяч в секунду, а при определенных обстоятельствах и превосходить 10000 пакетов/сек. Старые типы маршрутизаторов с такой загрузкой не справляются, но и для самых новых приборов она может серьезно снизить пропускную способность. Обычно машиной-атакером служит ЭВМ локальной сети, взломанная хакером ранее. Это еще более усложняет задачу поиска истинного источника атаки.

Сеть ИТЭФ неоднократно была объектом такой атаки. Характерным признаком атаке является скачкообразное возрастание частоты следования пакетов. Обнаружить же ЭВМ злоумышленника не просто, так как в его пакетах нет его истинного IP-адреса. Обнаружить его можно, лишь просматривая все пакеты субсети, где размещена эта машина, и фиксируя наиболее часто встречающиеся МАС-адреса пакетов. Для этого ЭВМ, где будет стоять такая программа должна быть расположена в той же субсети, что и ЭВМ-атакер. Более того, если машина-детектор расположена на другом порту переключателя, до нее будут доходить только пакеты, адресованные ей самой. Таким образом, данный способ требует наличия ЭВМ регистратора в каждой ветви локальной сети. А если таких ветвей несколько десятков или даже более сотни, данных подход вряд ли можно признать эффективным.

В предлагаемом алгоритме постоянно (раз в несколько минут) регистрируются потоки пакетов во всех ветвях сети с использование возможностей протокола SNMP. В нашем конкретном примере таких потоков измеряется около 40. Сначала отображается 8 временных зависимостей потоков по умолчанию (рис. 2). Из них программно выбирается 8 наибольших, и их временные диаграммы отображаются на WEB-странице (результат отображается через 60 секунд, смотри рис. 3, красные цифры слева обозначают мгновенные значения потоков пакетов через данный интерфейс). Такого числа вполне достаточно, так как ступеней ветвления потоков обычно меньше 6. Рассматривая представленные диаграммы на рис. 2, следует учитывать, что список потоков и порядок их отображения определяется мгновенным значением потока, соответствующим правой стороне диаграмм. Если число пакетов в секунду превышает 2000/сек, программа выдает сигнал тревоги. Ею выявляется подсеть и ветвь сети, которая является источником данного потока пакетов. Далее делается запрос в базу данных, и определяются IP-адреса ЭВМ, подключенных к данной ветви. Когда список подозреваемых ЭВМ определен, производится зондирование этих машин с помощью ICMP (или TCP/UDP) пакетов и фиксируются потери дейтограмм (отсутствие откликов). ЭВМ с наибольшей вероятностью потери пакетов рассматривается как источник атаки. Результат работы программы анализа потерь (написана Гончаровым А. А.) в различных субсетях ИТЭФ можно увидеть на сервере http://saturn.itep.ru. Далее можно подключить к этой ветви ЭВМ, например, с программой sniffer или какой-то другой аналогичной, способной анализировать поток пакетов, в том числе на уровне МАС-адресов, а можно сразу послать системного программиста разобраться с проблемой на месте.

Каналы с наибольшими потоками пакетов в ИТЭФ Семенов Ю.А.(semenov@itep.ru)
Диаграмма вход/выход. потоков пакетов C-3550
Диаграмма входн/выход. потоков пакетов MERLIN
Диаграмма вход/выход. потоков пакетов ERIRAS
Диаграмма вход/выход. потоков пакетов VIDEO

Диаграмма вход/выход. потоков пакетов SUVOROV
Диаграмма вход/выход. потоков пакетов K101

Диаграмма вход/выходного потоков пакетов MED
Диаграмма вход/выход. потоков пакетов K120

IN - зеленый; OUT - синий.
Вертикальными красными линиями обозначены концы суток
Рис.2.

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


Но даже описанная автоматизированная процедура поиска атакующей машины не решает задачу обнаружения первоисточника атаки.

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

Можно, конечно поставить на самой обнаруженной машине (или другой ЭВМ, подключенной к сети, например, через общий разветвитель - HAB) поставить программу-ловушку, которая фиксирует успешные внешние соединения, и просматривать списки таких соединений время от времени. Ведь злоумышленник обязательно время от времени посещает места своих преступлений. Но более эффективным решение может быть специальная программа, анализирующая журнальные файлы ОС, и в подозрительных случаях посылающая сообщения администратору о зарегистрированных фактах. 12 сентября 2003 г. 10:17:20.

Каналы с наибольшими потоками пакетов в ИТЭФ Семенов Ю.А.(semenov@itep.ru)
C2948[icmpEcho/Msg]= 68/106
C3550[icmpEcho/Msg]=120/127
C7206[icmpEcho/Msg]=27/113
504 Диаграмма вход/выход. потоков пакетов K138
329 Диаграмма вход/выход. потоков пакетов C7206
24 Диаграмма вход/выход. потоков пакетов K1

23 Диаграмма вход/выход. потоков пакетов K101
17 Диаграмма вход/выход. потоков пакетов FAR

17 Диаграмма вход/выход. потоков пакетов K180/1
14 Диаграмма вход/выход. потоков пакетов KAG

11 Диаграмма вход/выход. потоков пакетов ERIR
IN - зеленый; OUT - синий.
Вертикальными красными линиями обозначены концы суток

Рис. 3.

Результаты работы программ записываются в базу данных (MySQL), откуда могут быть извлечены в любое время.