Атака на сетевое оборудование Cisco арсеналом из Kali Linux

Атака на сетевое оборудование Cisco арсеналом из Kali Linux

https://t.me/w2hack

В данной статье мы рассмотрим актуальные атаки на сетевое оборудование и инструменты, доступные в популярном дистрибутиве Kali Linux для их проведения.

I. Атакуем CISCO маршрутизатор

В состав Kali Linux входит несколько инструментов, которые можно использовать для аудита оборудования CISCO. Список можно посмотреть в разделе Vulnerability Analysis — Cisco Tools:

  1. Юзаем Cisco Audit Tool или CAT

Используется для брутфорса пароля при выключенном режиме aaa-mode, брутфорса SNMP community-строк и проверки на уязвимость IOS History bug (https://tools.cisco.com/security/center/content/CiscoSecurit...)

Пример использования:

CAT -h 192.168.1.209 -w /root/cisco/wordlist/snmpcommunities -a /root/cisco/wordlist/password_list -i

2. Крутой экспоутер Cisco Global Exploiter или CGE

Используется для экслпутации известных уязвимостей. Нам доступно 14 атак:

Пример использования:

cge.pl 192.168.1.201 3

3. Еще одна тулза для автоматического поиска cisco-ocs

Инструмент для автоматизации поиска устройств со стандартными значениями пароля для telnet и режима enable, который может искать устройства в диапазоне адресов. Может использоваться при сканировании больших сетей.

Пример использования:

cisco-ocs 192.168.1.207 192.168.1.209

4. Торч cisco-torch

Многофункциональный сканер уязвимостей для оборудования Cisco. Может сканировать несколько IP адресов за раз, подгружая из текстового файла. Запускать cisco-torch в Kali Linux следует, находясь в рабочей директории /usr/share/cisco-torch.

Пример использования:

Поиск доступных интерфейсов и протоколов и определение типа оборудования.

cisco-torch -A 192.168.1.201

Может использоваться для брутфорса паролей и SNMP community-строк.cisco-torch -s -b 192.168.1.209

Для использования своего словаря, его нужно поместить в /usr/share/cisco-torch вместо файла password.txt

II. Атакуем L2 протоколы

Yersinia — многофункциональный инструмент для атак на протоколы L2 (Data Link) уровня OSI.

Умеет проводить атаки на DHCP, STP, CDP, DTP, HSRP и другие.

Работать с Yersinia можно в нескольких режимах:

Запуск в режиме сервера и управление при помощи команд, похожих на cisco cli.

yersinia -D

telnet 127.0.0.1 12000

Логин и пароль root/root

Пароль для перехода в режим enable – tomac

1. Запуск в интерактивном режиме

yersinia -I

Опции управления доступны по нажатии на клавишу h:

Графический интерфейс GTK

Графический интерфейс может работать нестабильно. В режиме сервера не поддерживает некоторые виды атак, вроде DHCP Rogue server. Так что, основным режимом запуска можно считать интерактивный режим.

Атакуем DHCP сервер

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

На стороне атакующего можно выполнить скрипт nmap для обнаружения DHCP сервера в локальной сети.

nmap -n --script=broadcast-dhcp-discover

Теперь запускаем Yersinia в интерактивном режиме и переходим в режим DHCP выбрав его нажатием клавиши g.

Теперь в этом режиме будут видны все DHCP пакеты, полученные Yersinia.

Проверим список выданных адресов DHCP сервера до атаки:

Yersinia показывает DHCP пакеты, выловленные из сети:

Если выбрать пакет и нажать сочетание клавиш Shift+L то можно затем при помощи атаки RAW пересылать этот пакет в сеть, или модифицировать его при помощи нажатия клавиши e – переход в режим редактирования пакета.

При нажатии на клавишу x получаем список доступных атак:

Выбираем 1

Видим, что начинает отправлять огромное количество DHCP Discover запросов:

Через некоторое время можно остановить атаку нажатием на клавиши L и затем Enter:

Nmap больше не показывает доступных DHCP серверов в сети. Коропоративный DHCP сервер выведен из строя.

Проверим таблицу выданных IP-адресов на роутере:

Далее вы можете запустить атаку Rogue DHCP в Yersinia, либо при помощи модуля Metasploit или любым другим способом, чтобы провести MitM атаку.

Атаку на истощение пула IP адресов DHCP сервера можно так же провести при помощи инструмента DHCPig. При помощи Yersinia можно проводить атаки и на другие популярные протоколы, такие как STP (Spanning Tree Protocol) и HSRP (Hot Standby Router Protocol), которые так же позволят вам прослушивать трафик в сети.

Защита от выше описанных атак

Для защиты от подобного рода атак производителями используются различные, обычно проприетарные, технологии. На коммутаторах Cisco следует активировать DHCP Snooping и PortSecutiy во избежание атак на протокол DHCP и CAM Overflow. Для защиты от атак на HSRP и прочие протоколы используются другие технологии. Всегда нужно помнить, что дорогостоящее сетевое оборудование после правильной настройки может существенно повысить безопасность сетевой инфраструктуры, в то же время недонастроенное или настроенное неправильно может само стать инструментом в руках злоумышленника и угрозой безопасности. Выявление уязвимостей сетевого оборудования при проведении тестирования на проникновение и применение рекомендаций по результатам аудита помогает снизить риски взлома информационной системы злоумышленниками.

III. Стресс-тест сети: DoS веб-сайта в Kali Linux с GoldenEye

DoS и DDoS атаки уровня приложений

DoS и DDoS атаки уровня приложений — это атаки, которые нацелены на Windows, Apache, OpenBSD или другое программное обеспечение для выполнения атаки и краха сервера.

DoS и DDoS атаки уровня протокола

DoS и DDoS атаки уровня протокола — это атаки на уровне протокола. Эта категория включает Synflood, Ping of Death и другие.

DoS и DDoS атаки насыщения полосы пропускания

Этот тип атак включает ICMP-флуд, UDP-флуд и другие типы флуда, осуществляемые через поддельные пакеты.

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

Загрузка GoldenEye

Сторонние программы, установленные не из репозитория, я собираю в каталоге ~/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

01

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

unzip master.zip

02

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

ls

cd GoldenEye-master/

ls

03

Запуск GoldenEye – досим веб-сайт

Запуск очень прост, делается это так:

./goldeneye.py

Программа показывает нам свою справку:

04

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

Ну и все другие предупреждения: вы не должны тестировать (симулировать атаку) других без их разрешения. Поскольку в случае причинения вреда, вы можете быть привлечены к ответственности в соответствии с законодательством.

Данная информация размещена в образовательных целях. Для тестирования своих серверов, для анализа качества их настройки и разработки мер противодействия атакам.

Запуск слегка различается от используемой вами ОС:

root@WebWare-Kali:~/opt/GoldenEye/GoldenEye-master# ./goldeneye.py http://www.goldeneyetestsite.com/

(или)

sudo ./goldeneye.py http://www.goldeneyetestsite.com/

(или)

python goldeneye.py http://www.goldeneyetestsite.com/

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

Блокирование/защита от атаки GoldenEye

Следующие предложения хорошо сработают, когда вы используете Apache:

  1. Понижение соединений на один IP (обычно их 300 на IP для Apache)
  2. Редактирование порога соединений на IP
  3. Отключить настройки KeepAlive и нижний Connection Timeout (по умолчанию это 300)
  4. Если вы хоститесь на общем сервере, обратитесь к сисадминам. Если они не могут защитить от этой простой атаки, то просто переезжайте к хостинг компании получше.
  5. Используйте Web application Firewall (WAF).
  6. Использование белых листов для входящих запросов — и эта атака не окажет эффекта на ваш сервер.
  7. 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. Так выглядит ситуацию на сервере в режиме простоя:

01

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

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

02

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

Чтобы понять, что это за 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) время, «украденное» гипервизором у этой виртуальной машины для других задач (например работа другой виртуальной машины)