Как организовать ддос атаку на сайт: Как сделать Ддос атаку: самые эффективные способы и программы

Содержание

Как сделать Ддос атаку: самые эффективные способы и программы

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

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

 

Что такое Ддос-атака?

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

Реальная Ddos-атака практически невозможна без помощи других пользователей или специальных программ. Один человек с одного компьютера не способен «руками» отослать нужное количество запросов, чтобы веб-ресурс «лег». Поэтому многих и интересует, как можно сделать Ддос-атаку при помощи сторонних программ. Но об этом чуть ниже.

 

Почему Ddos-атаки имеют успех?

Ddos-атака — это реальный способ «насолить» конкуренту, и некоторые веб-предприниматели не гнушаются пользоваться этим «черным инструментом» конкурентной борьбы. Обычно Ддос-атака бывает эффективной из-за проблем провайдеров:

  • ненадежные межсетевые экраны;

  • бреши в системе безопасности;

  • проблемы в операционной системе серверов;

  • нехватка системной мощности для обработки запросов;

  • и др.

Именно эти проблемы и дают возможность осуществить эффективную Ddos-атаку. Поэтому проблема безопасности у IT-компаний всегда стоит на первом месте. Но современная защита стоит дорого, а потому условно считается, что чем больше денег компания-провайдер тратит на защиту своих ресурсов, тем надежнее защита. Но не все провайдеры у нас такие, как Microsoft или Yahoo (хотя и эти компании подвергались Ddos-атакам!), есть и менее финансово обеспеченные, которые более всего подвержены Ддосу.

 

Виды Ддос-атак

Даже у Ддос-атак есть собственная классификация. Вот как она выглядит:

  1. Массовое направление на сервер некорректных инструкций, выполнение которых приводит к аварийному завершению работы.

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

  3. Массовое направление неправильных инструкций к серверу, что также увеличивает его нагрузку.

  4. Массовая атака ложными адресами, что приводит к «забиванию» каналов связи.

Обобщив, можно сказать, что Ddos-атака — это «массовость» каких-либо действий, которые могут сделать так, что сервер перестанет работать. 

 

Ddos-атака: как сделать

Перед тем как сделать Ддос-атаку, нужно знать, для чего и на кого она рассчитана. Как правило, такие атаки плотно связаны с конкретным сайтом и конкретным хостингом. У каждого хостинга могут быть свои слабые места, поэтому «точки атак» могут быть разные. Из этого следует, что и инструменты, и подходы для совершения Ддос-атаки нужно подбирать конкретно под ресурс и хостинг, потому что один и тот же инструмент на разных ресурсах может сработать, а может и нет.

 

Программа для Ddos-атак по IP и URL

Самой распространенной подобной программой является LOIC. Это не какая-то сверхсекретная утилита из darknet — это приложение есть в открытом доступе, и, в принципе, любой желающий может его скачать и использовать.

Эта программа рассчитана для Ddos-атак, когда вам заранее известен IP и URL атакуемого ресурса. Чтобы воспользоваться данной программой, нужно:

  1. Найти и скачать ее из интернета, она там есть в открытом доступе.

  2. Активировать это приложение при помощи файла «loic.exe».

  3. Ввести в открывшихся полях IP и URL атакуемого ресурса.

  4. Отрегулировать уровень передачи запросов.

  5. Нажать для старта кнопку «imma chargin mah lazer».

Конечно, запуском одной такой программы с одного компьютера вы, скорее всего, не сможете навредить ресурсу, потому что у него сработает его система безопасности. Но если будет 10 запущенных программ на один ресурс? А 100? 

 

Еще инструменты, как сделать Ддос-атаку

Как уже говорили, уровень безопасности у разных ресурсов будет разный, поэтому, если не помогла программа LOIC, хотя при «массовости» она может помочь, можно попробовать что-то из следующего списка простых и не очень инструментов, нацеленных «положить» сервер различными запросами:

  1. Fg Power Ddoser

  2. Silent Ddoser

  3. Dnet Ddoser

  4. Darth Ddoser

  5. Hypo Crite

  6. Host Booter 

  7. Good Bye v3/0-v5.0

  8. Black Peace Group Ddoser

Можно также использовать Ddos-атаку из «зараженной» программы, для этого подойдут следующие инструменты:

  1. PHPDos

  2. TWBooter

  3. Dark Shell

  4. War Bot

  5. Infinity Bot

  6. Darkness

  7. Russkill

  8. Armageddon

Если после применения инструментов, которые описаны выше, вы так и не нашли подходящий, то можете воспользоваться услугами Ddos-сервисов:

  1. Wild Ddos

  2. Death Ddos Serice

  3. Ddos SerVis

  4. Beer Ddos

  5. No Name

  6. Oxia Ddos Service

  7. Wotter Ddos Service

  8. Ice Ddos

 

Заключение

Список программ и инструментов «как можно сделать Ддос-атаку», на самом деле, очень большой. А это означает, что данное незаконное действие является весьма популярным среди пользователей.

Убедительная просьба, перед тем как планировать или организовывать Ddos-атаку, подумайте, нужно ли вам это? Хотим еще раз напомнить, что Ddos-атаки уголовно наказуемы!

Как организовать DDoS в благих целях? / Хабр

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

А как этот сервис отреагирует, если против него будет организована распределенная DoS-атака? Защищен ли ресурс от потенциальных действий злоумышленников?

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

