Smurf с веб-интерфейсом? Легко!

Xakep, номер #032, стр. 032-059-1

Потник (faq@real.xakep.ru)

Проблемы с погодой

На улице жестокий июль. Жарко - не продохнуть. Спасают только кондиционеры, квас в трехлитровых банках, душ три-четыре раза в день, попытки выбраться после работы на дачу... Все подталкивает к злости. Выползаешь в Сеть, прилипаешь к креслу, пальцы сохраняют останки сока, пролитого на клаву. Да тут еще ублюдки колотят понты! Нужно решение, если уж не подавления жары, то устранения ублюдков :).

А тут вдруг приятель, администратор мощного сервака, подкинул идею повесить smurf?a на его станцию, да не просто так, а с веб-интерфейсом, чтоб своей толпе раздать доступ по http, позволив валить чуханов пачками. Что ж делать... Врубил любимый Perl Билдер и начал лабать шедевр.

О сути дела

Думаю, многие в курсе фишки смурфа. Свежо предание. Но все же кое-что отреставрируем.

Broadcast (широковещательные) атаки, названные smurf'ом, основаны на принципе существования многоженства лоховых сетей, в которых компьютеры отвечают на UDP и ICMP пакеты, направленные на броадкаст адрес сети, так же, как на юникаст пакеты. Почти во всех современных реализациях TCP/IP стека это отключено по умолчанию. Хотя в любой момент для накачки гимора ты можешь включить западло; например, во FreeBSD это делается так: sysctl -w net.inet.icmp.bmcastecho=1. Данная опция включает ответ на ICMP Echo Request пакеты, направленные на броадкаст адрес.

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

Чем стрелять?

Скачать программу можно здесь http://packetstormsecurity.org/new-exploits/papasmurf.c Это не самая свежая версия, но я по привычке работаю с ней...

Данная реализация работает под Linux/*BSD. Для компиляции под Linux надо выполнить следующую команду:

gcc -DLINUX -o smurf5 papasmurf.c, для компиляции под *BSD - gcc -o smurf5 papasmurf.c.

Использование тулзы:

./smurf5 <адрес жертвы> <файл со списком броадкастов> [опции]

-p данная опция указывает, на какие порты слать UDP пакеты (порты задаются через пробел).

-r опция указывает, что следует слать UDP пакеты на случайные порты.

-R флаг задает то, что следует слать пакеты со случайных портов на случайные при засыле UDP пакетов.

-s порт, с которого бомбить UDP пакеты (0 - по дефолту)

-P протоколы, которые использовать (udp, icmp или оба одновременно)

-S размер пакета в байтах (по дефолту 64 байта)

-f имя файла, из которого читать информацию, заносимую в пакет при отправке.

-n количество пакетов, которое следует отправить (по дефолту 0 - не ограничено)

-d задержка между отправками пакетов в микросекундах (по дефолту 10000).

Содержание  Вперед на стр. 032-059-2

ttfb: 3.5297870635986 ms