Kali linux stress test

Стресс-тест сети (DoS веб-сайта) со SlowHTTPTest в Kali Linux: slowloris, slow body и slow read атаки в одном инструменте

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

Связанные статьи по защите веб-сервера:

Связанные статьи по DoS:

  • Стресс-тест сети с Low Orbit Ion Cannon (LOIC)
  • Стресс-тест сети (DoS веб-сайта) с SlowHTTPTest в Kali Linux: slowloris, slow body и slow read атаки в одном инструменте (вы её читаете)

SlowHTTPTest — это имеющий множество настроек инструмент, симулирующие некоторые атаки отказа в обслуживании (DoS) уровня приложения. Он работает на большинстве платформ Linux, OSX и Cygwin (Unix-подобное окружение и интерфейс командной строки для Microsoft Windows).

Эта программа реализует наиболее общие замедляющие работу сети DoS атаки уровня приложений, такие как Slowloris, атака slow body, атака Slow Read (на основе эксплойта постоянного таймера TCP), она занимает весь доступный пул подключений, а также атака Apache Range Header, которая становится причиной очень значительного использования памяти и центрального процессора на сервере.

Slowloris и Slow HTTP POST DoS атаки полагаются на факт, что HTTP, намеренно, требует от запросов быть полученными сервером полностью до того, как они будут обработаны. Если запрос HTTP неполон или скорость его пересылки очень медленная, сервер сохраняет своио ресурсы занятыми, ожидая оставшихся данных. Если сервер поддерживает слишком много занятых ресурсов, то это влечёт отказ в обслуживании. Этот инструмент отправляет частичные запросы HTTP, пытаясь добиться отказа в обслуживании от целевого HTTP сервера.

Атака Slow Read нацелена на те же ресурсы, что и slowloris со slow body, но вместно продлевания запроса, она отправляет легитимные HTTP запросы, но ответы читает медленно.

Установка SlowHTTPTest

Установка для пользователей Kali Linux

Для пользователей Kali Linux установка через apt-get .. (жизнь хороша!)

Для других дистрибутивов Linux

Инструмент распространяется как портативный пакет, т. е. просто загрузите последний тарбол из секции загрузки, извлеките, настройте, скомпилируйте и установите.

Этот набор команд делает следующее: скачивает самую последнюю версию SlowHTTPTest, распаковывает её и переходим в каталог с программой:

Т.е. теперь только остаётся выполнить конфигурацию, компиляцию и установку.

Для тех, кто предпочитает скачать архив вручную, переходите сюда.

Здесь PREFIX должен быть заменён на абсолютный путь, где инструмент slowhttptest должен быть установлен.

У вас должна быть установлена libssl-dev для успешной компиляции этого инструмента. Большинство систем должны иметь его.

Mac OS X

Linux

Попробуйте ваш любимый пакетный менеджер, некоторые из них знают о slowhttptest (как Kali Linux).

Использование SlowHTTPTest

slowhttptest это потрясающий инструмент, который позволяет делать многие вещи. Далее только несколько примеров использования.

Источник

Статья Стресс-тест сети: DoS с использованием hping3 и спуфингом IP в Kali Linux

В компьютерной терминологии атака отказ-в-обслуживании (DoS) или атака распределённый отказ-в-обслуживании (DDoS) — это попытка сделать ресурсы машины или сети недоступными для пользователей. Хотя средства, мотивы и цели DoS различаются, главная её суть остаётся прежней — на время или на неопределённый срок прервать или приостановить услугу хоста, соединённого с Интернетом. В этой статье я покажу, как выполнить атаку DoS атаку с использованием hping3 и спуфингом IP в Kali Linux.

Читайте также:  Suse linux yast backup and restore

Как известно, DDoS — это атака, осуществляемая двумя или более лицами, или ботами, а DoS атака делается одним лицом или системой. На 2014 год, частота распознанных DDoS атак достигла в среднем 28 за каждый час.

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

Эта техника теперь широко применяется в определённых играх, используемая владельцами серверов или недовольными конкурентами в таких играх как популярные сервера Minecraft. Возрастает применение DoS как формы «Уличных Интернет Протестов». Этот термин обычно применяется к компьютерным сетям, но не ограничивается этим; например, он также относится к управлению ресурсами CPU.

Понятно, что тема эта актуальная. Поэтому важно подготовится к атакам подобного рода. Провести стресс-тесты своих сетей и серверов. Если они проседают под натиском DoS, то обратитесь к инструкциям по настройке mod_evasive и mod-qos. А данная статья и другие по стресс-тесту сети помогут вам протестировать работоспособность этих модулей на ваших серверах.

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

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

