- Инструменты Kali Linux
- Список инструментов для тестирования на проникновение и их описание
- mitmcanary
- Описание mitmcanary
- Канареечные запросы
- Справка по mitmcanary
- Руководство по mitmcanary
- Примеры запуска mitmcanary
- Установка mitmcanary
- Инструменты Kali Linux
- Список инструментов для тестирования на проникновение и их описание
- SSH MITM
- Описание SSH MITM
- Справка по SSH MITM
- Справка по JoesAwesomeSSHMITMVictimFinder.py
- Руководство по SSH MITM
- Для разработчиков
- Примеры запуска SSH MITM
- Поиск целей
- Запуск атаки
- Установка SSH MITM
- Установка в Kali Linux
- Установка в BlackArch
- Как выполнить атаку «человек посередине» (MITM) с Kali Linux
- Требования
- 1. Включите пересылку пакетов в Linux
- Заметка
- 2. Перехватывать посылки от жертвы с помощью arpspoof
- Важный
- 3. Перехватывать пакеты от роутера с помощью arpspoof
- Важный
- 4. нюхать изображения от жертвы навигации
- Заметка
- 5. Обнаружение URL-адресов информации от жертвы навигации
- Заметка
- 6. Отключите пересылку пакетов (только после завершения атаки)
- Резюме
Инструменты Kali Linux
Список инструментов для тестирования на проникновение и их описание
mitmcanary
Описание mitmcanary
Инструмент/служба для выявления атак человек-посередине с помощью Канареечных запросов.
Канареечные запросы
Сущность применяемой в mitmcanary технологии заключается в создании нескольких запросов в доверенной сети. Полученные ответы анализируются и сохраняются. При анализе выделяются изменяемые и неизменяемые элементы.
После запуска служба mitmcanary через регулярные интервалы повторяет запросы к тем же ресурсам, и каждый раз анализирует ответы. Инструменты для выполнения атаки человек-посередине оставляют те или иные следы. Например:
- MITMf (фреймворк атаки человек-посередине, реализует широкий ряд атак, как активных, так и пассивных), по умолчанию меняет все HTTPS URL в HTMLкоде на HTTP. Выявляется по сравнению содержимого HTTP.
- Zarp + MITMProxy (Zarp для получения состояния MITM; MITMProxy для вмешательства/анализа трафика), MITMProxy имеет функционал, позволяющий очищать HTTP сжатие, это применяется для прозрачности передаваемого трафика, эта связка выявляется по исчезновению ранее присутствующего сжатия
- Responder (отвечает на LLMNR/NBT-NS/mDNS запросы для контролирования соединений), выявляется по внезапным изменениям в преобразовании ответов mDNS: неожиданный ответ; ответ является внутренним, а ожидается внешний; ответ отличен от ожидаемого IP
- Bettercap (инструмент и фреймворк для MITM с диагностическими и наступательными функциями всех родов, которые могут понадобиться для выполнения атаки человек-посередине), также выявляется во время тестов
Настроить ресурсы, к которым производятся запросы можно в файле service/setup_test_persistence.py
При выявлении специфических изменений, свидетельствующих о проведении атаки человек-посередине, выводиться предупреждение.
Автор: Brian Wallace
Справка по mitmcanary
Запуск программы начинается с тренировки канареечных запросов. После окончания этого процесса можно запустить службу и графический интерфейс.
Руководство по mitmcanary
Страница man отсутствует.
Примеры запуска mitmcanary
Запуск mitmcanary в Kali Linux
После установки, для запуска mitmcanary в Kali Linux, перейдите в каталог
И запустите файл setup_test_persistence.py:
Это запустит тренировку различных канареечных запросов. Если вы хотите изменить канареечные запросы, отредактируйте этот файл. Будет создан файл persist.json, который содержит конфигурацию службы.
После окончания этого процесса, в этой же директории выполните (это запустит фоновый процесс):
После этого в новом окне терминала перейдите в коневую директорию с mitmcanary и выполните там:
Это запустит графический интерфейс. Графический интерфейс не нужен для работы службы и сохранения предупреждений, поэтому перезапущенный графический интерфейс вновь покажет предупреждения об атаке человек-посередине.
Запуск mitmcanary в BlackArch
После установки, для запуска mitmcanary в BlackArch, перейдите в каталог
И запустите файл setup_test_persistence.py:
Это запустит тренировку различных канареечных запросов. Если вы хотите изменить канареечные запросы, отредактируйте этот файл. Будет создан файл persist.json, который содержит конфигурацию службы.
После окончания этого процесса, в этой же директории выполните (это запустит фоновый процесс):
После этого в новом окне терминала перейдите в коневую директорию с mitmcanary и выполните там:
Это запустит графический интерфейс. Графический интерфейс не нужен для работы службы и сохранения предупреждений, поэтому перезапущенный графический интерфейс вновь покажет предупреждения об атаке человек-посередине.
Установка mitmcanary
Установка в Kali Linux
Установка в BlackArch
Информация об установке в другие операционные системы будет добавлена позже.
Источник
Инструменты Kali Linux
Список инструментов для тестирования на проникновение и их описание
SSH MITM
Описание SSH MITM
SSH MITM — это инструмент тестера на проникновения, который позволяет аудитору перехватывать SSH подключения. В качестве основы инструмента взят исходный код OpenSSH v7.5p1, который пропатчен особым образом, что превращает его в прокси между жертвой и SSH сервером, к которому она пытается подключиться; все пароли, передаваемые в виде простого текста и сессии перехватываются и сохраняются на диск атакующего.
Безусловно, SSH клиент жертвы будет жаловаться, что изменился ключ сервера. Но поскольку в 99.99999% случаев это вызвано легитимными действиями (переустановка ОС, изменения конфигурации и т. д.), многие/большинство пользователей пренебрегают этим предупреждением и продолжают.
Примечание: модифицированный sshd_mitm рекомендуется запускать только в контейнере виртуальной машины! Изменения, сделанные в OpenSSH, затрагивают критические области кода без оглядки на безопасность. Не трудно представить, что эти изменения открыли серьёзные уязвимости.
Автор: Joe Testa
Справка по SSH MITM
У программы нет опций, для запуска и остановки атаки используются файлы start.sh и stop.sh.
Скрипт JoesAwesomeSSHMITMVictimFinder.py используется для поиска целей перед атакой. То есть этот скрипт ищет компьютеры с SSH подключениями.
Справка по JoesAwesomeSSHMITMVictimFinder.py
Руководство по SSH MITM
Страница man отсутствует.
Для разработчиков
В файле lol.h имеются два объявления переменных: DEBUG_HOST и DEBUG_PORT. Включите их и установите имя хоста на тестовый сервер. Теперь вы сможете подключаться к sshd_mitm напрямую без использования ARP спуфинга — это позволит вам протестировать ваши изменения.
Для тестирования изменений в исходном коде OpenSSH, используйте скрипт dev/redeploy.sh.
Для просмотра различчий (diff) не отправленных в репозиторий изменений (то есть ваших изменений) используйте скрипт dev/make_diff_of_uncommitted_changes.sh.
Для регенерации полного патча к исходному коду OpenSSH, используйте скрипт dev/regenerate_patch.sh.
Примеры запуска SSH MITM
Поиск целей
Скрипт JoesAwesomeSSHMITMVictimFinder.py делает поиск целей в локальной сети очень простым. Он выполняет атаку ARP спуфинг блоков IP на короткое время и сниффит трафик в поисках SSH подключений. IP адреса атакуются не одновременно, а небольшими блоками на короткое время — все блоки обрабатываются последовательно, когда скрипт доходит до последнего, то всё начинается сначала. Он сообщит о всех исходящих SSH подключениях исходящих от устройств в локальной сети.
По умолчанию JoesAwesomeSSHMITMVictimFinder.py будет выполнять ARP спуфинг и снифить только по 5 IP адресов за раз в течение 20 секунд перед тем, как перейти к следующему блоку из 5 адресов. Эти параметры можно настроить исходя из следующего компромисса: чем больше IP спуфится (атакуется) за раз, тем выше шанс, что вы поймаете исходящее SSH соединение, но также повышается нагрузка и на ваш сетевой интерфейс, который у домашних компьютеров редка предназначен для такой интенсивной работы. Под слишком большой нагрузкой ваш интерфейс начнёт отбрасывать фреймы, что будет приводить к отказу-в-обслуживании (проблемам в работе сети) и сильно повысит подозрительность (а это плохо). Это значение по умолчанию в большинстве случаев не должно приводить к проблемам, хотя это приведёт к более долгому поиску целей. Для сетей с низкой нагрузкой размер блока можно безопасно увеличить:
Запуска скрипта для обнаружения целей (устройств, с которых выполнено SSH подключение):
Приведённый выше вывод показывает, что два устройства в локальной сети создали SSH подключения (10.11.12.43 и 10.11.12.70); они могут стать целями для атаки человек-посередине. Тем не менее помните, чтобы потенциально перехватить учётные данные, вам нужно ждать, когда они инициируют новые подключения. Нетерпеливые пентестеры могут опционально в принудительном порядке закрыть существующие SSH сессии (используя инструмент tcpkill), чтобы клиентам немедленно было предложено создать новые…
Запуск атаки
1. После того, как вы завершили начальную установку и нашли список потенциальных жертв (смотрите выше), нужно выполнить от root скрипт start.sh:
Этот скрипт запустит sshd_mitm, включит IP forwarding и настроит перехват SSH пакетов через iptables.
2. Запустите ARP спуфинг цели(целей).
Совет от профессионалов: НЕ надо спуфить всё! Ваш домашний сетевой интерфейс вряд ли способен одновременно обрабатывать трафик всей локальной сети. Выполняйте атаку спуфинга с помощью arpspoof в отношении парочки IP за раз:
В качестве альтернативы вы можете использовать инструмент ettercap:
3. Мониторьте содержимое auth.log. Перехваченные пароли появятся там:
4. После установки сессии, полный лог ввода и вывода можно найти в /home/ssh-mitm/. SSH сессии записываются как shell_session_*.txt, а SFTP сессии записываются как sftp_session_*.html (с переданными файлами, сохраняющимися в соответствующей директории).
В случае успеха, файл /var/log/auth.log будет иметь следующие строки, в которых записан пароль:
Далее SSH сессия жертвы записывается в полном объёме:
Помните, что символы в командах пользователя должны появляться дважды в файле, поскольку записывается ввод от пользователя, а также записывается вывод от оболочки (который повторяет (echo) символы). Обратите внимание, что когда программы вроде sudo и ssh временно отключают повтор введённого пользователем для чтения пароля, дублирующие символы не попадают в журнал.
Вся SFTP активность также захватывается. Используйте браузер для просмотра sftp_session_0.html. Этот файл записывает все команды со ссылками на выгружанные и загруженные файлы:
Установка SSH MITM
Установка в Kali Linux
Установка в BlackArch
Программа предустановлена в BlackArch.
Информация об установке в другие операционные системы будет добавлена позже.
Источник
Как выполнить атаку «человек посередине» (MITM) с Kali Linux
В этой статье вы узнаете, как выполнить MITM-атаку на устройство, подключенное к той же сети Wi-Fi, что и ваша.
Требования
В этой статье предполагается, что вы знаете, что такое сетевой интерфейс, и знаете, как работать с Kali Linux и командной строкой. Перед запуском вам необходимо знать имя сетевого интерфейса (установленного на вашем компьютере) и IP-адрес маршрутизатора, который обеспечивает доступ к Wi-Fi.
Злоумышленник Требуется информация | Пример значения (вам необходимо заменить эти значения) |
Имя сетевого интерфейса | wlan0 |
IP-адрес маршрутизатора | 192.000.000.1 |
Имя сетевого интерфейса можно легко получить, запустив ifconfig Команда на терминале, затем из списка скопируйте имя интерфейса, который вы хотите использовать. IP роутера можно получить, выполнив ip route show на терминале и сообщение типа «по умолчанию через [Это IP-адрес маршрутизатора]».
От жертвы вам понадобится только IP-адрес (пользователь должен быть подключен к сети, предоставляемой маршрутизатором). Процесс получения IP-адреса устройства жертвы полностью зависит от вас, есть много способов узнать это, например, есть программы пользовательского интерфейса маршрутизаторов / gatefays, которые перечисляют все подключенные устройства (с IP-адресами в списке) или просто используют программный инструмент для мониторинга сети.
Жертва Необходимая информация | Пример значения (вам необходимо заменить эти значения) |
IP-адрес устройства жертвы | 192.000.000.52 |
Поскольку мы взломали себя в этой статье, мы можем легко получить эту информацию непосредственно с нашего устройства:
Мы собираемся выполнить MITM-атаку на Samsung Galaxy S7 (подключенный к маршрутизатору (маршрутизатор IP 192.000.000.1 ) с IP 192.000.000.52 ), который использует Google Chrome и будет перемещаться по различным веб-сайтам, чтобы показать, действительно ли атака работает или нет. Как только вы собрали всю необходимую информацию, давайте начнем!
1. Включите пересылку пакетов в Linux
Первое, что вам нужно сделать, это переслать все сетевые пакеты IPv4. Таким образом, ваша машина будет действовать как маршрутизатор. Выполните следующую команду в новом терминале:
Заметка
Если ваша машина не пересылает пакеты, интернет-соединение пользователя будет зависать, и поэтому атака будет бесполезной.
2. Перехватывать посылки от жертвы с помощью arpspoof
arpspoof — это утилита командной строки, которая позволяет вам перехватывать пакеты в коммутируемой локальной сети. Он также перенаправляет пакеты с целевого хоста (или всех хостов) в локальной сети, предназначенной для другого хоста в локальной сети, подделывая ответы ARP. Это чрезвычайно эффективный способ отслеживания трафика на коммутаторе. Структура команды для начала перехвата пакетов от жертвы к маршрутизатору следующая:
Таким образом, с нашими значениями команда должна выглядеть так:
Важный
Запустите вашу команду в новом терминале и дайте ему поработать (не закрывайте его, пока не захотите остановить атаку).
Этот процесс будет контролировать поток пакетов от жертвы к маршрутизатору.
3. Перехватывать пакеты от роутера с помощью arpspoof
Теперь, когда вы перехватываете пакеты от жертвы к маршрутизатору (работающему на терминале), вам нужно перехватить пакеты от жертвы к маршрутизатору с помощью arpspoof. Структура команды для начала перехвата пакетов от маршрутизатора к жертве следующая:
Таким образом, с нашими значениями команда должна выглядеть так:
Важный
Запустите вашу команду в новом терминале и дайте ему поработать (не закрывайте его, пока не захотите остановить атаку).
Как видите, это та же команда, что и на предыдущем шаге, но мы изменили аргументы. До этого момента вы уже проникли в соединение между вашей жертвой и маршрутизатором. Теперь вам просто нужно научиться читать эти пакеты, используя driftnet и urlsnarf.
4. нюхать изображения от жертвы навигации
Чтобы увидеть изображения с веб-сайтов, которые посещает наша жертва, вам нужно использовать driftnet. Driftnet — это программа, которая прослушивает сетевой трафик и выбирает изображения из потоков TCP, которые она наблюдает. Забавно бегать на хосте, который видит много интернет-трафика. Структура команды для запуска driftnet и просмотра изображений, которые пользователь видит на сайтах, следующая:
Заметка
Если ваша машина не пересылает пакеты, интернет-соединение пользователя будет зависать, и поэтому атака будет бесполезной.
С имеющейся у нас информацией наша команда должна выглядеть так:
5. Обнаружение URL-адресов информации от жертвы навигации
Чтобы получить информацию о сайтах, которые посещает наша жертва, вы можете использовать для этого urlsnarf. Это инструмент командной строки, который анализирует HTTP-запросы в общем формате журнала. Он выводит все запрошенные URL-адреса, извлеченные из HTTP-трафика, в CLF (общий формат журнала, используемый почти всеми веб-серверами), который подходит для автономной пост-обработки с помощью вашего любимого инструмента анализа веб-журналов (аналог, wwwstat и т. Д.). Структура команды для прослушивания URL-адресов, которые посещает ваша жертва, следующая:
В этом случае, с имеющейся у нас информацией, команда для выполнения будет выглядеть так:
Заметка
Если ваша машина не пересылает пакеты, интернет-соединение пользователя будет зависать, и поэтому атака будет бесполезной.
Поздравляем, если вы тщательно выполнили все шаги, теперь вы должны отслеживать информацию о цели, которую вы выбрали с помощью атаки MITM. Как только ваша жертва заходит на веб-сайт, вы сможете прочитать информацию о его действиях в Интернете. Чтобы остановить атаку, нажмите CTRL + C на каждом терминале, где работает любой открытый процесс.
6. Отключите пересылку пакетов (только после завершения атаки)
Как только вы закончите свою атаку (вы больше не хотите ее прослушивать), не забудьте отключить пересылку пакетов в системе, снова выполнив следующую команду на терминале:
Резюме
Если вы уже следовали учебному пособию, все сделали правильно и все заработало, как ожидалось, а затем следуйте краткому описанию процесса в следующий раз, когда вы захотите сделать это:
Источник