Как сделать дудос сервера
DDoS-атака: как сделать? Программа для DDoS-атак
Вероятно, многие современные пользователи компьютеров и Интернета слышали о наличии DDoS-атак, производимых злоумышленниками в отношении каких-либо сайтов или серверов крупных компаний. Давайте посмотрим, что такое DDoS-атака, как сделать ее самому и как защититься от таких действий.
Что такое DDoS-атака?
Для начала, пожалуй, стоит разобраться, что собой представляют такие неправомерные действия. Оговоримся сразу, что при рассмотрении темы «DDoS-атака: как сделать самому» информация будет подана исключительно для ознакомления, а не для практического использования. Все действия такого рода уголовно наказуемы.
Сама же атака, по большому счету, представляет собой отсылку достаточно большого количества запросов на сервер или сайт, которые с превышением лимита обращений блокируют работу веб-ресурса или службы провайдера в виде отключения сервера защитным ПО, межсетевыми экранами или специализированным оборудованием.
Понятно, что DDoS-атака своими руками не может быть создана одним пользователем с одного компьютерного терминала без специальных программ. В конце концов, ну не будет же он сидеть сутками напролет и ежеминутно посылать запросы на атакуемый сайт. Такой номер не пройдет, поскольку защита от DDoS-атак предусмотрена у каждого провайдера, а один пользователь не в состоянии обеспечить такое количество запросов на сервер или сайт, которое бы за короткое время превысило лимит обращений и вызвало срабатывание различных защитных механизмов. Так что для создания собственной атаки придется использовать кое-что другое. Но об этом позже.
Почему возникает угроза?
Если разбираться, что такое DDoS-атака, как сделать ее и послать превышенное количество запросов на сервер, стоит учесть и механизмы, по которым такие действия производятся.
Это могут быть ненадежные межсетевые экраны, не способные справляться с огромным количеством запросов, бреши в системе безопасности провайдера или в самих «операционках», нехватка системных ресурсов для обработки поступающих запросов с дальнейшим зависанием системы или аварийным завершением работы и т. д.
В общем-то и современные электронные коммерсанты занимаются тем же. Для этого просто скачивается программа для DDoS-атак, ну а дальше, как говорится, дело техники.
Виды DDoS-атак
Теперь несколько слов о классификации атак такого типа. Основным для всех является выведение сервера или сайта из строя. К первому типу можно отнести ошибки, связанные с посылом некорректных инструкций серверу для выполнения, вследствие чего происходит аварийное завершение его работы. Второй вариант – массовая отсылка данных пользователя, приводящая к бесконечной (циклической) проверке с увеличением нагрузки на системные ресурсы.
Третий тип – флуд. Как правило, это задание заранее неправильно сформированных (бессмысленных) запросов серверу или сетевому оборудованию с целью увеличения нагрузки. Четвертый тип – так называемое забивание каналов связи ложными адресами. Еще может использоваться атака, доводящая до того, что в самой компьютерной системе меняется конфигурация, что приводит к ее полной неработоспособности. В общем, перечислять можно долго.
DDoS-атака на сайт
Как правило, такая атака связана с конкретным хостингом и направлена исключительно на один заранее заданный веб-ресурс (в примере на фото ниже условно обозначен как example.com).
При слишком большом количестве обращений к сайту нарушение связи происходит по причине блокирования связи не самим сайтом, а серверной частью провайдерской службы, вернее, даже не самим сервером или системой защиты, а службой поддержки. Иными словами, такие атаки направлены на то, чтобы владелец хостинга получил от провайдера отказ в обслуживании при превышении определенного контрактного лимита трафика.
DDoS-атака на сервер
Приложение для организации DDoS-атак
Вот мы подошли к пониманию того, что такое DDoS-атака. Как сделать ее при помощи специализированных утилит, мы сейчас и разберемся. Сразу отметим, что приложения такого типа особо-то засекреченными и не являются. В Интернете они доступны для бесплатного скачивания. Так, например, самая простая и известная программа для DDoS-атак под названием LOIC свободно выложена во Всемирной паутине для загрузки. С ее помощью можно атаковать только сайты и терминалы с заранее известными URL- и IP-адресами.
Как получить в своем распоряжение IP-адрес жертвы, по этическим соображениям мы сейчас рассматривать не будем. Исходим из того, что начальные данные у нас есть.
Снизу имеются ползунки регулирования скорости передачи запросов для TCP/UDF и HTTP. По умолчанию значение выставлено на «10». Увеличиваем до предела, после чего нажимаем большую кнопку «IMMA CHARGIN MAH LAZER» для начала атаки. Остановить ее можно повторным нажатием на ту же кнопку.
Естественно, одной такой программой, которую часто называют «лазерной пушкой», доставить неприятности какому-то серьезному ресурсу или провайдеру не получится, поскольку защита от DDoS-атак там установлена достаточно мощная. Но вот если группой лиц применить десяток или больше таких пушек одновременно, можно чего-то и добиться.
Защита от DDoS-атак
С другой стороны, каждый, кто пытается предпринять попытку DDoS-атаки, должен понимать, что на «той» стороне тоже не дураки сидят. Они запросто могут вычислить адреса, с которых такая атака производится, а это чревато самыми печальными последствиями.
Что касается рядовых владельцев хостингов, то обычно провайдер сразу же предоставляет пакет услуг с соответствующей защитой. Средств для предотвращения таких действий может быть очень много. Это, скажем, перенаправление атаки на атакующего, перераспределение поступающих запросов на несколько серверов, фильтрация трафика, дублирование систем защиты для предотвращения их ложного срабатывания, наращивание ресурсов и т. д. По большому счету, обычному юзеру беспокоиться не о чем.
Вместо послесловия
Думается, из данной статьи становится понятно, что сделать DDoS-атаку самому при наличии специального ПО и некоторых начальных данных труда не составит. Другое дело – стоит ли этим заниматься, да еще и неопытному пользователю, который решил побаловаться, так, ради спортивного интереса? Каждый должен понимать, что его действия в любом случае вызовут применение ответных мер со стороны атакуемой стороны, причем, как правило, не в пользу юзера, начавшего атаку. А ведь, согласно Уголовным кодексам большинства стран, за такие действия можно попасть, как говорится, в места, не столь отдаленные на пару-тройку лет. Кто этого хочет?
Всем привет. Это блог Компьютер76, и сейчас очередная статья об основах хакерского искусства. Сегодня мы поговорим о том, что такое DDOS атака простыми словами и примерами. Перед тем, как бросаться специальными терминами, будет введение, понятное каждому.
Однако в современной интерпретации DDOS атака чаще всего применяется для нарушения нормальной работы любого сервиса. Хакерские группы, названия которых постоянно на слуху, совершают нападения на крупные правительственные или государственные сайты с целью привлечь внимание к тем или иным проблемам. Но почти всегда за такими атаками стоит чисто меркантильный интерес: работа конкурентов или простые шалости с совсем неприлично незащищёнными сайтами. Главная концепция DDOS состоит в том, что к сайту единовременно обращается огромное количество пользователей, а точнее запросов со стороны компьютеров-ботов, что делает нагрузку на сервер неподъёмным. Мы нередко слышим выражение “сайт недоступен”, однако мало, кто задумывается, что скрыто на самом деле за этой формулировкой. Ну, теперь-то вы знаете.
Почему это вообще возможно?
DDOS атака – варианты
Вариант 1.
игроки столпились у входа
Представьте, что вы играете в многопользовательскую онлайн игру. С вами играют тысячи игроков. И с большинством из них вы знакомы. Вы обговариваете детали и в час Х проводите следующие действия. Вы все единовременно заходите на сайт и создаёте персонаж с одним и тем же набором характеристик. Группируетесь в одном месте, блокируя своим количеством одновременно созданных персонажей доступ к объектам в игре остальным добросовестным пользователям, которые о вашем сговоре ничего не подозревают.
Вариант 2.
Представьте, что кому-то вздумалось нарушить автобусное сообщение в городе по определённому маршруту с целью не допустить добросовестных пассажиров к пользованию услугами общественного транспорта. Тысячи ваших друзей единовременно выходят на остановки в начале указанного маршрута и бесцельно катаются во всех машинах от конечной до конечной, пока деньги не кончатся. Поездка оплачена, но никто не выходит ни на одной остановке, кроме конечных пунктов назначения. А другие пассажиры, стоя на промежуточных остановках, грустно смотрят удаляющимся маршруткам вслед, не сумев протолкнуться в забитые автобусы. В прогаре все: и владельцы такси, и потенциальные пассажиры.
В реальности эти варианты физически не претворить в жизнь. Однако в виртуальном мире ваших друзей могут заменить компьютеры недобросовестных пользователей, которые не удосуживаются хоть как-то защитить свой компьютер или ноутбук. И таких подавляющее большинство. Программ для проведения DDOS атаки множество. Стоит ли напоминать, что такие действия противозаконны. А нелепо подготовленная DDOS атака, неважно с каким успехом проведённая, обнаруживается и карается.
Что такое DDOS атака вы можете узнать и попробовать прямо сейчас.
Система откажется работать.
Назовите типа DDOS.bat
Объяснять смысл обоих команд, я думаю, не стоит. Видно всё невооружённым взглядом. Обе команды заставляют систему исполнить скрипт и тут же его повторить, отсылая в начало скрипта. Учитывая скорость исполнения, система впадает через пару секунд в ступор. Game, как говориться, over.
DDOS атака с помощью программ.
Для более наглядного примера воспользуйтесь программой Low Orbit Ion Cannon (Ионная пушка с низкой орбиты). Или LOIC. Самый скачиваемый дистрибутив располагается по адресу (работаем в Windows):
Так как нерадивые пользователи забрасывают ресурс сообщениями о вредоносном файле, Source Forge перекинет вас на следующую страницу с прямой ссылкой на файл:
Окно программы выглядит вот так:
Пункт 1 Select target позволит злоумышленнику сосредоточиться на конкретной цели (вводится IP адрес или url сайта), пункт 3 Attack options позволит выбрать атакуемый порт, протокол (Method) из трёх TCP, UDP и HTTP. В поле TCP/UDP message можно ввести сообщение для атакуемого. После проделанного атака начинается по нажатии кнопки IMMA CHARGIN MAH LAZER (это фраза на грани фола из популярного некогда комикс–мема; американского мата в программе, кстати, немало). Всё.
ПРЕДУПРЕЖДАЮ
Этот вариант для опробывания только для локального хоста. Вот почему:
Для этого необходимо:
Если ботов немного, можно конечно все это сделать руками, но мы автоматизируем этот процесс.
Ддос бывает разный
Мы помним, что ддос бывает разный и универсальных способов определения зловердных адресов нету, в каждом конкретном будет иной алгоритм и иные источники.
В общем это тема для отдельной статьи, я же постараюсь для понимания выбрать простой и доступный всем способ.
Итак, допустим, мы имеем TCP/UDP flood по разным портам, какие-то методы ддос сдерживают, доступ к машине есть, но мы хотим снизить мощность атаки и не допустить ее увеличение, ну или просто напакостить ддосерам.
Задача — нанести контрудар, лишить ботнетчиков самых активных ботов.
Собираем логи
Вариантов много, опять-таки тема для отдельной статьи. Есть много разных способов логирования трафика например tcpdump, iptrtaf, netflow…
У меня как-то исторически сложилось большинство логов было снято с использованием iptraf, который использовался для наблюдения за атакой и все скрипты были настроены на их распарсинг. Решение может не самое красивое, но достаточно универсальное. При самой минимальной модификации можно использовать любые логи и проделывать все нижеперечисленные манипуляции в реальном времени.
Итак, начался ддос, мы запускаем iptraf, в настройках (Configure) влючаем логирование (Logging), теперь когда мы запустим IP traffic monitor, оно спросит в какой файл сохранять лог, например
/var/log/iptraf/iptraf.log
Теперь iptraf для нас будет записывать основную информацию о каждом пакете (в т.ч. и дропнутом).
По личному наблюдению хуже серверу от этого не станет, данное логирование почти не тратит полезных ресурсов сервера.
Отправляем абузы
Когда лог есть, можем приступать к его обработке и отправке писем счастья провайдерам зараженных машинок, дабы они разобрались с владельцами.
Для этого предлагаю несколько самописных скриптов, предназначенных для этого.
Скрипты писались в очень тяжелое время, так что о красоте и оптимизации речи не шло, сейчас их немного доработал, приправил комментариями.
Специально разбил всю работу на несколько модулей, каждый из которых отвечает за свою задачу. Это позволит адаптировать их под свой случай и контролировать каждый шаг.
Скрипты
1). show_ips.sh — выводит список ip адресов из лога и количество пакетов, которые прошли за интервал сбора.
После этого скрипт распарсит файл, используя в качестве исходного лога файл iptraf.log и фильтра «Dec 12», и выведет результат в файл ddos_ips.txt для последующего анализа другими скриптами.
* Можно применять и любые свои фильтры, выбирая данные к примеру за конкретный час
Вывод его будет такого вида:
Учитывая, что данный лог будет сделан в момент атаки, будет очень сильный разрыв между наименьшими и наибольшими значениями. Порой в тысячи и десятки тысяч раз. Тут, опять-таки, нет универсальных алгоритмов по какому признаку считать трафик аномальным, нужно смотреть и думать головой.
Но как правило в файле будет очень хорошо видно, ибо нормальный пользователь не может отправить несколько десятков тысяч запросов за несколько минут.
На основании этого лога определяем границу с которой считать айпишники ботами. Можно дополнительно провести ручную проверку некоторых адресов из топов по логам apache/nginx и логу иптрафа.
Например бот ломился по UDP, а у вас только webserver или TCP долбился по каким-то левым портам, кои у вас наглухо закрыты.
Голову на данном шаге очень важно включать, ибо повторюсь универсальных методов нет, все зависит от того что за сервер под атакой, какие сервисы запущены, какая нагрузка.
Можно доработать скрипт и вместе с количеством выводить например еще регион адреса и считать количество закрытых портов, по которым ломился бот, дополнить информацию из логов вэб сервера…
Тут целое поле для мыслительной деятельности, которые выходит за рамки данной статьи.
2). get_info.sh — извлекает abuse email из whois информации для каждого айпишника, полученного скриптом show_ips.sh на шаге 1.
Параметры запуска:
где, ddos_ips.txt это файл созданный на шаге 1
После этого abuse_email.txt будет содержать список email адресов для отправки писем.
Вывод его будет такого вида:
3). get_logs.sh — скрипт извлекает из лога iptraf информацию по каждому конкретному ip адресу, сохраняет в отдельный файл и упаковывает в Gzip
где, pref префикс создаваемых логов для удобства их сортировки
В параметрах обязательно указать th_limit, это опять число коннектов из файла ddos_ips.txt отделяющих хорошие ip адреса от ботов.
На выходе в текущей папке будут созданы Gzip файлы содержащие логи по каждому отдельному ипу.
4). mail_send.sh — скрипт рассылающий абузы по спискам полученным из шага 2. скриптом get_info.sh
где abuse_email.txt файл полученный на шаге 2
Внутри скрипта есть заголовок и тело письма, который переделываете под свои нужды. Можно попугать всяческими карами небесными и угрозами обратиться в полицию и т.д., на некоторых это даже действует.
do_all.sh — данный скрипт выполняет все действия последовательно, но сделан больше для демонстрации, ибо перед тем как его запустить, нужно оттюнинговать параметры скриптов, особенно th_limit под свой случай
parse_date — по этому выражению будет делаться Grep лога, если нужно отобрать записи за определенное число или час
pref — префикс для создаваемых файлов, например та же дата
iptraf_raw_file — откуда брать лог iptrafa
Понятно что можно было сделать скрипты через потоки, но для статьи и понимания работы сделал так, как есть, простор для фантазии бесконечный. Можно доработать и автоматизировать все процессы, например автоматом включать логирование после начала атаки, сделать более точный анализатор для шага 1.
И что в результате? Неужели это подействует?
Что произойдет с полученной абузой? Возможно конечно ее проигнорируют, но, например, на следующий день айпишник опять попадет в черный список и опять уйдет абуза и т.д., возможно когда-то отреагируют.
Если ип это какой-то впс/вдс сервер и абуза попадет например в ДЦ с подробными логами, нормально оформлена, то она скорее всего будет изучена, а если логи будут очень вескими и сойдутся со статистикой ДЦ, то может и будет блок. Тут где-то 50/50, что в общем тоже неплохо.
Если подобное придет провайдеру, он скорее всего уведомит абонента (общался с некоторыми знакомыми, сказали что поступят именно так), а если жалоб придет несколько и опять-таки аргументированных, то может и заблочат до тех пор, пока клиент не поставит нормального антивируса.
После нашей рассылки по всему миру произойдет целая цепочка событий, о которых мы, возможно, никогда и не узнаем, и возможно они не будут иметь какого-то решающего воздействия, но в любом случае это лучше чем ничего не делать и надеяться, что завтра ддосить будут кого-то другого а не вас.
Если подобные действия будут производить большинство и абузы будут сыпаться с разных айпишников, провайдеры будут вынуждены принять меры, каждая такая абуза это гвоздь в гроб ботнета.
Спасибо за внимание, это моя первая статья на хабре, просьба сильно не ругать если что не так. Если же тематика будет интереса, поделюсь практическим опытом, как не обладая серьезными ресурсами, имея 3 рубля за пазухой можно своими силами противостоять достаточно сильным атакам. Порой хитрость и смекалка могут дать больше, чем мощное железо или широкий канал.
UPD: Кстати, бывают случаи, когда способ, описанный в статье, может стать реальным спасением от ддоса. Например если завалили всю ширину порта со сравнительно небольшого числа ботов на широких каналах или сетевая не справляется с потоком запросов. В таком случае помогут или блок на стороне вышестоящего маршрутизатора, что очень часто не представляется возможным во многих ДЦ, или борьба при помощи абуз. Последнее кроме своей простоты и доступности, дает возможность неплохо так напакостить ддосерам и разоружить их.