В этой статье мы расскажем про опыт организации нагрузочного тестирования для DNS- и HTTP-сервисов.

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

Сравнив политику различных облачных сервисов (кто-то безжалостно банит учетную запись, с которой, предположительно, были выполнены действия, приводящие к отказу ресурса) в отношении проведения нагрузочного тестирования с использованием их функционала, мы решили остановиться на Amazon Web Services (AWS). В их документах указано, что AWS допускает проведение нагрузочного тестирования, но просит согласовать его, отправив письмо на определенный адрес.

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

Customer ID:
   Customer Name:
   Email Address:
   AWS Account ID load test will be performed from:
   Does the customer have an NDA?
Target Data
   EC2 Resources:
   Cloudfront Distribution:
   API Gateway / Lambda ID:
   ELB Names:
   Non-AWS Target:
   Region (please list all regions in scope for testing):
Source Data:
   IP Addresses:
   Source Account ID:
   Regions involved:
Testing Parameters:
   How much traffic do you plan to generate by region during testing?
   What is your expected peak load from source by region? (i. e. xx Gbps)
   What is your expected peak load at destination? (i.e. xx Gbps)
   Are you testing traffic outbound from EC2, inbound into EC2, or both?
   Are you testing traffic outbound (egress) from EC2, inbound (ingress) into EC2, or both:
   Egress. What is your expected peak load from source by region? (i.e. xx Gbps)
   Ingress. What is your expected peak load from source by region? (i.e. xx Gbps)
   Start Date:
   End Date:
   Finite testing details including timeline of testing:
   Summary of Test:
   Testing Timelines by phase including rps, pps, and Gbps:
   Peak bandwidth for each source IP:
   Tools Used for each phase of test:
   Types of testing to be performed for each phase of the request:
   What criteria/metrics will you monitor to ensure the success of this test?
   Who is performing the Load Test? (Please provide contact details):
   Does the tester have an NDA?
Testing Security
   Do you have a way to monitor the data traffic for the duration of the test to verify 
bandwidth limits do not exceed approved rates?
   Do you have a way to immediately stop the traffic if we/you discover any issue?
   2 Emergency contact names and phone numbers:

Есть несколько нюансов:

  1. У нас спрашивают, кого будем «дубасить». Имеем ли мы на это право? Говорим, что это наш ресурс (по всей видимости, никто не проверяет, так ли это) и что тестирование полностью согласовано.

  2. Нам нужно обозначить, сколько трафика создадим в каждом из регионов. В ходе переписки выясняем, что каждый регион имеет свой лимит на количество сетевого трафика. В общей сложности разрешают запросить 645 Гб/c. Считаем, сколько нужно для атаки, и набираем регионы таким образом, чтобы получилось необходимое значение.

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

  4. И в обязательном порядке всеми силами стараемся заверить, что будем вести себя хорошо, внимательно наблюдать за ходом тестирования и остановим его по первому требованию в случае необходимости.

Скорее всего, в ответ на заполненную форму попросят какие-то разъяснения, поэтому переписываемся и отвечаем на вопросы до тех пор, пока не получим разрешение на тестирование.

На все согласование уходит примерно три рабочих дня, если отвечать оперативно.

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

• включать инстанс;

• запускать тестовую атаку;

• собирать статистику о ходе проведения;

• останавливать тестовую атаку;

• менять IP-адрес;

• выключать инстанс.

Создание образа инстанса

Выбор типа инстанса

Сначала соберем AWS-образ, который будет содержать необходимые инструменты и скрипты для управления. Первым делом надо выбрать, какой инстанс арендовать. Изучаем характеристики разных типов инстансов: смотрим на цену, объем максимального трафика, мощность CPU (последнее важно, потому что трафик создается мощностями процессора как-никак), затем тестируем реальную производительность и максимальное число запросов. По нашим оценкам, наиболее удобными для тестирования являются инстансы t3.small, но тут каждый выбирает на свой вкус.

Характеристики инстансов можно посмотреть вот тут. Также выбирать и сравнивать инстансы можно здесь.

Запрос на увеличение лимита

Нужно заранее подумать о том, сколько инстансов будет участвовать в тестировании. Дело в том, что Amazon предоставляет для каждого региона свои ограничения на число инстансов. Если у вас есть ощущение, что понадобится больше инстансов, чем доступно по умолчанию, то стоит как можно раньше запросить увеличение лимита. Для этого переходим в раздел Support, создаем обращение типа Service limit increase. Время обработки обращения может быть разным: кто-то отвечает уже на следующий день, предоставляя столько сущностей, сколько было запрошено, кто-то говорит, что не даст запустить больше, чем N инстансов. Были и такие регионы, которые отвечали на запрос около месяца.

Тюнинг производительности

Далее нужно создать образ инстанса, который будет запускаться во время тестирования. Для этого включаем инстанс выбранного типа, производим на нем все настройки, затем сохраняем то, что получилось, в качестве образа (в том же меню Actions, где есть возможность включения инстанса, а также функциональность по созданию образа Image Create Image).

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

Для этого внесем настройки в файл /etc/sysctl.conf:

• Повысим диапазон локальных портов и уменьшим время нахождения сокетов в состоянии FIN_WAIT:

net.ipv4.ip_local_port_range = 1024-65535 (по умолчанию: 32768-61000)
net.ipv4.tcp_fin_timeout = 10 (по умолчанию: 60)