hping3 хорошо отрабатывает если у вас ещё есть другие запущенные DoS инструменты вроде GoldenEye (использование нескольких инструментов, которые атакую один и тот же сайт/сервер/услугу, увеличивает шансы на успех). Знаете ли вы, что есть агентства и корпорации, которые практически в реальном времени отслеживают DDoS атаки по всему миру и отображают карту DoS в реальном времени:

  • http://www.digitalattackmap.com/

Сегодня мы будем использовать для нашей атаки отказа-в-обслуживании — DoS — hping3

В этой инструкции будет продемонстрировано, как досить используя hping3 со случайными IP источника на Kali Linux.

Перед тем, как мы начнём использовать hping3, давайте пройдёмся по основам.

hping3 это бесплатный генератор пакетов и анализатор для TCP/IP протокола. Hping, де факто, один из обязательных инструментов для аудита безопасности и тестирования файерволов и сетей, он использовался для выполнения эксплойта техники сканирования Idle Scan, которая сейчас реализована в сканере портов Nmap. Новая версия hping — hping3 — написана на скриптах с использованием языка Tcl. В ней реализует сядвижок для удобного описания строками TCP/IP пакетов, следовательно, программист может за очень короткое время написать скрипт, относящийся к низкоуровневой манипуляции пакетами TCP/IP и анализировать их.

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

Читайте также:  Данная версия драйвера не совместима с windows

hping3 следует использовать для…

  • Traceroute/ping/probe (трассировки/пинга/зондирования) хостов за файерволом, которые блокируют попытки использовать стандартные утилиты.
  • Выполнения сканирования простоя (в настоящее время реализуется в nmap с лёгким пользовательским интерфейсом).
  • Тестирование правил файервола.
  • Тестирование IDS (систем обнаружения вторжения).
  • Эксплуатации известных зависимостей в стеках TCP/IP.
  • Сетевых исследованиях
  • Изучении TCP/IP (hping была использована в сетевых курсах AFAIK).
  • Написании реальных приложений, связанных с TCP/IP тестированием и безопасностью.
  • При автоматизированных тестах по фильтрации трафика.
  • Создания рабочей модели эксплойтов.
  • Исследований в свере сетей и безопасности, когда нужно эмулировать комплексное TCP/IP поведение.
  • Прототипах систем обнаружения вторжения (IDS)
  • Простых в использовании утилитах с интерфейсом Tk.

hping3 уже установлен в Kali Linux как и многие другие инструменты. Он крайне полезен и уже скоро я продемонстрирую его работу.

Давайте разберёмся в синтаксисе используемой команды:

  • hping3 = Имя бинарника приложения.
  • -c 100000 = Количество пакетов для отправки.
  • -d 120 = Размер каждого пакета, который будет отправлен на целевую машину.
  • -S = Я отправляю только пакеты SYN.
  • -w 64 = Размер окна TCP.
  • -p 21 = Порт назначения (используется 21 порт FTP). Вы можете использовать здесь любой порт.
  • –flood = Отправка пакетов так быстро, как возможно, не заботясь об отображении входящих пакетов. Решим флуда.
  • –rand-source = Использование рандомных IP адресов источника. Вы также можете использовать -a или –spoof чтобы спрятать имя хоста. Подробности по man hping3

192.168.1.37 = Целевой IP адрес или IP адрес целевой машины. Также вы можете использовать здесь сайт. В моём случае, тестирование происходит в лабораторных условиях, в пределах локальной сети.

Так как узнать, работает ли это? В режиме флуда hping3 не проверяет полученные ответы (в любом случае мы не могли бы это сделать, поскольку мы использовали флаг –rand-souce, означающий, что IP адрес источника больше не ваш).

Посмотрим на ситуацию со стороны сервера. Я буду использовать команду top. Так выглядит ситуацию на сервере в режиме простоя:

Использование процессора в районе нуля, много свободной оперативной памяти.

Так сервер себя чувствует после начала атаки:

Эта атака не оказала влияния на оперативную памяти, но полностью поглотила ресурсы процессора.

Чтобы понять, что это за si, обратимся к Википедии:

Т.е. si — (Software Interrupts) время, затраченное на работу обработку software-прерываний (network). Вполне логично.

Источник

Статья Стресс-тест сети (DoS веб-сайта) со SlowHTTPTest в Kali Linux: slowloris, slow body и slow read атаки в одном инструменте

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

  • Как усилить веб-сервер Apache с помощью mod_security и mod_evasive на CentOS

