
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).

















































































