Диапазон локальных портов определяет максимальное количество исходящих сокетов, которое хост может создать из определенного IP.

С настройкой по умолчанию (61 000–32 768) получается 28 233 сокета. С новыми настройками – 64 500.

Fin_timeout определяет минимальное время, в течение которого исходящие сокеты могут находиться в состоянии FIN_WAIT.

Если указаны значения по умолчанию, система может обеспечить не более (61 000–32 768) / 60 = 470 сокетов в секунду.

Увеличивая port_range и уменьшая fin_timeout, мы можем повлиять на способность системы генерировать большее число исходящих соединений.

• Разрешим повторно использовать сокеты в состоянии TIME_WAIT, когда заканчиваются свободные:

net.ipv4.tcp_tw_reuse = 1 

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

Очень подробно о TIME_WAIT рассказано в этой статье.

• Включим опцию tcp_timestamps для работы вышеуказанной опции tcp_tw_reuse:

net.ipv4.tcp_timestamps = 1 – включить опцию `tcp_timestamps` для работы вышеуказанной опции tcp_tw_reuse 

• Остальные опции:

net.ipv4.tcp_max_tw_buckets = 720000 – увеличить возможное количество сокетов в состоянии TIME_WAIT
net.ipv4.tcp_keepalive_time = 600 – уменьшить тайм-аут keepalive-соединений
net. ipv4.tcp_keepalive_probes = 3 – уменьшить количество keepalive-проб
net.ipv4.tcp_keepalive_intvl = 10 – уменьшить временной интервал между keepalive-пробами
net.ipv4.tcp_window_scaling = 1 – разрешить масштабирование TCP-окна
net.ipv4.tcp_mem = 8192 131072 196304 – увеличить размер буферов для TCP-пакетов 
net.ipv4.udp_mem = 8192 131072 196304 – увеличить размер буферов для udp-пакетов
net.ipv4.tcp_slow_start_after_idle=0 – отключить Slow-Start Restart
net.core.wmem_default = 31457280 – установить размер буфера по умолчанию для отправки данных 
net.core.wmem_max = 33554432 – установить максимальный размер буфера для отправки данных  
net.core.somaxconn = 65535 – увеличить размер очереди сокетов в ожидании обработки
net.core.netdev_max_backlog = 65535 – увеличить размер очереди пакетов между сетевой картой и ядром
vm.swappiness = 30 – понизить порог своппинга
vm.dirty_ratio = 50 – очищать буферы по достижении 50 % ОЗУ
vm.pagecache = 90 – ограничить размер файлового кеша

Сценарии тестовых атак

1. Атака на DNS

Одна из основных задач тестирования – оценка производительности DNS-серверов. Именно DNS-серверы могут стать узким местом отказоустойчивости сайта, так как при возникновении проблем с DNS даже самый устойчивый сервис окажется недоступным. Для создания нагрузки на DNS-серверы будем генерировать много разнообразных DNS-запросов. Запросы должны быть валидными и требовать от DNS-сервера как можно большего и длительного ответа.

Для генерации подобного трафика подходит утилита DNSPerf.

DNSPerf – это простой, гибкий и бесплатный инструмент тестирования производительности DNS-серверов. В первую очередь он рассчитан на authoritative DNS-сервера, но может также использоваться для измерения производительности кеширующих серверов.

В нашем случае нагружаются authoritative DNS-сервера, обслуживающие одну зону – example.com.

Для DNSPerf предварительно подготовим файл с запросами dns_queries.txt (преимущественно ANY для увеличения времени и размера ответа от DNS-сервера):

#dns_queries. txt
example.com ANY
www.example.com ANY
test.example.com ANY
static.example.com ANY
example.com АААА
www.example.com АААА
test.example.com MX

Пример запуска утилиты:

dnsperf -s TARGET_IP -d dns_queries.txt -c 100 -n 100 
-s = целевой IP-адрес
-d = путь к файлу данных с запросами. По умолчанию – stdin 
-c = количество имитируемых клиентов. Для каждого клиента используется уникальный исходящий номер порта 
-n = количество «прогонки» файла с запросами.

2. Атака на ICMP

Следующим этапом тестирования является оценка устойчивости к большому количеству ICMP-трафика. Так как по техническим причинам у серверов часто должна оставаться возможность отвечать на ping-request, существует вероятность DDoS-атаки с использованием ping-запросов. Помимо указания настроек, исключающих возможность ping-to-death, нужно убедиться в устойчивости серверов к пиковым нагрузкам на ICMP. Для создания таких нагрузок лучше использовать известную утилиту hping3, которая позволяет регулировать количество запросов, интервал между отправками, а также размер пакетов.

Пример запуска утилиты:

hping3 -i u1000 -d 1500 -c 100000 -1 TARGET_IP
-i u100 = интервал между отправляемыми пакетами (uX for X microseconds)
-d 1500 = размер каждого пакета
-c 1000000 = количество пакетов для отправки
-1 = режим ICMP

3. Атака на HTTP

Теперь проверяем на стрессоустойчивость основной функционал сервиса – обработку HTTP(S)-трафика. Одним из самых гибких и простых инструментов для генерации HTTP-трафика является siege. Siege – это многопоточная утилита с открытым исходным кодом, предназначенная для тестирования производительности веб-ресурса.

Как и DNSPerf, siege позволяет нагрузить сервер запросами от заданного числа виртуальных пользователей (эмуляция пользователя реализуется c помощью отдельного порта), а также использовать подготовленный заранее набор запросов. Это очень удобно, так как можно включить в тест наиболее ресурсоемкие запросы.

