Электронная библиотека » Наталья Гулина » » онлайн чтение - страница 1


  • Текст добавлен: 15 декабря 2023, 05:22


Автор книги: Наталья Гулина


Жанр: Компьютеры: прочее, Компьютеры


Возрастные ограничения: +12

сообщить о неприемлемом содержимом

Текущая страница: 1 (всего у книги 3 страниц) [доступный отрывок для чтения: 1 страниц]

Шрифт:
- 100% +

Техника и технология атак злоумышленников в распределенных информационных системах
Часть 2. Атакуем и продолжаем рекогносцировку. SQL injection
Иван Андреевич Трещев
Наталья Андреевна Гулина

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

Майкл Демон Кальс


© Иван Андреевич Трещев, 2023

© Наталья Андреевна Гулина, 2023


ISBN 978-5-0062-0059-3 (т. 2)

ISBN 978-5-0055-1062-4

Создано в интеллектуальной издательской системе Ridero

Введение

Мы живем в эпоху резкого увеличения числа угроз безопасности и преступлений в сфере информационных технологий. Ежедневно появляются все новые записи в банке данных угроз безопасности ФСТЭК России и CVE. Уязвимости в программном обеспечении, аппаратном обеспечении, социальная инженерия – все это механизмы доступные злоумышленникам при атаках на информационные системы. Специалист по защите информации должен быть в тренде современных подходов и методологий проведения атак и понимать возможные вектора с использованием которых хакеры или другие наавторизованные субъекты могут попытаться получить доступ к информации ограниченного распространения. В данной книге сделана попытка обобщить опыт проведения атак и сделать обзор технологий и методов их реализации.

Удаленные сетевые атаки
Введение

Удалённая сетевая атака – информационное разрушающее воздействие на распределённую вычислительную систему (ВС), осуществляемое программно по каналам связи.

Задачи:

– Познакомится с атаками, представленными в списке;

– Реализовать каждую атаку, используя OS Kali Linux и необходимое сетевое оборудование;

Таблица 1 – Виды атак



1 MAC-Spoofing

1.1 Описание


Суть данной атаки заключается в подмене MAC-адреса на сетевой карте компьютера, что позволяет ему перехватывать пакеты, адресованные другому устройству, находящемуся в том же широковещательном домене.

1.2 Реализация


Посмотрим атаку на практике. Использовать будем следующую топологию, построенную в GNS3:


Рисунок 1.1 – Сетевая топология для проведения атаки MAC-Spoofing


Посмотрим на таблицу MAC-адресов на коммутаторе (рисунок 1.2).


Рисунок 1.2 – Таблица MAC-адресов на коммутаторе ESW1


Пусть наш компьютер пытается получить доступ на сервис knastu.ru посредством ICMP-запросов (рисунок 1.3).


Рисунок 1.3 – Пинг knastu.ru


В это время злоумышленник подменивает на своем сетевом интерфейсе MAC-адрес на тот, которые совпадает с компьютером жертвы (рисунок 1.4)


Рисунок 1.4 – Смена MAC-адреса атакующего на MAC-адрес жертвы


Вновь взглянем на CAM-таблицу коммутатора (рисунок 1.5)


Рисунок 1.5 – Теперь MAC-адрес жертвы присвоен интерфейсу атакующего


В таблице MAC-адресов коммутатора запись с атакованным MAC-адресом соотнесена с интерфейсом, на котором в последний раз был идентифицирован кадр с данным source MAC-адресом. Как результат, до поступления кадра с атакуемого устройства, все данные коммутатор, в соответствии со своей таблицей MAC-адресов, будет пересылать на атакующее устройство.

Теперь, если злоумышленник начнет генерировать трафик, то некоторые пакеты, адресованные жертве, будут приходить на сетевой интерфейс атакующего. Посмотрим, как злоумышленник может перехватывать трафик, адресованный жертве (рисунок 1.6).


Рисунок 1.6 – Перехват трафика


Как можно заметь из рисунка 1.6 злоумышленник имеет адрес 192.168.1.101 на сетевом интерфейсе, однако на него все равно приходят пакеты, адресованные 192.168.1.100. Причем, если пакет попал на сетевой интерфейс злоумышленника, то жертва получает сообщение Request timed out.

Теперь вернем MAC-адрес на прежний (рисунок 1.7).


Рисунок 1.7 – Возвращаем обратно MAC-адрес


