banner banner banner
Техника и технология атак злоумышленников в распределенных информационных системах. Часть 2. Атакуем и продолжаем рекогносцировку. SQL injection
Техника и технология атак злоумышленников в распределенных информационных системах. Часть 2. Атакуем и продолжаем рекогносцировку. SQL injection
Оценить:
Рейтинг: 0

Полная версия:

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

скачать книгу бесплатно

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

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

Данная работа не содержит каких-либо практических рекомендаций по «взлому» реальных информационных систем и является естественным продолжением первой части. Она может служить руководством по подготовке к возможным атакам на компьютерные системы и практическим пособием, содержащим сведения по технологии и технике проведения атак и возможным механизмам защиты от злоумышленников.

Техника и технология атак злоумышленников в распределенных информационных системах

Часть 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.