Пример запуска утилиты:

siege -b -c 100 -f test_urls.txt 
-b = без задержек (режим benchmark)
-c = количество имитируемых клиентов.  Для каждого клиента используется уникальный исходящий номер порта 
-f = файл с запросами

Формат содержимого test_urls.txt:

http://example.com/site/login POST login=username&password=test
http://example.com/site/client POST useragent=Mozilla&version=123&date=24May
http://example.com/site/order POST user=username&company=ooo&phone=812345678

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

Ни в одном из вариантов не используется подмена IP, так как Amazon не позволяет это реализовать. Какой бы src_IP ни был указан в пакете, на выходе с инстанса он будет изменен на правильный.

Все создаваемые запросы должны быть легитимными – никакой волны исходящего трафика без ответа, – так как политика Amazon в отношении DDoS довольно строгая. Даже согласованный стресс-тест отнимает минимум несколько дней на общение с техподдержкой, а при первых «вредоносных» действиях получаем бан порта, с которого выходил трафик, и требование немедленно объясниться. (start|stop|status)$ ]]; then
echo «nothing to do: need argument for stop,start or status»
exit 1
fi
if [[ «$1» = «start» ]]; then
shift
dnsperf $@
fi
if [[ «$1» = «stop» ]]; then
kill $(pidof dnsperf)
fi
if [[ «$1» = «status» ]]; then
if [[ ! «$(pidof dnsperf)» = «» ]]; then
echo «dnperf is running with PID $(pidof dnsperf)»
ps aux | grep dnsperf
else
echo «dnsperf is not running»
fi
fi

Как видно из кода, скрипт можно будет запускать и останавливать, а также проверять статус (запущен/не запущен).

Аналогичным образом построены скрипты для ICMP- и HTTP-тестов, запускающие соответственно hping3 и siege с переданной через аргумент строкой параметров.

Примеры команд:

ssh instance-amazon 'sudo dns.sh start -s TARGET_IP -d valid_dns_queries.txt -c 1 -n 100 &>>dns.log &'
ssh instance-amazon 'sudo ping.sh start -i u1000 -d 1500 -c 100000 -1 TARGET_IP &>>ping.log &'
ssh instance-amazon 'sudo http. sh start -b -c 100 -f test_urls.txt &>> http.log &'

Скрипты мониторинга

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

#iptables.sh
sudo iptables -N TRAFFIC_OUT
sudo iptables -A TRAFFIC_OUT -p tcp
sudo iptables -A TRAFFIC_OUT -p udp
sudo iptables -A TRAFFIC_OUT -p icmp
sudo iptables -A OUTPUT -j TRAFFIC_OUT
sudo iptables-save

Скрипт создает новую цепочку TRAFFIC_OUT и добавляет в нее фильтры для нужных протоколов: tcp, udp, icmp.

В цепочку OUTPUT добавляется перенаправление пакетов в TRAFFIC_OUT.

Количество переданных данных можно узнать командой:

# iptables -L TRAFFIC_OUT -v -n -x | tail -n 3 | awk '{print $2/1024/1024,"Mb\t\t\t",$3}’ : 
 2.2 Mb       tcp
 4.4 Mb      udp
 3.2 Mb      icmp

Установим скрипт в качестве сервиса. Для этого создадим файл monitoring.service и переместим его в директорию /etc/systemd/system нашего образа:

# /etc/systemd/system/monitoring.service
[Unit]
After=network.target
[Service]
ExecStart=/usr/local/bin/monitoring.sh
[Install]
WantedBy=default.target

Теперь можно добавить сервис в автозагрузку:

systemctl enable monitoring.service
systemctl start monitoring.service

Управление инстансами

Теперь разберемся с удаленным (максимально автоматизированным) управлением инстансами.

Для этих целей можно использовать механизм AWS CLI – управление с помощью консоли.

Создаем Secret Key (Access keys (access key ID and secret access key)) и настраиваем консоль.

Теперь у нас есть доступ ко всем возможностям учетной записи.

Особенность работы с AWS состоит в том, что все действия выполняются для конкретного региона и их приходится повторять, если привлечено несколько регионов.

Для создания нового инстанса из образа, который мы выше смастерили (подразумеваем, что есть публичный ami-ID, который используем в скрипте), выполним следующие действия:

  • создаем SSH-ключ и добавляем его в AWS:
yes n |ssh-keygen -q -t rsa -f $KEYNAME -m pem -N "" > /dev/null
chmod 400 $KEYNAME
aws ec2 import-key-pair --region $REGION --key-name $KEYNAME --public-key-material file:///$(pwd)/$KEYNAME. pub

  • создаем security-group, который разрешает доступ к машине по SSH. В противном случае входящие SSH-соединения будут запрещаться:
SECURITY="ssh-group"
aws ec2 create-security-group --region $REGION --group-name $SECURITY --description "Just ssh. Nothing more"
IP_RANGE="0.0.0.0/24"
aws ec2 authorize-security-group-ingress --region $REGION  --group-name $SECURITY --protocol tcp --port 22 --cidr $IP_RANGE

  • создаем инстанс с созданными ранее ключом и security-group и указываем ID образа. Число инстансов, создаваемых единовременно, может быть произвольным:
