Использование вспомогательного сканера для перечисления SSH в Metasploit

Kali LinuxBeginner
Практиковаться сейчас

Введение

В этой лабораторной работе вы научитесь использовать вспомогательный сканирующий модуль в Metasploit Framework для перечисления версий SSH (Secure Shell). Metasploit — это мощный инструмент для тестирования на проникновение, содержащий обширную коллекцию эксплойтов, полезных нагрузок и вспомогательных модулей.

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

Вы научитесь запускать консоль Metasploit, искать подходящий модуль, настраивать его параметры и запускать его против цели для определения версии SSH.

Поиск вспомогательного модуля ssh_version

На этом шаге вы запустите консоль Metasploit Framework и найдете модуль, способный сканировать версии SSH.

Сначала откройте терминал. Консоль Metasploit представляет собой интерфейс командной строки для фреймворка. Вы можете запустить ее, набрав msfconsole. Мы будем использовать флаг -q для "тихого" запуска, который подавляет стартовый баннер.

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

msfconsole -q

После загрузки консоли вы увидите приглашение Metasploit, которое выглядит как msf6 >. Теперь вы можете использовать команду search для поиска модулей. Мы ищем модуль, связанный со сканированием версий SSH.

Введите следующую команду в консоль Metasploit и нажмите Enter:

search ssh_version

Metasploit выполнит поиск в своей базе данных модулей и отобразит все совпадения. В выводе будет показан модуль auxiliary/scanner/ssh/ssh_version, который нам и нужен.

msf6 > search ssh_version

Matching Modules
================

   ##  Name                                 Disclosure Date  Rank    Check  Description
   -  ----                                 ---------------  ----    -----  -----------
   0  auxiliary/scanner/ssh/ssh_version                     normal  No     Detect SSH Version


Interact with a module by name or index. For example info 0, use 0 or use auxiliary/scanner/ssh/ssh_version

msf6 >

Выбор модуля ssh_version

На этом шаге вы выберете найденный модуль ssh_version и просмотрите его доступные параметры.

Теперь, когда вы определили правильный модуль, вам нужно загрузить его в контекст фреймворка. Это делается с помощью команды use, за которой следует полное имя модуля.

В приглашении msfconsole введите следующую команду:

use auxiliary/scanner/ssh/ssh_version

После выполнения команды вы заметите, что приглашение изменилось. Теперь оно включает имя активного модуля, указывая, что он готов к настройке. Новое приглашение будет выглядеть так: msf6 auxiliary(scanner/ssh/ssh_version) >.

Чтобы увидеть, какие параметры вы можете настроить для этого модуля, используйте команду show options:

show options

Эта команда отобразит таблицу всех параметров для модуля ssh_version, включая их текущие настройки, требуется ли их установка и краткое описание. Обратите особое внимание на параметры RHOSTS и THREADS, поскольку мы будем настраивать их на следующих шагах.

msf6 auxiliary(scanner/ssh/ssh_version) > show options

Module options (auxiliary/scanner/ssh/ssh_version):

   Name     Current Setting  Required  Description
   ----     ---------------  --------  -----------
   RHOSTS                    yes       The target host(s), range CIDR identifier, or hosts file with syntax 'file:<path>'
   RPORT    22               yes       The target port (TCP)
   THREADS  1                yes       The number of concurrent threads (max one per host)
   TIMEOUT  30               yes       Timeout for the SSH probe

...

Установка параметра RHOSTS на целевую подсеть

На этом шаге вы настроите цель для вашего сканирования. Параметр RHOSTS указывает удаленный хост или хосты, которые Metasploit будет сканировать.

Для этой лаборатории мы будем сканировать саму локальную машину, поскольку скрипт настройки установил и запустил на ней SSH-сервер. IP-адрес локальной машины всегда 127.0.0.1.

Вы можете устанавливать параметры модуля с помощью команды set, за которой следует имя параметра и значение, которое вы хотите присвоить.

Чтобы установить целевой машиной вашу локальную машину, выполните следующую команду в приглашении msfconsole:

set RHOSTS 127.0.0.1

Metasploit подтвердит изменение, выведя параметр и его новое значение.

RHOSTS => 127.0.0.1

Теперь вы указали сканеру, какую машину следует таргетировать. Если бы вы сканировали сеть, вы могли бы указать здесь диапазон IP-адресов (например, 192.168.1.0/24).

Установка количества одновременных потоков

На этом шаге вы настроите количество одновременных потоков для сканера. Этот параметр определяет, сколько хостов сканируется одновременно.

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

Значение по умолчанию — 1. Увеличим его до 10. Мы снова воспользуемся командой set.

В приглашении msfconsole введите следующую команду:

set THREADS 10

Metasploit подтвердит, что настройка обновлена.

THREADS => 10

Теперь сканер настроен на использование до 10 потоков, что значительно ускорит его работу при сканировании диапазона IP-адресов.

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

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

Команда run (или ее псевдоним exploit) выполняет загруженный в данный момент модуль с его настроенными параметрами.

Чтобы начать сканирование, просто введите run в приглашении msfconsole и нажмите Enter:

run

Модуль попытается подключиться к порту 22 на 127.0.0.1. Если он обнаружит активную службу SSH, он получит баннер версии и отобразит его. Вывод должен выглядеть примерно так:

[*] 127.0.0.1:22 - Scanned 1 of 1 hosts (100%)
[+] 127.0.0.1:22 - SSH server detected: SSH-2.0-OpenSSH_8.9p1 Ubuntu-3ubuntu0.6
[*] Auxiliary module execution completed

Символ [+] указывает на успех. Вывод показывает, что SSH-сервер был обнаружен на 127.0.0.1 на порту 22, и сообщает, что версия — OpenSSH_8.9p1 в системе Ubuntu. Эта информация ценна для следующих шагов в тестировании на проникновение, таких как поиск уязвимостей, специфичных для этой версии.

Итоги

В этой лабораторной работе вы успешно использовали вспомогательный сканер Metasploit для перечисления версий SSH.

Вы узнали, как:

  • Запускать консоль Metasploit Framework.
  • Искать конкретный модуль с помощью команды search.
  • Выбирать и загружать модуль с помощью команды use.
  • Настраивать параметры модуля, такие как RHOSTS и THREADS, с помощью команды set.
  • Выполнять модуль с помощью команды run.
  • Интерпретировать результаты для определения версии SSH-сервера на цели.

Этот процесс является фундаментальным навыком для сбора информации и разведки в области кибербезопасности и тестирования на проникновение.