Атака на сетевое оборудование Cisco арсеналом из Kali Linux. Часть 2
Life-Hack [Жизнь-Взлом]/ХакингСторонние программы, установленные не из репозитория, я собираю в каталоге ~/opt. Если у вас нет каталога для сторонних программ, то создайте его и перейдите туда:
mkdir opt cd opt
Следующая большая команда создаст каталог, загрузит туда последнюю версию GoldenEye, распакует архив и сразу запустит GoldenEye (покажет справку по программе):
mkdir GoldenEye && cd GoldenEye && wget https://github.com/jseidl/GoldenEye/archive/master.zip && unzip master.zip && cd GoldenEye-master/ && ./goldeneye.py
Если вам хочется всё сделать самому — постепенно, то продолжаем. Для начала создаём каталог GoldenEye, переходим туда и скачиваем архив с программой:
root@WebWare-Kali:~/opt# mkdir GoldenEye root@WebWare-Kali:~/opt# cd GoldenEye root@WebWare-Kali:~/opt/GoldenEye# wget https://github.com/jseidl/GoldenEye/archive/master.zip root@WebWare-Kali:~/opt# Social_engineering_club TG

После скачивания распаковываем файл архива master.zip.
unzip master.zip

Теперь у нас появился каталог GoldenEye-master, переходим туда и проверяем его содержимое:
ls cd GoldenEye-master/ ls

Запуск GoldenEye – досим веб-сайт
Запуск очень прост, делается это так:
./goldeneye.py
Программа показывает нам свою справку:

Необходимо осведомлять пользователей о расписании тестирования и возможных перебоях в работе. Поскольку часто результатом симуляции атаки является остановка работы.
Ну и все другие предупреждения: вы не должны тестировать (симулировать атаку) других без их разрешения. Поскольку в случае причинения вреда, вы можете быть привлечены к ответственности в соответствии с законодательством.
Данная информация размещена в образовательных целях. Для тестирования своих серверов, для анализа качества их настройки и разработки мер противодействия атакам.
Запуск слегка различается от используемой вами ОС:
root@WebWare-Kali:~/opt/GoldenEye/GoldenEye-master# ./goldeneye.py http://www.goldeneyetestsite.com/Social_engineering_club TG (или) sudo ./goldeneye.py http://www.goldeneyetestsite.com/ (или) python goldeneye.py http://www.goldeneyetestsite.com/
В зависимости от того, где вы сохранили файлы, подредактируйте ваш путь и команду.
Блокирование/защита от атаки GoldenEye.
Следующие предложения хорошо сработают, когда вы используете Apache:
- Понижение соединений на один IP (обычно их 300 на IP для Apache)
- Редактирование порога соединений на IP
- Отключить настройки KeepAlive и нижний Connection Timeout (по умолчанию это 300)
- Если вы хоститесь на общем сервере, обратитесь к сисадминам. Если они не могут защитить от этой простой атаки, то просто переезжайте к хостинг компании получше.
- Используйте Web application Firewall (WAF).
- Использование белых листов для входящих запросов — и эта атака не окажет эффекта на ваш сервер.
- NGINX и Node.js вроде бы лучше справляются с атаками подобного рода.
Стресс-тест сети: DoS с использованием hping3.
Что такое hping3?
hping3 это бесплатный генератор пакетов и анализатор для TCP/IP протокола. Hping, де факто, один из обязательных инструментов для аудита безопасности и тестирования файерволов и сетей, он использовался для выполнения эксплойта техники сканирования Idle Scan, которая сейчас реализована в сканере портов Nmap. Новая версия hping — hping3 — написана на скриптах с использованием языка Tcl. В ней реализует сядвижок для удобного описания строками TCP/IP пакетов, следовательно, программист может за очень короткое время написать скрипт, относящийся к низкоуровневой манипуляции пакетами TCP/IP и анализировать их.
Как и большинство инструментов, использующихся в компьютерной безопасности, hping3 полезен для экспертов по безопасности, но существует множество приложений, связанных с тестированием сети и системным администрированием.
hping3 следует использовать для…
- Traceroute/ping/probe (трассировки/пинга/зондирования) хостов за файерволом, которые блокируют попытки использовать стандартные утилиты.
- Выполнения сканирования простоя (в настоящее время реализуется в nmap с лёгким пользовательским интерфейсом).
- Тестирование правил файервола.
- Тестирование IDS (систем обнаружения вторжения).
- Эксплуатации известных зависимостей в стеках TCP/IP.
- Сетевых исследованиях
- Изучении TCP/IP (hping была использована в сетевых курсах AFAIK).
- Написании реальных приложений, связанных с TCP/IP тестированием и безопасностью.
- При автоматизированных тестах по фильтрации трафика.
- Создания рабочей модели эксплойтов.
- Исследований в свере сетей и безопасности, когда нужно эмулировать комплексное TCP/IP поведение.
- Прототипах систем обнаружения вторжения (IDS)
- Простых в использовании утилитах с интерфейсом Tk.
hping3 уже установлен в Kali Linux как и многие другие инструменты. Он крайне полезен и уже скоро я продемонстрирую его работу.
DoS с использованием hping3 и случайным IP источника.
Ну хватит уже ходить вокруг да около, переходим к атаке. Запускается всё одной простой командой:
root@WebWare-Kali:~# hping3 -c 10000 -d 120 -S -w 64 -p 21 --flood --rand-source 192.168.1.37 HPING 192.168.1.37 (eth0 192.168.1.37): S set, 40 headers + 120 data bytes hping in flood mode, no replies will be shown ^C --- 192.168.1.37 hping statistic --- 3258138 packets transmitted, 0 packets received, 100% packet loss round-trip min/avg/max = 0.0/0.0/0.0 ms root@WebWare-Kali:~#
Давайте разберёмся в синтаксисе используемой команды:
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, обратимся к Википедии:
us — (User CPU time) время, затраченное на работу программ пользователей
sy — (System CPU time) время, затраченное на работу процессов ядра
ni — (Nice CPU time) время, затраченное на работу программ с измененным приоритетом
id — простой процессора
wa — (iowait) время, затраченное на завершение ввода-вывода
hi — (Hardware IRQ) время, затраченное на обработку hardware-прерываний
si — (Software Interrupts) время, затраченное на работу обработку software-прерываний (network)
st — (Steal Time) время, «украденное» гипервизором у этой виртуальной машины для других задач (например работа другой виртуальной машины)
Т.е. si — (Software Interrupts) время, затраченное на работу обработку software-прерываний (network). Вполне логично.