Как можно увидеть данная атака выполняется очень легко, посредством всего двух утилит.

1.3 Защита

Защитится от данной атаки можно так же просто, как и реализовать ее. Для этого на интерфейсе коммутатора достаточно включить port-security. К сожалению, из-за ограничений GNS3 (невозможность работы обычного коммутатора, а замена его на EtherSwitch) команда port-security не может быть продемонстрирована на практике (листинг 1.1).


Листинг 1.1 – Настройка port-security на интерфейсе коммутатора



2 MAC-flooding

2.1 Описание


У таблицы MAC-адресов есть следующие особенности:

– Максимальный размер таблицы ограничен в зависимости от коммутатора и колеблется от нескольких сотен до 100 тысяч записей.

– Для отслеживания старых записей используется специальный таймер. Каждый раз, когда через коммутатор передается пакет с определенным MAC-адресом источника, таймер для соответствующей записи в таблице обнуляется. Если некоторый узел долгое время не передает данные, запись с его MAC-адресом удаляется из таблицы.

Идея атаки MAC-flooding заключается в отправке большого количества ARP-ответов на коммутатор, что приводит к перегрузке CAM-таблицы коммутатора.

2.2 Реализация

Для реализации будем использовать топологию, как и в предыдущем задании. В качестве инструмента отравления CAM-таблицы коммутатора воспользуемся утилитой Kali Linux под названием macof.

Macof заполняет CAM-таблицу менее чем за минуту или около того, поскольку он посылает огромное количество записей MAC примерно 155 000 в минуту, если быть точным.

Использование чрезвычайно просто. Все, что нам нужно сделать, это выполнить команду «macof» из нашего терминала. Этот инструмент уже установлен во всех версиях Kali Linux.

Взглянем на таблицу MAC-адресов коммутатора до атаки (рисунок 2.1).


Рисунок 2.1 – Таблица MAC-адресов до атаки


Теперь воспользуемся утилитой macof и отравим ее (рисунки 2.2 – 2.4).


Рисунок 2.2 – Использование утилиты macof


Рисунок 2.3 – пакеты, посылаемые злоумышленником


Рисунок 2.4 – Отравленная CAM-таблица на коммутаторе


Как можно увидеть из рисунков выше отравление таблицы происходит путем генерирования большого количества запросов с разными IP– и MAC-адресами, причем количество этих запросов огромно и все MAC-адреса привязываются к интерфейсу, к которому подключен злоумышленник (в нашем случае Fa1/2).

Как только CAM-таблица была заполнена, мы можем открыть Wireshark и начать захват трафика. По умолчанию Wireshark настроен на захват трафика в неразборчивом режиме, однако он нам не нужен, так как коммутатор перешел в режим концентратора, а значит трафик уже неразборчивый.

Следует заметить сходство с атакой ARP-poisoning, ведь при атаке ARP-poisoning, протокол ARP всегда будет доверять тому устройству, от которого исходил ответ. Из-за этого недостатка в дизайне коммутатор никоим образом не может проверить, что ARP-ответ был отправлен с доверенного устройства.

Из-за этого изъяна злоумышленник имеет возможность отправить поддельный ARP-ответ на любой компьютер в сети, чтобы заставить его поверить, что определенный IP-адрес связан с определенным MAC-адресом, тем самым отравляя ARP-кэш коммутатора, который сопоставляет IP-адреса с MAC-адресами.

Таким образом, эти две атаки, то есть ARP-poisoning и MAC-flooding, связаны с протоколом ARP.

Чтобы узнать больше о macof, наберем «macof -h», что покажет все возможные варианты (рисунок 2.5).


Рисунок 2.5 – Команда macof – h


Отсюда видно, что, например, с параметром -n можно задать количество генерируемых запросов, а параметром -d можно задать IP-адрес назначения (рисунок 2.6).


Рисунок 2.6 – Выполнение команды macof с параметрами


Теперь пусть PC-1 попытается пройти аутентификацию на некотором сайте, а злоумышленник – перехватить данные, необходимые для авторизации на ресурсе (рисунки 2.7 – 2.8)


Рисунок 2.7 – Пользователь аутентифицируется на ресурсе


Если аутентификация проходит по открытому протоколу, то используя сниффер можно перехватить учетные данные пользователя.

Как можно увидеть данная атака реализуется даже проще, чем MAC-spoofing, всего 1-й командой. Теперь рассмотрим главные методы защиты от нее.

2.3 Защита

