
Кроссплатформенный генератор сетевых пакетов с полной подделкой уровней, рандомизацией адресов на основе шаблонов и обходом обнаружения флуда для сценариев нагрузочного тестирования и тестирования на проникновение.
Hyenae NG (Next Generation) — это переписанная версия оригинального инструмента Hyenae, впервые опубликованного в 2010 году.
Помимо перехода с C на C++ и использования современных концепций проектирования, Hyenae NG (как и оригинальный Hyenae) создавался с максимальной переносимостью. Поскольку оригинальный Hyenae имел очень сложный синтаксис командной строки, Hyenae NG поставляется с быстрым и интуитивно понятным меню командной строки, которое позволит вам эффективно настраивать даже сложные сценарии стресс-тестирования или атак за считанные секунды.

Copyright (C) 2020 Robin Richter
Оригинальный проект Hyenae начинался как исследование реализаций сетевого стека, но затем быстро приобрёл более сложные функции, такие как удалённый демон и помощник по атакам. Несмотря на то, что он был широко принят и до сих пор является очень часто используемым инструментом в современных рабочих процессах пентеста, он имеет сложный синтаксис командной строки и требует определённого обучения и исследования для правильного использования.
С Hyenae NG я хотел бы предоставить сложность и гибкость Hyenae в чистом и простом в использовании инструменте командной строки, который можно сразу использовать без дальнейшего изучения аргументов командной строки для конкретных сценариев.
Если вам нравится этот проект и вы хотели бы внести в него вклад (любым способом), не стесняйтесь делать это через мою страницу на GitHub или связавшись со мной напрямую. Идеи по улучшению и сообщения об ошибках приветствуются.
После запуска Hyenae NG он переходит в состояние главного меню. Отсюда вы можете настроить желаемую конфигурацию вывода, генератора и диспетчера.
Настройка вывода
Настройка вывода позволяет выбрать один из нескольких различных вариантов вывода. Вы можете либо проигнорировать вывод Hyenae NG, выбрав «No Output», либо отправить его в файл или сетевой адаптер. После того как вы выбрали вывод, вы можете войти в его поднастройку, снова выбрав его — введя номер пункта меню ещё раз или просто нажав Enter. Выводы, имеющие поднастройку, помечаются знаком (…) после их выбора.
Настройка генератора
Настройка генератора позволяет выбрать один из нескольких различных генераторов. Большинство генераторов предоставляют опцию полезной нагрузки, для которой вы можете выбрать другой генератор и так далее. Поскольку генераторы сетевых кадров вложены в транспортные уровни, доступные генераторы полезной нагрузки будут различаться в зависимости от ранее выбранного генератора кадров. Вот пример типичной вложенности полезной нагрузки для ethernet-пакета:
Ethernet +-> ARP
|
+-> IPv4 +-> ICMPv4 -> ICMP Echo Payload
| +-> TCP
| +-> UDP
| +-> ...
|
+-> IPv6 +-> ICMPv4 -> ICMP Echo Payload
+-> ICMPv6 -> ICMP Echo Payload
+-> TCP
+-> UPD
+-> ...
Настройка диспетчера
Настройка диспетчера позволяет настроить фактический диспетчер данных. Вы можете задать ограничения остановки или настроить фиксированную или случайную задержку отправки, чтобы обойти механизмы обнаружения флуда на вашей целевой системе.
ВАЖНО
Рекомендуется использовать фиксированную задержку отправки не менее 100 мс на системах с низкими характеристиками, таких как GPD Pocket 2, чтобы предотвратить проблемы с обнаружением нажатий клавиш.
Запуск диспетчера
После того как вы задали генератор, вы можете выбрать этот вариант, чтобы запустить диспетчер и начать отправку пакетов. Если генератор ещё не задан, вместо этого будет показано сообщение об ошибке. Диспетчер будет работать до тех пор, пока не будет достигнут предел остановки (если задан) или пока пользователь не нажмёт любую клавишу. После остановки диспетчера вы можете вернуться в главное меню, введя 0, или запустить его снова, введя 1 или просто нажав Enter.
Многие параметры генератора пакетов, такие как поля адресов, портов и чисел, могут быть заданы с помощью шаблона генератора. Эти шаблоны используются для генерации нового значения для каждого нового пакета. Вот несколько примеров базовых шаблонов:
Случайное 5-значное число:
*****
Инкрементальное 3-значное число:
+++
Декрементальное 2-значное число:
--
Случайное число в диапазоне от 100 до 190:
1*0
Инкрементальное число от 1 до 991:
++1
Декрементальное число от 299 до 200:
2--
Случайный IPv4-адрес в диапазоне от .200 до .255:
При запуске Hyenae NG ищет файл конфигурации с именем «hyenae.conf» в своей папке запуска. Если файл не существует, он будет автоматически создан.
ВАЖНО
Если файл конфигурации не может быть проанализирован, Hyenae NG выдаст сообщение об ошибке с просьбой исправить или удалить файл конфигурации.
Раздел Frontend
terminal_colors
Если установлено значение «on» (по умолчанию), Hyenae будет использовать ANSI-цвета терминала для улучшения своего пользовательского интерфейса. Если по какой-то причине ваш терминал не поддерживает ANSI-цвета, вам следует установить это значение в «off».
line_chars
Если установлено значение «on» (по умолчанию), Hyenae будет использовать специальные символы строк для разделителей меню (в ASCII в Windows и в Unicode в *nix-системах). Если вы сталкиваетесь со странными выходными данными разделителей, вам следует установить это значение в «off».
129.168.0.2**Инкрементальный MAC-адрес в диапазоне от :00 до :FF:
AA:BB:CC:DD:EE:++
Декрементальный IPv6-адрес в диапазоне от :FFFF до :FF00:
1000:2000:3000:4000:5000:6000:7000:FF--