IMG='ami-0d0eaed20348a3389'
NUM=1
aws ec2 run-instances --region $REGION --image-id $IMG --count $NUM --instance-type t2.micro --key-name $KEYNAME --security-groups default $SECURITY > instances.json

  • ждем, пока машина проинициализируется. Это занимает какое-то время: сначала мы получаем ответ об успехе (instances.json), но в это время машина только создана, но еще не запущена (например, ей еще не присвоен IP-адрес). Необходимо дождаться завершения запуска (обычно для этого достаточно минуты).

Затем можно подключиться по SSH, если нам известен IP-адрес. Просто запрашиваем список машин, которые сейчас запущены. Среди их параметров находим PublicDnsName или PublicIpAddress.

aws ec2 describe-instances --region

Далее выполняем SSH-команды, указав SSH-ключ, созданный выше:

ssh -I $KEYNAME -oStrictHostKeyChecking=no ubuntu’'+ins_dns echo‘'O’'

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

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

AWS присваивает новый IP-адрес каждый раз, когда машина запускается. Поэтому для смены IP потребуется выключить и включить машину заново (не нужно ее удалять!).

Разница между выключением и удалением заключается в том, что мы посылаем разные сигналы. Stop – чтобы выключить, terminate – чтобы выключить и сразу же удалить.

В целях мониторинга входящего трафика инстанса используем следующую команду с указанием ID инстанса: когда начинается замер трафика, когда заканчивается, за какой период значения суммируются:

aws cloudwatch get-metric-statistics --region REGION --namespace AWS/EC2 \
        --statistics Sum --metric-name NetworkIn 
        --start-time $STARTTIME --end-time $FINISHTIME
        --period $PERIOD --dimensions Name=InstanceId,Value=$INCTANCEID

Дополнительно для проведения атаки потребуется наблюдать, жив ли тот сервис, который мы тестируем.

Создаем и запускаем простейший «пинг»-скрипт, который отслеживает доступность целевых портов (53 и 80 в нашем случае).

Пример кода на Python, который позволяет автоматизировать проверку доступности:

def http(url):
    cmd = ['curl', '-w', '"%{time_total}"', '-o', '/dev/null', '-s', url]
    result = check_output(cmd). decode('utf-8')
    result = float(json.loads(result))
    return result * 1000000
def dns(ip, domain):
    cmd = ['dig', 'any', '@'+ip, domain ]
    result = check_output(cmd).decode('utf-8')
    result = int(result.split('Query time:')[1].split('msec')[0])
    return result

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

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

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

Стоит обсудить еще один вопрос, связанный с организацией тестирования, — стоимость всего этого мероприятия.

Amazon предоставляет подробную информацию о тарифах, но нужно понимать, что приходится платить практически за все. Тем не менее многими расчетами можно пренебречь. В первую очередь стоит посчитать стоимость трафика (зависит от региона и от того, какой итоговый объем информации будет передан) и стоимость аренды инстансов (оплата поминутная). Эти пункты образуют примерно 99 % от стоимости всей атаки.

Поэтому стоимость атаки рассчитывается в каждом случае отдельно в зависимости от [масштаба боевых действий] максимальной мощности атаки и числа планируемых запусков.

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

Для того чтобы проиллюстрировать подсчет стоимости проведения нагрузочного тестирования, допустим, что хотим проверить устойчивость DNS-сервера к нагрузке в 10 Гб/c.

Нам известно, что используемые инструменты и возможности инстанса t3. small, запущенного в Мумбаи, позволяют выдать 500 Мб/c с одного запущенного инстанса. Цена за аренду сущности – 0,0224 $ в час, за трафик – 0,01093 $ за 1 Гб. То есть пик атаки означает одновременную работу 20 сущностей.

Мы будем увеличивать мощность атаки постепенно, для этого сначала запустим одну сущность, затем добавим еще по одной каждые 60 с.

Формула расчета стоимости принимает вид:

60 с * (стоимость аренды в секунду) + 60 с * 0,5 Гб/c * (стоимость Гб трафика) = стоимость атаки с одной сущности за 60 с.
1 * (стоимость атаки с одной сущности) + 2 * (стоимость атаки с одной сущности) + ... + 20 * (стоимость атаки с одной сущности) = стоимость всей атаки

Получается, что стоимость одной атаки мощностью в 10 Гб/c на DNS-сервер – примерно 70 $. Отметим, что это приблизительная оценка, так как объем трафика нельзя абсолютно точно спрогнозировать. Подробнее про цены можно почитать здесь. Более того, правильный подход – выполнить проверку несколько раз, чтобы откалибровать настройки тестируемого сервера.

На этом все про организацию нагрузочного тестирования. Желаем не убить ваши серверы в процессе проб и ошибок.

Как проводить DDoS-атаки как этичный хакер

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

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

«Черт, предохранитель сгорел».

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

Почти идентичный процесс происходит при атаках DDoS. Замените «электрический ток» на «информацию», а «установку» на термин «информационный процессор», и вы уже поняли основной принцип.

Что означает DDoS?

Атака DDoS — это сокращение от «Распределенный отказ в обслуживании», и это старший брат более простых атак типа «отказ в обслуживании».

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

DoS-атаки обычно отправляют информацию только из одного источника (например, ПК или другие устройства, подключенные к Интернету), но DDoS-атака использует тысячи или сотни тысяч источников для затопления своей цели. Это делает его на несколько порядков мощнее, чем его меньший брат.

Измерение силы DDoS-атак