Одними из главных контрмер против атаки типа MAC-flooding являются:

– Port Security – запрещает нескольким MAC-адресам присоединятся к одному порту (установка статического MAC-адреса).

– Реализация протокола 802.1X – позволяет применять правила фильтрации пакетов, выпускаемые централизованным сервером AAA, на основе динамического обучения клиентов.

– Фильтрация MAC — Ограничивает количество MAC-адресов на коммутаторе.


3 ARP-spoofing

3.1 Описание


Протокол ARP

Протокол ARP предназначен для преобразования IP-адресов в MAC-адреса. Познакомиться с протоколом можно в соответствующем RFC.


3.2 Реализация атаки


Для реализации данной атаки воспользуемся сетевой топологией из предыдущего задания и утилитой Ettercap, которая доступна в репозиториях Kali Linux.

Целью данной атаки будет попытка атакующего вклиниться в канал передачи данных от PC-1 до R1. Таким образом атакующий будет иметь доступ ко всему трафику, который получает и отправляет жертва.

Взглянем на ARP-таблицу на PC-1 (рисунок 3.2).


Рисунок 3.2 – ARP-таблица на компьютере жертвы


Как можно заметить IP-адрес шлюза закреплен за MAC-адресом роутера. Посмотрим на аналогичную таблицу на маршрутизаторе (рисунок 3.3).


Рисунок 3.3 – ARP-таблица коммутатора


Все данные совпадают с тем, что мы увидели на PC-1. Теперь воспользуемся программой Ettercap и проведем ARP-spoofing атаку. Можно использовать консольный интерфейс, но мы воспользуемся графической оболочкой (рисунки 3.4 – 3.5).


Листинг 3.1 – Открытие графической оболочки ettercap



Рисунок 3.4 – Начальная настройка Ettercap


Рисунок 3.5 – Главное окно Ettercap


Запустим сканирование сети, чтобы определить хосты внутри сети (рисунки 3.6 – 3.7).


Рисунок 3.6 – Трафик после нажатия кнопки сканирования


Рисунок 3.7 – Список обнаруженных хостов в сети


Как можно увидеть из рисунка 3.6 Ettercap выполняет сканирование сети, путем отправки широковещательных запросов для каждого IP-адреса. Диапазон IP-адресов для запросов вычисляется на основе IP-адреса и маски сети, которые прописаны на выбранном интерфейсе. Однако следует заметить, что в графе отправитель указан MAC-адрес злоумышленника, поэтому, чтобы в настоящей атаке скрыть свое присутствие следует сменить MAC-адрес на используемом интерфейсе утилитой macchanger.

Теперь выберем 2 цели, против которых собираемся проводить атаку ARP-spoofing (рисунок 3.8)


Рисунок 3.8 – Выбор целей


Последовательность выбора на имеет значение. Чтобы проверить, какие цели были выбраны выбираем «Ettercap Menu – Targets – Current Targets» (рисунок 3.9)


Рисунок 3.9 – Выбранные цели


Далее в меню «MITM menu» выбираем атаку ARP poisoning… и прослушиваем весь трафик (рисунки 3.10 – 3.11).


Рисунок 3.10 – Выбор MITM атаки


Рисунок 3.11 – Подтверждение


Теперь просмотри трафик, сгенерированный Ettercap (рисунок 3.12)


Рисунок 3.12 – Отравление ARP-таблиц


Как можно увидеть компьютер злоумышленника отсылает 2 ARP-пакета. В первом утверждается, что IP-адрес 192.168.1.100 теперь привязан к MAC-адресу злоумышленника. Второй пакет повторяет то же самое с IP-адресом 192.168.1.1.

Посмотрим теперь на ARP-таблицы на PC-1 и R1 (рисунки 3.13 – 3.14).


Рисунок 3.13 – Отравленная ARP-таблица на PC-1


Рисунок 3.14 – Отравленная ARP-таблица на R1


Атака прошла успешно. Теперь компьютер жертвы верит, что IP-адрес маршрутизатора привязан к MAC-адресу злоумышленника, а маршрутизатор верит, что IP-адрес PC-1 привязан к MAC-адресу злоумышленника.

Теперь злоумышленник прослушивает весь трафик между PC-1 и роутером. Для того, чтобы отобразить текущее соединение в Ettercap откройте «Ettercap Menu – View – Connections» (рисунок 3.15).


Рисунок 3.15 – Трафик между атакованными хостами