Связанные статьи по DoS:

  • Стресс-тест сети с Low Orbit Ion Cannon (LOIC)
  • Стресс-тест сети (DoS веб-сайта) с SlowHTTPTest в Kali Linux: slowloris, slow body и slow read атаки в одном инструменте (вы её читаете)

SlowHTTPTest — это имеющий множество настроек инструмент, симулирующие некоторые атаки отказа в обслуживании (DoS) уровня приложения. Он работает на большинстве платформ Linux, OSX и Cygwin (Unix-подобное окружение и интерфейс командной строки для Microsoft Windows).
Эта программа реализует наиболее общие замедляющие работу сети DoS атаки уровня приложений, такие как Slowloris, атака slow body, атака Slow Read (на основе эксплойта постоянного таймера TCP), она занимает весь доступный пул подключений, а также атака Apache Range Header, которая становится причиной очень значительного использования памяти и центрального процессора на сервере.
Slowloris и Slow HTTP POST DoS атаки полагаются на факт, что HTTP, намеренно, требует от запросов быть полученными сервером полностью до того, как они будут обработаны. Если запрос HTTP неполон или скорость его пересылки очень медленная, сервер сохраняет своио ресурсы занятыми, ожидая оставшихся данных. Если сервер поддерживает слишком много занятых ресурсов, то это влечёт отказ в обслуживании. Этот инструмент отправляет частичные запросы HTTP, пытаясь добиться отказа в обслуживании от целевого HTTP сервера.
Атака Slow Read нацелена на те же ресурсы, что и slowloris со slow body, но вместно продлевания запроса, она отправляет легитимные HTTP запросы, но ответы читает медленно.

Читайте также:  Выключение компьютера через терминал линукс

Установка SlowHTTPTest
Установка для пользователей Kali Linux
Для пользователей Kali Linux установка через apt-get .. (жизнь хороша!)

Для других дистрибутивов Linux
Инструмент распространяется как портативный пакет, т. е. просто загрузите последний тарбол из секции загрузки, извлеките, настройте, скомпилируйте и установите.
Этот набор команд делает следующее: скачивает самую последнюю версию SlowHTTPTest, распаковывает её и переходим в каталог с программой:

Здесь PREFIX должен быть заменён на абсолютный путь, где инструмент slowhttptest должен быть установлен.
У вас должна быть установлена libssl-dev для успешной компиляции этого инструмента. Большинство систем должны иметь его.

Mac OS X
Используем Homebrew:

Linux
Попробуйте ваш любимый пакетный менеджер, некоторые из них знают о slowhttptest (как Kali Linux).

Использование SlowHTTPTest
slowhttptest это потрясающий инструмент, который позволяет делать многие вещи. Далее только несколько примеров использования.
Пример использования в режиме slow body a.k.a R-U-Dead-Yet, результаты только выводятся на экран

Вывод по SlowHTTPTest
В зависимости от выбранного уровня детальности, вывод может быть как простым в виде генерируемых каждый 5 секунд сообщений, показывающих статус соединений (это при уровне 1), так и полным дампом трафика (при уровне детальности 4).
-g опция означает создание файла CSV, а также интерактивного HTML, основанного на инструментах Google Chart.
Приведённые выше скриншоты показывают состояние соединений и доступность сервера на различных этапах времени, а также дают общую картину поведения конкретного сервера под конкретной нагрузкой во время заданного временного интервала.
Файл CSV может быть полезен в качестве источника для вашего любимого инструмента по работе с данными, среди них могут быть MS Excel, iWork Numbers или Google Docs.
Последнее сообщение, которые выводит программа при закрытии, этот статус завершения, они могут быть следующими:

  • “Hit test time limit” программа достигла лимита времени, заданного аргументом -l
  • “No open connections left” пир закрыл все соединения
  • “Cannot establish connection” не было установлено соединений за время N секунд теста, где N или величина аргумента -i, или 10 (значение по умолчанию). Это может случиться если нет маршрута к удалённому хосту или пир лёг.
  • “Connection refused” удалённый сервер не принимает соединения (может быть только от тебя? Попробуйте использовать прокси) на определённом порту
  • “Cancelled by user” вы нажали Ctrl-C или отправили SIGINT каким-либо другим образом
  • “Unexpected error” не должно никогда случаться.

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

Со стороны атакующего
Итак, я собрал статистику для атаки на http://192.168.1.37 с 1000 соединениями.

Со стороны сервера-жертвы

Показатели не получается снять во время проведения атаки, т. к. по SSH сервер также перестаёт отвечать. Общее число http соединений подпрыгнуло до 111 в первые 10 секунд.
Этого более чем достаточно чтобы положить сервер (это могут быть большинство маленьких серверов или VPS).

Источник

Оцените статью