Согласно этому исследованию , 82% атак длятся менее 4 часов. Что касается объема пропускной способности, 34% работают в диапазоне от 100 МБ до 1 ГБ, и только 5,3% превышают отметку в 10 ГБ/с.

Атака типа «отказ в обслуживании» со скоростью 1 ГБ/с достаточно сильна, чтобы вывести из строя большинство веб-сайтов, поскольку их хостинг данных просто не обеспечивает достаточную пропускную способность для поддержания сайта в сети.

Одной из крупнейших когда-либо зарегистрированных была атака ботнета Mirai осенью 2016 года со скоростью более 1 терабайта в секунду. Он перегрузил провайдера Dyn DNS, а затем эффект пошел каскадом, временно отключив основные веб-сайты, такие как Reddit или Twitter.

В настоящее время даже начинающие хакеры, которые даже не умеют программировать, чтобы спасти свою жизнь (так называемые скрипт-кидди), имеют доступ к большим и мощным ботнетам по найму, которые могут залить цель со скоростью 100 ГБ/с. Угроза этого типа никуда не исчезает, а наоборот. Наоборот, он станет только мощнее и доступнее, чем раньше.

Зачем кому-то это делать?

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

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

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

Кроме того, DDoS-атака может действовать как дымовая завеса, скрывая реальный результат, такой как заражение цели вредоносным ПО или извлечение конфиденциальных данных.

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

Heimdal™ Threat Prevention Home гарантирует, что ссылка безопасна!

Ваши родители и друзья перейдут по любой подозрительной ссылке, поэтому убедитесь, что они защищены.

Heimdal™ Threat Prevention Home обеспечивает:
Автоматические и бесшумные обновления программного обеспечения
Умная защита от вредоносных программ
Совместимость с любым традиционным антивирусом.

БЕЗОПАСНЫЙ ПРОСМОТР ОНЛАЙН!

Попробуйте БЕСПЛАТНО

30-дневная бесплатная пробная версия

Как провести DDoS-атаку в киберпреступном стиле

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

Ботнеты

Ботнет — это совокупность компьютеров или других подключенных к Интернету устройств, которые были заражены вредоносными программами и теперь реагируют на приказы и команды центрального компьютера, называемого Центром управления и контроля.

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

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

Однако некоторые из них доступны для аренды тому, кто предложит самую высокую цену, и кто может использовать их по своему усмотрению. Часто это означает DDoS-атаку.

Программы и инструменты DDoS

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

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

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

Вот примерный список инструментов, которые злоумышленники используют для проведения атак типа «отказ в обслуживании»:

  • Низкоорбитальная ионная пушка, сокращенно LOIC.
  • ХОИК.
  • ХАЛК (Король невыносимой нагрузки HTTP).
  • DDOSIM — Симулятор DDoS-атак уровня 7
  • R-U-Пока мертв.
  • Молот Тора.

Как DDoS-атак на IP-адрес с помощью cmd

Один из самых простых и рудиментарных методов отказа в обслуживании называется «ping of death» и использует командную строку для переполнения IP-адреса пакетами данных.

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

а)    Один компьютер. Однако для того, чтобы это было успешным, злоумышленник должен сначала узнать IP-адрес устройства.

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

Чтобы запустить ping-атаку типа «отказ в обслуживании», злоумышленнику сначала необходимо узнать IP-адрес компьютера или устройства жертвы. это относительно простая задача, однако.

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

Использование таблиц Google для отправки бесчисленных запросов

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

Это огромное количество запросов перегружает сайт и блокирует отправку внешнего трафика посетителям.

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

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

Атаки Teardrop

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

Сервер знает порядок повторной сборки через параметр под названием «смещение». Думайте об этом как об инструкции по сборке игрушки LEGO.

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

Усиление DDoS-атаки

Чтобы максимизировать каждый байт данных, злонамеренные хакеры иногда усиливают наводнение, используя атаку с отражением DNS.

Это многоэтапный процесс:

  1. Злоумышленник выдает себя за жертву, подделывая ее IP-адрес.
  2. Используя поддельную личность, он будет отправлять бесчисленные DNS-запросы на открытый преобразователь DNS.
  3. Резолвер DNS обрабатывает каждый запрос, а затем отправляет информацию обратно на устройство-жертву, удостоверение которого было украдено. Однако информационные пакеты, которые отправляет преобразователь DNS, намного больше, чем запросы, которые он получает.

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

Типы DDoS-атак

Атаки типа «отказ в обслуживании» делятся на две большие категории в зависимости от их основного вектора атаки:

  • Уровень приложения.
  • Сетевой уровень.

Атаки на сетевом уровне

Атака на сетевом уровне работает путем переполнения инфраструктуры, используемой для размещения веб-сайта, огромными объемами данных.

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

Для сравнения: веб-сайту с 15 000 просмотров страниц в месяц и сотнями страниц для оптимальной работы требуется около 50 гигабайт пропускной способности в месяц. Имейте в виду, что этот трафик широко рассредоточен в течение всего месяца. У такого сайта нет шансов остаться в сети, если DDoS-атака захватит его с 30 или 40 гигабайтами трафика в течение одного часа.

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

Сами атаки на сетевом уровне бывают разных форм и размеров. Вот некоторые из наиболее частых:

  • SYN-атаки. SYN — это сокращение от «синхронизировать» и представляет собой сообщение, которое клиент (например, ПК) отправляет на сервер, чтобы они были синхронизированы.
  • Отражение DNS.
  • Атаки с усилением UDP .

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