Чтобы просмотреть подробнее какой-либо пакет достаточно просто кликнуть по строке 2 раза.

Теперь пусть PC-1 аутентифицируется на некотором сайте, а злоумышленник попытается перехватить данные (рисунки 3.16 – 3.18).


Рисунок 3.16 – Пользователь аутентифицируется на ресурсе


В ettercap так же будут видны данные пользователя при использовании открытых протоколов.


После окончание атаки обязательно нажимайте на кнопку «Stop MITM», чтобы закрыть все атаки и восстановить все отравленные ARP-таблицы до их исходного состояния, чтобы замести следы.

За счет наличия графического интерфейса данная атака выполняется очень легко. Теперь рассмотрим методы для противодействия атаке ARP-spoofing.

 
4 DHCP-spoofing
4.1 Описание
 

DHCP позволяет устройствам автоматически получать конфигурацию сети при подключении к сетевому интерфейсу (обычно при загрузке).

Эта конфигурация обычно включает, помимо прочего, IP-адрес, присваиваемый устройству, доменное имя DNS и IP-адрес маршрутизатора по умолчанию, сервера DNS и сервера имен NetBIOS.

4.2 Реализация


В этом задании топология немного изменится по сравнению с предыдущими (рисунок 4.2).


Рисунок 4.2 – Сетевая топология для атаки DHCP-spoofing


DHCP-сервер сконфигурирован на роутере. Его пул приведен на рисунке. Как и в прошлом задании для проведения атаки воспользуемся утилитой Ettercap.

Посмотрим настройки сетевого интерфейса на PC-1 (рисунок 4.3).


Рисунок 4.3 – Настройки сетевого интерфейса на PC-1


DHCP-сервер выдал нашему компьютеру адрес 192.168.1.102. Теперь атакующий запускает на своем компьютере Ettercap и производить атаку DHCP-spoofing (рисунок 4.4 – 4.6).


Рисунок 4.4 – Выбор DHCP-spoofing


Рисунок 4.5 – Ввод параметров


Рисунок 4.6 – DHCP-spoofing запущен


Заметим, что мы не выбираем цели для атаки, так как, по сути, мы разворачиваем свой DHCP-сервер, а поэтому у нас нет конкретных целей для атаки.

Рассмотрим поподробнее параметры на рисунке 4.5:

– Пустой диапазон IP-адресов: Ettercap будет подделывать только ACK-сообщения. Если в это поле вписать диапазон адресов, например, 192.168.1.50—192.168.1.99, то Ettercap будет отсылать сообщения OFFER.

– 255.255.255.0: маска сети.

– 192.168.1.1: адрес DNS-сервера (это значение бессмысленно, но этот аргумент обязателен).

Теперь, когда ложный сервер запущен представим ситуацию, что пользователь PC-1 только включил свой компьютер в начале рабочего дня и попытался получить адрес от DHCP-сервера. Посмотрим на трафик в этот момент времени (рисунок 4.7)


Рисунок 4.7 – Процесс получение нового адреса от DHCP-сервера


Сначала Ettercap обнаружил широковещательное сообщение DISCOVER, но, поскольку мы не указали диапазон IP-адресов, он не реагировал на него.

Затем Ettercap обнаружил широковещательное сообщение REQUEST, содержащее IP-адрес, выделенный законным сервером DHCP, и отреагировало, отправив поддельный ACK клиенту с нашим настроенным адресом маршрутизатора.

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

Если по какой-то причине Ettercap систематически проигрывает гонку против DHCP-сервера, перенастройте DHCP-spoofing на отправку OFFER-сообщений.


Рисунок 4.8 – Сетевые настройки на PC-1


Рисунок 4.9 – Логи Ettercap


Теперь вновь попробуем аутентифицироваться на сайте (рисунки 4.10 – 4.12).


Рисунок 4.10 – Пользователь аутентифицируется на ресурсе


Рисунок 4.11 – Перехваченные пакеты


Как видно из всего вышесказанного данная атака тоже является достаточно несложной. Теперь рассмотрим методы защиты от нее.

 
5 DHCP Starvation
5.1 Описание
 

Для реализации DHCP DISCOVER flood можно воспользоваться функциональностью утилиты Yersinia. Yersinia предлагает функциональность DHCP DISCOVER flood, однако не следует путать эту атаку с фактической атакой DHCP Starvation, поскольку эффект от этой атаки является гораздо более временным (это может быть или не быть преимуществом, в зависимости от того, что вы пытаетесь достичь).

