Категория > Новости > Путеводитель по Metasploit. Разбираем примеры использования знаменитого фреймворка - «Новости»

Путеводитель по Metasploit. Разбираем примеры использования знаменитого фреймворка - «Новости»


3-07-2020, 12:36. Автор: Константин
Metasploit Framework — самый масштабный и распиаренный из всех фреймворков для эксплуатации и постэксплуатации. Даже если ты не используешь его сам, то наверняка встречал немало упоминаний MSF в наших статьях. Однако вводной статьи по нему в «Хакере» не было, а если и была, то так давно, что не считается. Я попробую начать с самого начала, а заодно расскажу, как именно этот фреймворк использует моя команда, и дам разные практические советы.
Путеводитель по Metasploit. Разбираем примеры использования знаменитого фреймворка - «Новости»
WARNING

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


Установка Metasploit Framework



В дистрибутивах, предназначенных для тестирования на проникновение (к примеру, Kali или Parrot OS), этот продукт либо предустановлен, либо легко устанавливается следующей командой:



apt install metasploit-framework


Если же ты хочешь использовать Metasploit Framework, например, в Ubuntu, то его можно установить из официального репозитория. Для этого набери в консоли следующие директивы:



curl https://raw.githubusercontent.com/rapid7/metasploit-omnibus/master/config/templates/metasploit-framework-wrappers/msfupdate.erb > msfinstall
sudo chmod 755 msfinstall
sudo ./msfinstall

База данных Metasploit



Довольно часто пользователям Metasploit приходится ломать сети, содержащие очень много хостов. И наступает момент, когда аккумулирование всей полученной информации занимает непозволительно долгое время. Именно тогда начинаешь ценить возможность работы Metasploit Framework с СУБД PostgreSQL. Metasploit может сам сохранять и удобно формализовать полученную информацию благодаря модулю msfdb. Для работы с базами необходимо запустить службу postgresql Рё создать базу для Metasploit.



service postgresql start
msfdb init


Сообщение msfdb об успешном создании базы данных

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



Успешное подключение к базе данных Metasploit
Успешное подключение к базе данных Metasploit

Чтобы было удобней работать с различными областями (хостами, сетями или доменами) и разделять данные для структуризации, msfdb имеет поддержку так называемого рабочего пространства. Давай добавим новое пространство в наш проект.



> workspace -a xakep


Создание нового рабочего пространства

Теперь мы действуем в созданном рабочем пространстве. Представим, что мы находимся в сети 192.168.6.0.24. Давай поищем в ней доступные хосты. Для этого будем использовать Nmap, РЅРѕ РёР· Metasploit Рё СЃ РїСЂРёРІСЏР·РєРѕР№ Рє текущей базе данных — db_nmap.



> db_nmap -O 192.168.6.0/24


Сам вывод Nmap нам неинтересен: все, что нужно, будет сохранено в базе данных. К примеру, у нас есть уже все просканированные хосты и мы можем их просмотреть одним списком с помощью команды hosts.



Список просканированных хостов, сохраненный в базе данных
Список просканированных хостов, сохраненный в базе данных

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



Список всех найденных служб
Список всех найденных служб
Список найденных на определенном хосте служб
Список найденных на определенном хосте служб

У базы данных msfdb есть очень крутая возможность — сохранение всех найденных учетных данных. Об этой функции я расскажу позже, а сначала несколько слов о возможностях брутфорса, которыми располагает фреймворк. Полный список перебираемой информации для коллекционирования учетных данных можно получить следующей командой:



> search type auxiliary/scanner -S "_login"


Модули для брутфорса учетных данных некоторых служб

Обрати внимание на SMB. Чтобы узнать, для чего именно предназначен определенный модуль и его описание (со ссылкой на cvedetails), а также посмотреть данные, которые нужно передать в качестве параметров, следует воспользоваться командой info.



info auxiliary/scanner/smb/smb_login


Описание модуля smb_login

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



msf5 > use auxiliary/scanner/smb/smb_login
msf5 auxiliary(scanner/smb/smb_login) > set RHOSTS 192.168.6.129
msf5 auxiliary(scanner/smb/smb_login) > set SMBUser root
msf5 auxiliary(scanner/smb/smb_login) > set PASS_FILE /home/ralf/tmp/pass.txt
msf5 auxiliary(scanner/smb/smb_login) > set SMBDomain DOMAIN
msf5 auxiliary(scanner/smb/smb_login) > run


Настройка модуля smb_login

Обнаруженный smb_login пароль для целевого пользователя

Если найденный пользователь — администратор, Metasploit сообщит нам об этом, что очень удобно. Но ведь в нашей сети может быть 100 машин и даже больше, а на них наверняка запущено множество служб. Как правило, удается собрать много учетных данных, используя только модули брутфорса. Использование msfdb позволяет не тратить время на коллекционирование всех обнаруженных логинов, хешей, паролей, так как они автоматически остаются в хранилище учетных данных, посмотреть которое можно командой creds.



Перейти обратно к новости