Атаки на прикладном уровне

Атаки на прикладном уровне носят более хирургический характер по сравнению с сетевыми атаками. Они работают, ориентируясь на определенные программы или программное обеспечение, которые веб-сайт использует в своей повседневной работе.

Например, атака на уровне приложения будет нацелена на установку WordPress сайта, скрипты PHP или связь с базой данных.

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

Типичным DDoS-атак прикладного уровня является HTTP-флуд. Это работает, злоупотребляя одной из двух команд, POST или GET. Команда GET — это простая команда, которая восстанавливает статический контент, такой как сама веб-страница или изображение на ней.

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

HTTP-флуд генерирует огромное количество внутренних запросов к серверу, которые приложение не может обработать, поэтому оно затем терпит неудачу и уничтожает весь сайт вместе с ним.

Как обнаружить DDoS-атаку?

Проанализируйте трафик, это всплеск использования или атака?

Всплески трафика — частое явление, и на самом деле они могут быть достаточно большими, чтобы вывести из строя плохо подготовленные веб-сайты. Сайт, предназначенный для работы в среднем с 30-40 одновременными пользователями, окажется под нагрузкой, если всплеск увеличит число пользователей до 600-700 одновременно.

Первым признаком DDoS-атаки является сильное снижение производительности сервера или полный сбой. Примерно в это же время должны появиться ошибки 503 «Сервис недоступен». Даже если сервер не дает сбоев и цепляется за жизнь, критические процессы, которые раньше выполнялись за секунды, теперь занимают минуты.

Источник

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

Конечно, если злоумышленник использует VPN или ботнет, вы увидите целую кучу IP-адресов вместо одного. Вот более подробное изложение  о том, как использовать Wireshark, чтобы выяснить, находитесь ли вы на неправильном конце отказа в обслуживании.

Microsoft Windows также поставляется с собственным инструментом под названием Netstat, который показывает, какие устройства подключаются к вашему серверу, и другую подобную статистику.

Чтобы открыть инструмент, напишите cmd  в строке поиска меню «Пуск», а затем введите нетстат – . Это приведет вас к экрану, показывающему ваш собственный внутренний IP-адрес в левом столбце, а правый столбец содержит все внешние IP-адреса, подключенные к вашему устройству.

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

Вот как будет выглядеть DDoS-атака:

Источник

С правой стороны вы можете видеть, что один внешний IP-адрес неоднократно пытается подключиться к вашему собственному устройству. Хотя это не всегда указывает на DDoS, это признак того, что происходит что-то подозрительное, и требует дальнейшего расследования.

Заключение

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

Простой способ защитить себя от вредоносного ПО

Вот и 1 месяц Heimdal™ Threat Prevention Home, дома!

Используйте его, чтобы:
Блокируйте вредоносные веб-сайты и серверы от заражения вашего ПК
Автоматически обновляйте свое программное обеспечение и устраняйте бреши в безопасности
Храните ваши финансовые и другие конфиденциальные данные в безопасности

ПРОСТОЙ И НАДЕЖНЫЙ. РАБОТАЕТ С ЛЮБЫМ АНТИВИРУСОМ.

Скачать бесплатную пробную версию

КРЕДИТНАЯ КАРТА НЕ ТРЕБУЕТСЯ

Что такое DDoS-атака и как защитить свой сайт?

Вы когда-нибудь беспокоились о том, что ваш сайт выйдет из строя? Независимо от того, управляете ли вы интернет-магазином или ведете блог, неработающий сайт может означать потерю трафика и бизнеса. В то время как нечастые и кратковременные перебои в работе сайтов — это нормально, некоторые сайты могут отключаться по гораздо более злонамеренной причине — DDoS-атаке.

Если вы когда-либо подвергались DDoS-атаке или были ее свидетелем, вы точно знаете, насколько изнурительной она может быть. Но что такое DDoS-атака и как защитить от нее свой сайт?

Давайте узнаем, как DDoS-атаки приводят к сбою веб-сайтов, и какие шаги можно предпринять, чтобы уменьшить ущерб.

 

Что такое DDoS-атака?

DDoS-атака, сокращенно от Distributed Denial of Service, — это атака, которая перегружает сервер, сеть или службу, подавляя их вредоносным трафиком. Тип атаки DoS (отказ в обслуживании), он переполняет службу, делая ее недоступной для законного пользовательского трафика. Многие DDoS-атаки используют несколько устройств, включая компьютеры и устройства IoT (Интернет вещей), в качестве источников трафика атаки.

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

Если такую ​​ситуацию трудно представить, подумайте о традиционной пробке на любой улице или шоссе, которые ведут к месту назначения. DDoS-атака подобна автомагистрали, забитой автомобилями, которые блокируют вас или кого-либо еще на дороге и в том месте, куда вы пытаетесь попасть. В этом случае пунктом назначения является ваш веб-сайт, а трафик, блокирующий перемещение людей, — это DDoS-атака.

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

 

Распространенные типы DDoS-атак

Прежде чем мы узнаем о наиболее распространенных типах DDoS-атак, нам сначала нужно получить общее представление о том, что они атакуют — сеть. Поскольку сетевое подключение — это неосязаемое понятие, оно обычно описывается с использованием модели взаимодействия открытых систем (OSI). Эта модель концептуализирует сетевое подключение, разделяя его на 7 уровней, как показано ниже.

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