5.2 Реализация

Посмотрим состояние сетевого интерфейса на компьютере PC-1 и состояние пула DHCP до начала атаки (рисунки 5.1 – 5.2).


Рисунок 5.1 – Состояние сетевого интерфейса на PC-1 до атаки


Рисунок 5.2 – DHCP-пул роутера до атаки


На интерфейсе PC-1 находится адрес 192.168.1.189, выданный из DHCP-пула INTRANET.

Теперь запустим Yersinia (рисунок 5.3).


Рисунок 5.3 – Внешний вид графического интерфейса утилиты Yersinia


По умолчанию в программе включен MAC-spoofing. Чтобы его отключить зайдите в меню «Options».

Первым делом определим адрес DHCP-сервера в сети. Для этого выберем меню «Launch attack – DHCP – sending RAW packet» и подтвердите выбор (рисунок 5.4).


Рисунок 5.4 – Посылка одного DHCP-пакета


Программа отправила широковещательный DISCOVER запрос и в ответ получила OFFER от DHCP-сервера. Благодаря этому мы узнали адрес DHCP-сервера в сети. В Wireshark ситуация аналогичная (рисунки 5.5 – 5.6).


Рисунок 5.5 – RAW пакет DHCP


Рисунок 5.6 – Оправка RAW пакета DHCP


Обратите внимание на то, что MAC-адрес отправителя благодаря встроенному MAC-spoofing не совпал ни с исходным MAC-адресом злоумышленника, ни с тем, на который мы его сменили.

Хорошо, адрес DHCP-сервера получен, запускаем DHCP DISCOVER flood, чтобы никто не мог получить IP-адрес от легитимного DHCP-сервера (рисунки 5.7 – 5.8).


Рисунок 5.7 – Запуск DHCP DISCOVER flood


Рисунок 5.8 – Атака DHCP DISCOVER flood


Заметим, что у каждого пакета уникальный MAC-адрес, благодаря MAC-spoofing.

Воспользуемся топологией, предложенной в предыдущем задании и ОС Kali Linux на машине атакующего.

Посмотрим на пул DHCP на роутере в нашей сети (рисунок 5.9)


Рисунок 5.9 – Пул INTRANET на R1


Как можно заметить из всего пула занят только 1 адрес. Он принадлежит нашей жертве (рисунок 5.10).


Рисунок 5.10 – Настройки сетевого интерфейса на PC-1


Давайте сымитируем ситуацию, что PC-1 еще не включен, а поэтому он не зарезервировал за собой адрес и проведем атаку DHCP Starvation при помощи DHCPig (рисунки 5.11 – 5.12)


Рисунок 5.11 – Начало атаки


Рисунок 5.12 – Трафик во время атаки


Как можно увидеть генерируется полностью вся DHCP-сессия и каждый раз DHCP-сервер выдает новый адрес устройству.

После нескольких минут атаки посмотрим на DHCP-пул на роутере (рисунок 5.13).


Рисунок 5.13 – Все адреса пула заняты


Теперь пусть жертва включает свой компьютер и пытается получить IP-адрес (рисунок 5.14).


Рисунок 5.14 – PC-1 пытается получить адрес, но не может


Как итог, пользователь не может получить выход в интернет и продолжать свою работу, а значит атака прошла успешно.

Теперь посмотрим на методы защиты от данной атаки.

5.3 Защита

В качестве меры защиты, как и при прошлой атаке, необходимо использовать механизм DHCP snooping.


6 DHCP Starvation и DHCP-spoofing

6.1 Описание


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

Сначала необходимо выполнить DHCP Starvation, а затем развернуть свой поддельный DHCP-сервер.

6.2 Реализация

В данном задании воспользуемся 4-мя утилитами:

– Macchanger – для смены MAC-адреса на компьютере атакующего;

– DHCPig – для атаки DHCP Starvation;

– Metasploit – для разворачивания поддельного DHCP-сервера и выполнения атаки MITM;

– Wireshark – для анализа трафика сети.

Топология остается такая же, как и в предыдущем задании. На компьютере злоумышленника установлена ОС Kali Linux со всеми перечисленными выше утилитами.

Посмотри состояние сетевого интерфейса на компьютере PC-1 и состояние пула DHCP до начала атаки (рисунки 6.1 – 6.2).


Рисунок 6.1 – Состояние сетевого интерфейса на PC-1 до атаки


