Полезные знания DDOS для новичков.

Profit-team

Новичок
ЗАБАНЕН
Регистрация
15/7/18
Сообщения
20
Репутация
130
Реакции
24
RUB
0
Сделок через гаранта
1
Если вы планируете сделку с его участием, мы настоятельно рекомендуем вам не совершать ее до окончания блокировки. Если пользователь уже обманул вас каким-либо образом, пожалуйста, пишите в арбитраж, чтобы мы могли решить проблему как можно скорее.
Настоятельно попрошу вас не атаковать государственные ресурсы и крупные компании, особенно банки.
Коммерческие организации не прощают подобного, в суде грызут жестко.
В противном случае вас может ждать уголовное дело, пусть расследование и затянется на какой-то срок, доказать успеют.
Думаю, все понятно, тянуть не буду, перейдем к теории, но сначала вопросы касательно введения.


Для начала разберем сам термин DDOS. Для этого обратимся к вики, а потом я распишу своими словами.

DDOS - это сокращение английского выражения Distributed Denial of Service, что переводится на русский язык как «Распределённый отказ от обслуживания». Это означает отказ от обслуживания сетевого ресурса в результате многочисленных распределенных (то есть происходящих с разных точек интернет-доступа) запросов. Отличие DoS-атаки (Denial of Service — «Отказ от обслуживания») от DDOS состоит в том, что в этом случае перегрузка происходит в результате запросов с какого-либо определенного интернет-узла.

А теперь сам:
Давайте представим ситуацию, есть некий Вася и куча бухих бомжей.
Идет Вася по улице, никого не трогает, направляется на работу.
Вдруг, из неоткуда появляется куча бомжей и начинают до него доебываться.
Что делать Васе? Его окружили и не дают пройти, более того, он даже не может пошевелиться, потому что они озверели и начали его кусать.
Добив его окончательно они резко уходят.
Что остается Васе? Правильно, умирать или ждать скорую.

В данном случае ресурс это Вася, а бомжи это наш DDOS.


Хакеры из других сфер и обычные люди часто недооценивают DDOS, но, это и является их ошибкой.
К примеру, чтобы дефейснуть сайт мне например понадобится какое-то время. А в данном случае, когда все настроено, мне достаточно одной команды чтобы уебать банк под корень.
В случае с дефейсом все могут вернуть назад, а в случае с DDOS-ом, они не смогут даже зайти на сервер, потому что он будет валяться.
Для базовой теории я думаю стоит начать с сетевых моделей. Она есть в паблике, но без нее никуда.Это основы.
В случае с DDOS мы затронем стек протоколов TCP/IP.

TCP/IP - это сетевая модель передачи данных, предоставленная в цифровом виде.

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

Стек протоколов TCP/IP включает в себя четыре уровня, это:

Прикладной уровень (Приложений) (Layer 7)

Транспортный уровень (layer 4)

Сетевой уровень (Layer 3)

Канальный уровень (Layer 2)

Я создам более 4 и буду рассказывать о каждых методах, обходах, ботах. В РФ, я пожалуй первый, кто будет это рассказывать подробно.
Начнём с Layer 4.

Транспортный уровень - 4-й уровень сетевой модели OSI, предназначен для доставки данных.
При этом неважно, какие данные передаются, откуда и куда, то есть, он предоставляет сам механизм передачи.
Блоки данных он разделяет на фрагменты, размеры которых зависят от протокола: короткие объединяет в одни, а длинные разбивает.
Типы данных: Сегменты/Дейтаграммы
Функции: Прямая связь между конечными пунктами и надежность

Примеры: TCP/UDP

В случае с UDP и TCP флудом - мы будем флудить огромным количеством пакетов в секунду.

Но не всегда получится убить тот или иной ресурс одним pps. (Packets per second) Пакеты в секунду.
Допустим с помощью 20 mpps и 10gbps нельзя убить DDOS Guard/Variti/Myarena и т.д, а с помощью 100k pps и 300 gbps это возможно.
НО, для начала разберем один нюанс. А именно, отличие TCP от UDP.
Если кто из вас не знает, TCP является безопасным протоколом, в отличии от UDP.
Его отличие в том, что он гарантирует доставку пакетов до адресата, в случае с UDP - он не проверяет доставку, его задача лишь отправить.

TCP имеет так называемое "тройное рукопожатие", которое устанавливается между клиентом и сервером, если описывать кратко происходит это так:

1. От клиента идет запрос на создание TCP-сессии и отправляется TCP пакет с флагом SYN.

2. Сервер отправляет в ответ TCP пакет с флагами SYN+ACK клиенту.

3. Клиент отправляет TCP пакет с флагом ACK серверу.

Теперь давайте разберем подробнее:

1. Клиент, который намеревается установить соединение, посылает серверу сегмент с номером последовательности и флагом SYN.
Дальнейший алгоритм:

- Сервер получает сегмент, запоминает номер последовательности и пытается создать сокет (буферы и управляющие структуры памяти) для обслуживания нового клиента;
- В случае успеха сервер посылает клиенту сегмент с номером последовательности и флагами SYN+ACK, и переходит в состояние SYN-RECEIVED;

- В случае успеха сервер посылает клиенту сегмент с номером последовательности и флагами SYN+ACK, и переходит в состояние SYN-RECEIVED;

- В случае неудачи сервер посылает клиенту сегмент с флагом RST.

2. Если клиент получает сегмент с флагом SYN, то он запоминает номер последовательности и посылает сегмент с флагом ACK.

Дальнейший алгоритм:

-Если он одновременно получает и флаг ACK (что обычно и происходит), то он переходит в состояние ESTABLISHED;
-Если клиент получает сегмент с флагом RST, то он прекращает попытки соединиться;
-Если клиент не получает ответа в течение 10 секунд, то он повторяет процесс соединения заново.

3. Если сервер в состоянии SYN-RECEIVED получает сегмент с флагом ACK, то он переходит в состояние ESTABLISHED.

В противном случае после тайм-аута он закрывает сокет и переходит в состояние CLOSED.

Процесс называется «трёхэтапным рукопожатием», так как несмотря на то что возможен процесс установления соединения с использованием четырёх сегментов (SYN в сторону сервера, ACK в сторону клиента, SYN в сторону клиента, ACK в сторону сервера), на практике для экономии времени используется три сегмента.

А теперь давайте разберем флаги TCP:

ACK - Флаг в TCP сегменте, установка которого означает, что поле «Номер
подтверждения» задействовано. Если установлен флаг ACK, то это поле содержит порядковый номер, ожидаемый получателем в следующий раз. Помечает этот сегмент как подтверждение получения.

RST - Флаг, в заголовке сегмента TCP, включение которого сигнализирует об обрыве соединения.

FIN - Флаг, в заголовке сегмента TCP, включение которого сигнализирует о завершении сессии.
SYN - Флаг, в заголовке сегмента TCP, служащий для синхронизация номеров сессий приема/передачи данных. Именно этим флагом устанавливается соединение.

PSH - более не используемый флаг, который не требуется для атаки.
Ну а теперь перейдем к UDP.

UDP — протокол пользовательских датаграмм. Один из ключевых элементов TCP/IP, набора сетевых протоколов для Интернета. С UDP компьютерные приложения могут посылать сообщения (в данном случае называемые датаграммами) другим хостам по IP-сети без необходимости предварительного сообщения для установки специальных каналов передачи или путей данных.

Говоря проще, в отличии от TCP он не проверяет ничего и не устанавливает соединение. Он просто отправляет нужную информацию адресатам. Ну и одно из отличий UDP от TCP - это конечно же скорость, она значительно выше.

Ну, а теперь сами методы атак.

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

SSYN - (Spoofed SYN) В данном случае, мы посылаем поддельные SYN-запросы на сервер, подменяя адрес отправителя (Спуфинг). Ответный SYN+ACK отправляется на несуществующий адрес, в результате в очереди подключений появляются так называемые полуоткрытые соединения, ожидающие подтверждения от клиента. По истечении определённого тайм-аута эти подключения отбрасываются. Метод очень эффективный и актуальный по сей день. От него могут защититься, но в СНГ мало у кого на это хватит ума.

SYN-ACK Flood - В данном случае, во время SYN-ACK флуда мы заваливаем поддельными SYN-ACK пакетами, поступающими в большом количестве. Пытаясь принять решение по каждому SYN-ACK пакету и сопоставить его с одной из записей, хранящихся в таблице соединений, сервер жертвы выделяет на это вычислительные ресурсы (ОЗУ, проц, и пр.) для обработки потока поддельных SYN-ACK пакетов. В итоге происходит то же, что и во время SYN-флуда: перегрузка сервера жертвы, ведущая к его частичной недоступности или полному пизд*цу.

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

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

RST/FIN Flood - В данном случае, чтобы закрыть TCP-SYN сессию, между клиентом и хостом производится обмен RST или FIN пакетами. Во время RST или FIN флуда сервер жертвы на высокой скорости получает поддельные RST или FIN пакеты, не имеющие отношения к любой из сессий в базе данных сервера. Во время RST или FIN флуда сервер жертвы вынужден выделять значительное количество системных ресурсов (опять таки это оперативная память, проц и пр.) для сопоставления входящих пакетов с текущими соединениями, что приводит к потере производительности сервера и к его частичной недоступности.

ACK Flood - В данном случае, при фрагментированном ACK флуде используются пакеты максимально допустимого размера (например, 1500 байт) для заполнения значительной полосы пропускания канала при относительно небольшом количестве передаваемых пакетов. Фрагментированные ACK пакеты обычно легко проходят через роутеры, файрволлы и системы предотвращения вторжений, т.к. эти устройства не пересобирают фрагментированные пакеты на сетевом уровне. Как правило, такие пакеты содержат случайные данные. Поскольку целью злоумышленника является заполнения всей полосы пропускания внешних каналов сети жертвы, данный вид флуда снижает производительность всех серверов в атакуемой сети.
ESSYN/xSYN/NSYN особо не отличаются друг от друга, так что смысла нет о них говорить.