Атаки прикладного уровня

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

Двумя основными типами DDoS-атак прикладного уровня являются HTTP-флуд-атаки. Обе атаки перегружают цель HTTP-запросами, но делают это по-разному.

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

HTTP POST лавинная рассылка вместо отправки запросов на статическое содержимое отправляйте запросы на динамически генерируемые ресурсы, такие как отправка форм.

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

Атаки на протоколы

Атаки на протоколы используют слабые места на уровнях 3 и 4 модели OSI. Этот тип DDoS-атаки отправляет больше «пакетов» или фрагментов данных, чем ваш сервер может обработать. В качестве альтернативы, атака на протокол может привести к перегрузке вашей сети. В любом случае, эта атака потребляет ресурсы вашего сервера и приводит к отказу в обслуживании.

Существует два основных типа атак на протоколы: SYN-флуд и Ping of Death (POD).

SYN-флуд используют TCP, который позволяет программам и устройствам отправлять друг другу сообщения. SYN — это тип TCP-пакета, который отправляется устройству для запроса соединения. Устройство, получившее этот запрос, попытается отправить ответ SYN-ACK. Эта атака использует уязвимость в этом процессе, отправляя несколько запросов SYN без ответа на ответ SYN-ACK. Поскольку целевое устройство ожидает подтверждения этого ответа, новые подключения не могут быть установлены, а входящие запросы отклоняются.

Ping of Death , или POD, атаки используют другой подход. Используя команду ping, эта DDoS-атака отправляет на цель несколько пакетов большого размера. Атака Ping of Death может отправлять пакеты, размер которых превышает максимальный размер пакета, потому что она отправляет их как фрагменты. Когда принимающий сервер собирает все фрагменты, данные переполняются и вызывают отказ в обслуживании.

Атаки на основе тома

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

Помимо HTTP-флудов, существует несколько других флуд-атак, жертвами которых могут стать веб-сайты.

UDP-флуд отправляют большие объемы пакетов данных протокола пользовательских дейтаграмм (UDP), используя присущую UDP слабость — он требует меньше проверок, чем TCP, что облегчает прохождение трафика. UDP-флуд занимает ресурсы хоста, отправляя эти пакеты на случайные порты, что приводит к тому, что хост многократно проверяет и отвечает пакетом ICMP «Destination Unreachable». Из-за большого количества ресурсов, захваченных этой атакой, может быть отказано в обслуживании законного трафика.

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

 

Почему веб-сайты подвергаются DDoS-атакам?

Основная цель DDoS-атаки — предотвратить доступ законного пользовательского трафика к вашему веб-сайту, будь то за счет замедления работы сайта или его полной недоступности. Однако причина, по которой кто-то хочет запретить доступ к вашему веб-сайту, может быть разной. Вот лишь несколько причин, по которым сайт может подвергнуться DDoS-атаке:

  • Конкуренция : Конкурирующий бизнес может использовать DDoS-атаку, чтобы попытаться уничтожить бизнес, с которым он конкурирует. Это может стратегически совпасть с крупными событиями, такими как запуск нового продукта или распродажа, такая как Киберпонедельник.
  • Хактивизм : Группы «хактивистов», которые являются политическими активистами, использующими хакерство в качестве инструмента, могут использовать DDoS-атаки на веб-сайты, против которых они идеологически выступают.
  • Вымогательство : Интернет-преступники могут использовать DDoS-атаки (или даже просто угрозу атаки) для вымогательства денег с целевого веб-сайта с помощью выкупа или шантажа.
  • Вандализм : DDoS-атака иногда может происходить без какой-либо реальной причины — это может быть просто потому, что кибер-вандал решил атаковать сайт для развлечения.

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

 

Что делать, если ваш сайт подвергся атаке

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

1. Общайтесь с нужными людьми в вашей организации.

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

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

2. Обратитесь к своему интернет-провайдеру, поставщику веб-хостинга или в службу безопасности.

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

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

3. Начать блокировать трафик и ограничивать запросы.

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

4. Следите за атакой и своей защитой.

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

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

 

Как подготовиться к DDoS-атакам

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

1. Узнайте о средствах защиты вашего провайдера и хоста от DDoS-атак.

Возможно, у вашего интернет-провайдера и веб-узла уже установлены средства защиты от DDoS-атак. Например, ведущая сеть доставки контента Cloudflare имеет встроенную комплексную защиту от DDoS. Это включает в себя защиту веб-ресурсов, облачный брандмауэр веб-приложений, службу обратного прокси-сервера, защиту от DDoS-атак на основе BGP и многое другое.

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

2. Разработайте план реагирования на DDoS-атаки.

Если ваш сайт когда-либо станет целью DDoS-атаки, у вас должен быть план, чтобы смягчить ее как можно лучше. Во-первых, просмотрите свою систему на наличие слабых мест или уязвимостей — определите, как вы будете устранять эти проблемы. Затем определите четкий ответ для вашей компании. Каков ваш процесс идентификации, коммуникации и смягчения последствий?

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

3. Используйте брандмауэр веб-приложений (WAF).

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

Многие сети доставки контента или CDN поставляются со встроенным WAF. Обязательно узнайте об этом при обращении к своему интернет-провайдеру и хосту.

4. Обновляйте все системы и программное обеспечение.

Устаревшая система может быть особенно уязвима для DDoS-атак.

This entry was posted in Популярное