Рисунок 6.2 – DHCP-пул роутера до атаки


На интерфейсе PC-1 находится адрес 192.168.1.189, выданный из DHCP-пула INTRANET.

Утилитой macchanger сменим MAC-адрес на устройстве атакующего (рисунок 6.3).


Рисунок 6.3 – Смена MAC-адреса на устройстве злоумышленника


Не забудьте после окончания атаки вернуть обратно MAC-адрес на интерфейсе.

Сначала нам нужно настроить наш интерфейс, так, чтобы все пакеты, приходящие на него, передавались дальше по сети (рисунки 6.4 – 6.5).


Рисунок 6.4 – Настройка IP forwarding на атакующем компьютере


Рисунок 6.5 – Настройки сетевых интерфейсов


Для этого создадим сетевой интерфейс на компьютере, который будет использоваться в качестве шлюза по умолчанию для маршрутизации наших мошеннических клиентов DHCP. На него необходимо установить IP-адрес, не используемый в сети.

В идеале хотелось бы использовать адрес, который на первый взгляд похож на фактический маршрут по умолчанию, чтобы скрыть изменения для любого, кто может искать. Например, в нашем случае маршрут по умолчанию – 192.168.1.1, то используем 192.168.1.11. Если бы маршрут был похож на – 192.168.1.254, то можно было бы использовать 192.168.1.251.

После этого нужно разрешить пересылку на машину злоумышленника. Необходимо помнить, что подчиненный интерфейс и переадресация IP исчезнут после перезагрузки.

Далее устанавливаем шлюз по умолчанию для подчиненного интерфейса eth0:1. Шлюз по умолчанию должен быть установлен на допустимый сетевой шлюз по умолчанию, в нашем случае 192.168.1.1. В дополнение к тому, что этот шлюз по умолчанию для нашей машины, он также будет функционировать как маршрут по умолчанию для любого маршрутизируемого трафика, поступающего в интерфейс 192.168.1.11. Это означает, что любой хост, для которого в качестве шлюза по умолчанию установлено 192.168.1.11, получит 192.168.1.11, и его трафик будет немедленно перенаправлен на допустимый шлюз 192.168.1.1, что позволит нам прослушивать его при прохождении.

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

При вводе команды route -n будет выведена таблица маршрутов. Пункт назначения 0.0.0.0 подразумевает, что любой неизвестный трафик должен быть отправлен на шлюз 192.168.1.1. Также отметим, что флаги показывают UG, где G подразумевает шлюз по умолчанию.

Теперь запустим Metasploit (рисунок 6.6).


Рисунок 6.6 – Запущенный Metasploit


Развернем DHCP-сервер в Metasploit (рисунки 6.9 – 6.10).


Рисунок 6.9 – Поиск и выбор эксплоита


Рисунок 6.10 – Настройка эксплоита


Но не спешите его запускать, сперва нам нужно разобраться со старым DHCP-сервером. У нас есть два варианта, описанные в предыдущем задании. Воспользуемся грубым DHCP Starvation с функцией посылки кадров DHCP RELEASE. Так мы гарантируем, что помимо того, что заполним весь пул адресов, так еще и отключим все хосты, которые брали свои настройки на легальном DHCP-сервере.

Для запуска DHCP Starvation с функцией отправки DHCP RELEASE соседям необходимо запустить DHCPig с параметром -r. Теперь запустим DHCPig и дождемся полного отравления DHCP-пула на сервере DHCP (рисунки 6.11 – 6.12).


Рисунок 6.11 – Окончание работы dhcpig


Рисунок 6.12 – Отравленный DHCP-пул


После того, как все подготовительные этапы завершены запустим наконец поддельный DHCP Server (рисунок 6.13).


Рисунок 6.13 – Запуск эксплоита


Теперь наш поддельный DHCP-сервер запущен и ожидает жертв. К сожалению, параметр -r не сработал и компьютеры остались в пуле старого DHCP-сервера. Давайте представим, что жертва только включила компьютер, а легитимный DHCP-сервер заполнен (рисунки 6.14 – 6.15)


Рисунок 6.14 – Жертва попала в пул поддельного DHCP-сервера


Рисунок 6.15 – Сессия по установке IP-адреса


Как можно заметить, во время запроса IP-адреса даже не было состояния гонки между легитимным и поддельным DHCP-серверами. У легитимного DHCP-сервера пул полностью заполнен, а значит ему нечего предложить клиенту, поэтому DHCP-сервер злоумышленника без проблем берет пользователя к себе.

