Введение
В этой лабораторной работе вы научитесь использовать вспомогательный сканирующий модуль в 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-сервера на цели.
Этот процесс является фундаментальным навыком для сбора информации и разведки в области кибербезопасности и тестирования на проникновение.