Те, кто шарят, думают, а где же JUNK? Это метод прикладного уровня, и он будет в теме про Layer7.

Теперь перейдём к UDP.

NTP Амплификация - Это тип DDOS атаки транспортного уровня, при котором публично доступный NTP (Network Time Protocol) сервер используется для генерации “мусорного” трафика. Так, отправляя короткие запросы одному из открытых NTP серверов можно получить ответ в десятки раз большего объема (эффект амплификации). Этим мы и пользуемся, отправляя запросы с указанием адреса сервера-жертвы в качестве IP-адреса источника запроса. В итоге сеть сервера жертвы перегружаются “мусорным” UDP-трафиком, из которого достаточно сложно выявить легитимные запросы и ответы NTP. Реализовать данный метод проще простого, как и все методы амплификаций. Данный метод использует 123 порт.

DNS амплификация - Этот тип DDOS атаки транспортного уровня использует специфику работы DNS служб в сети. Суть заключается в том, чтобы запросить у публичного DNS-сервера данные о домене и направить его ответ на атакуемый сервер. При реализации данного вида атаки мы формируем и херачим запрос, в ответ на который DNS-сервер возвращает как можно больше данных. Например, запрос списка всех DNS-записей в определенной зоне. Т.к. в протоколе UDP не осуществляется проверка IP-адресов источника, хуярим короче генерацию запросов от имени сервера жертвы, указывая его IP-адрес в поле исходящего адреса. Основной целью тут является заполнение канала сервера жертвы объемными ответами от публичных DNS-серверов. Так, используя хороший лист для генерации запросов к публичным DNS-серверам, мы можем увеличить поток генерируемого “мусорного” трафика до 100 раз. При этом вычислить нас или вычислить хотя бы IP-адреса генераторов запросов почти невозможно, т.к. реальный исходящий IP-адрес всегда заменяется на другой. Метод хоть и староватый, но живет и по сей день. Данный метод использует 53 порт.

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

SSDP амплификация - Данный метод является базируемым протоколом UDP, использующий для усиления универсальные устройства Plug and Play, что позволяет отправлять запросы, используя порт 1900. SSDP является одним из сильнейших методов, превосходящий по мощности NTP, DNS, Chargen и др.

VSE - Этот тип DDOS атаки транспортного уровня нацелен на атаку серверов Valve. Очень эффективен и используется также для других игровых серверов, юзает порт 27015.

Sentinel - использование для усиления DDoS-атак сервера лицензий Sentinel. Способ был актуален в 2015 - 2016 годах : В сентябре 2016 года специалисты Akamai зафиксировали еще две такие атаки, направленные против игровой фирмы и финансового учреждения. Их пиковая мощность достигала 11,7 Гбит/с. Хотя использование Sentinel-серверов усиливает атаку почти в 40 раз. Но сдерживает тот факт, что уязвимых серверов в принципе немного : менее 800.d

LDAP - CLDAP используя уязвимость нулевого мы смогли использовать уязвимые серверы с поддержкой CLDAP для перенаправления мусорного трафика на свои цели. Данная техника похожа на DNS, NTP и SMTP амплификацию. На этот раз мы отправляем множество запросов, обращенных к порту LDAP, при этом подменяя IP-адреса отправителей на адрес жертвы. В результате серверы заваливали нашу цель ответами, чей размер значительно превышает размер запроса.

RiPv1 - Протокол RIPv1 считается быстрым и легким способом обмена информацией о маршрутах в небольшой сети с несколькими маршрутизаторами. Маршрутизатор, поддерживающий RIP, отправляет запрос при первоначальной настройке либо при включении питания. Любое другое устройство, принимающее такие запросы, ответит списком маршрутов. Обновления таблицы маршрутов периодически рассылаются широковещательно (broadcast).
Чтобы изменить поведение RIPv1 для проведения атаки, мы отправляем такой же запрос, подменив исходящий IP адресом объекта атаки. Адресаты выбираются по заранее подготовленному списку маршрутизаторов с поддержкой RIPv1, которые имеют подозрительно большое количество маршрутов в таблицах.В результате одиночного запроса генерируется большое количество пакетов с 504-байтовой нагрузкой, отправляемых на атакуемый адрес. На один запрос может отправляться несколько ответов по причине ограничения в 25 маршрутов на один RIP-пакет. Типичный запрос RIPv1 содержит 24 байта. Приведенный ответ содержит 504 байта.

Существуют ещё множество мало используемых амплификаций и разных методов атак по UDP, в том числе :
Quake3
QOTD
TS3
SNMP
NetBios
MYSQL. Думаю на сегодня хватит. С вами был
Ожидайте новости о Ботах, методах, защитах, обходах и т.д.
 
  • Теги
    ddos ddos attack заказать ddos услуги ddos
  • Сверху Снизу