Теперь мы можем пользоваться любым сниффером трафика на интерфейсе eth0:1 и просматривать трафик всех пользователей, получивших настройки от нашего DHCP-сервера.

6.3 Защита


В качестве меры защиты, необходимо использовать механизм DHCP snooping, который подробно был рассмотрен в задании 4.


7 DNS-spoofing

В ходе данной атаки реализуем DNS-spoofing методом MITM. Для этого нам понадобится:

– Ettercap для отравления DNS-кеша;

– Msfvenom для генерации payload;

– Metasploit для получения сессии с компьютером жертвы;

– Apache для развертывания фиктивного сайта.

Сетевая топология останется такой же, как и в прошлом задании.

Первым делом создадим сайт, который будем показывать жертве. Сейчас много людей в связи с «самоизоляцией» использует Zoom. Поэтому создадим фишинговую страницу, имитирующую страницу загрузки Zoom (рисунки 7.2 – 7.3).


Рисунок 7.2 – Копирование исходного кода страницы


Рисунок 7.3 – Файл Index.html представляет страницу загрузки Zoom


Теперь давайте создадим payload, который будет давать злоумышленнику контроль над PC жертвы, через TCP соединения.

Для этого воспользуемся MSFvenom (рисунок 7.4).

Примечание: скрипт НЕ будет пытаться как-либо обойти антивирусные решения на какой-либо стадии.


Рисунок 7.4 – Создание полезной нагрузки


Разберем подробнее параметры утилиты:

– -p – тип payload. В нашем случаем используется reverse_tcp для платформы windows, с создаваемой сессией в meterpreter;

– LHOST – адрес, к которому будет производится подключение по tcp (адрес злоумышленника)

– LPORT – порт, по которому будет производится подключение (любое число в диапазоне портов);

– -f – формат, в котором представлен payload (exe для windows, elf – Linux, osx-app – IOS и т.д.);

– -o – путь, по для сохранения payload.

Теперь оба этих файла поместим в папку /var/www/html – нашего Web-сервера Apache (рисунок 7.5).


Рисунок 7.5 – Перемещение наших файлов в папку Web-сервера


Теперь необходимо сделать так, чтобы по нажатию кнопки скачать, начиналась загрузка нашего payload. Для этого исправим исходный код страницы нашего сайта (рисунок 7.6 – 7.7).


Рисунок 7.6 – Исправление исходного кода страницы


Рисунок 7.7 – При нажатии на кнопку загружается payload


Теперь запустим Apache и проверим работоспособность сайта (рисунок 7.8 – 7.9).


Рисунок 7.8 – Запуск Web-сервера


Рисунок 7.9 – Web-сервер и страница сайта настроены правильно


Web-сервер и фишинговая страница настроены. Теперь пришло время подготовиться к DNS-spoofing. В настройка Ettercap необходимо исправить записи, которые будут отравляться на стороне клиента (рисунки 7.10 – 7.11).


Рисунок 7.10 – Местоположение настроек DNS Ettercap


Рисунок 7.11 – Исправление DNS-записей


Теперь зайдем в Metasploit и настроим прослушивание Meterpreter нашего payload по параметрам, которые мы задали при его генерации (рисунок 7.12).


Рисунок 7.12 – Настройка прослушивания порта на прием reverse_tcp


Теперь запустим ARP-spoofing с помощью Ettercap, но уже с установленным плагином DNS-spoofing. Мы уже достаточно поработали в графическом интерфейсе, поэтому теперь как настоящие хакеры воспользуемся текстовым режимом (рисунок 7.13).


Рисунок 7.13 – DNS-spoofing запущен


Разберем параметры:

– -T – текстовый режим работы Ettercap;

– -q – не показывать содержимое сетевых пакетов (для этого можно использовать Wireshark);

– -M – использование MITM атаки;

– -i – используемый сетевой интерфейс;

– -P – запуск плагинов;

– -p – не использовать на интерфейсе неразборчивый режим.

Все настроено. Теперь на компьютере жертвы подключимся к сайту zoom.us и посмотрим на результат (рисунки 7.14 – 7.20).


Рисунок 7.14 – Подключение к фишинговому сайту


Рисунок 7.15 – Все запросы к домену zoom.us подделываются


Рисунок 7.16 – Скачиваем и запускаем файл


Рисунок 7.17 – После запуска открылась сессия reverse_tcp


Рисунок 7.18 – Просмотр системной информации


Рисунок 7.19 – Просмотр сетевых настроек


Рисунок 7.20 – Удаленное выключение


На этом все. Теперь рассмотрим методы защиты от данной атаки.


8 IP-spoofing


8.1 Реализация


В качестве примера IP-spoofing реализуем flood-атаки при помощи утилиты hping3. Сетевая топология остается прежней.

Посмотрим на IP-адрес жертвы (рисунок 8.1).


Рисунок 8.1 – IP-адрес жертвы


Теперь познакомимся поближе с утилитой hping3. hping – это сборщик / анализатор пакетов TCP / IP, ориентированный на командную строку. Используя hping3, можно выполнять как минимум следующие вещи:

– Проверка правил брандмауэра;

– Тестирование производительности сети с использованием разных протоколов, размера пакета, ToS (тип сервиса) и фрагментации;

– Удаленная проверка подлинности ОС;

– Аудит стека TCP / IP.

Сейчас воспользуемся hping3 для тестирования производительности сети. Другими словами – для тестирования атак DDOS. Посмотрим справку утилиты (рисунок 8.2).


Рисунок 8.2 – Параметры утилиты hping3


Этот список далеко не полный, однако нас будут интересовать некоторые особо важные параметры:

– Параметр flood: активирует режим самой быстрой отправки пакетов;

– Параметр destport (p): указывает порт назначения;

– Параметр spoof (a): указывает, какой IP-адрес должен быть подделан;

– Параметр rand-source: активирует режим случайного адреса источника.

Хотя вышеприведенные параметры важны, следует также выбрать, какой флаг установить для определения основного типа атаки:

– Параметр syn (S): указывает, что установлен флаг SYN.

– Параметр ack (A): указывает, что установлен флаг ACK.

– Параметр fin (F): указывает, что установлен флаг FIN

– Параметр rst (R): указывает, что установлен флаг RESET.

– Параметр push (P): указывает, что установлен флаг PUSH.

– Параметр urg (U): указывает, что установлен флаг URGENT

Hping3 не будет отображать какие-либо выходные данные на экране при работе в режиме flood. Тем не менее, он продолжает работать в фоновом режиме. Сначала выполним атаку SYN Flood. IP-спуфинг не требуется для базовой DDoS-атаки.

Пример №1 синтаксиса SYN Flood


Рисунок 8.3 – Пример Syn-flood при помощи hping3


Во время теста было отправлено 1 миллион пакетов за очень короткий период времени. На изображении ниже вы можете видеть, что системные ресурсы были выделены для входящих пакетов в целевую систему (системные ресурсы выделяются на 120 секунд) (рисунки 8.4 – 8.5).


Рисунок 8.4 – Нагрузка на целевой компьютер


Рисунок 8.5 – Syn-flood


Как можно заметить никакого IP-spoofing пока не происходит. Атакующий компьютер со своего адреса запускает трехэтапное рукопожатие с компьютером жертвы, однако по получении ответного пакета отменяет установку сессии

Эта атака не так эффективна, как остальные. Причина этого в том, что системные ресурсы высвобождаются менее чем за 120 секунд. Операционные системы отправляют пакеты SYN + ACK в ответ на пакеты SYN. Hping3 создает пакеты для отправки независимо от операционных систем.

Операционные системы отправляют пакеты SYN + ACK в ответ на пакеты SYN. Если исследуются базы TCP / IP, кажется, что пакет SYN + ACK не отправляется, за исключением трехстороннего рукопожатия. В этом случае, однако, операционная система злоумышленника, отвечающая на пакет SYN + ACK, прервет связь, отправив пакет RESET в целевую систему, поскольку нет пакета SYN, ранее отправленного операционной системой злоумышленника. В результате пространство, выделенное целевым системным ресурсам, высвобождается менее чем за 120 секунд.

Внимание! Это не конец книги.

Если начало книги вам понравилось, то полную версию можно приобрести у нашего партнёра - распространителя легального контента. Поддержите автора!

Страницы книги >> 1
  • 3 Оценок: 1

Правообладателям!

Данное произведение размещено по согласованию с ООО "ЛитРес" (20% исходного текста). Если размещение книги нарушает чьи-либо права, то сообщите об этом.

Читателям!

Оплатили, но не знаете что делать дальше?


Популярные книги за неделю


Рекомендации