Перечисление FTP и анонимный доступ

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

Введение

Добро пожаловать в этот практический лабораторный практикум по перечислению сетевых служб и эксплуатации протоколов передачи файлов. В области кибербезопасности первым шагом к оценке безопасности системы является понимание того, какие службы она предоставляет сети. Этот процесс называется перечислением (enumeration).

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

По завершении вы будете понимать, как:

  • Проверять сетевое подключение с помощью ping.
  • Сканировать открытые порты и службы с помощью nmap.
  • Подключаться к службе FTP с анонимным доступом.
  • Использовать распространенную неправильную конфигурацию для доступа к файлам.

Начнем.

Проверка подключения к цели с помощью Ping

На этом этапе вы начнете фазу разведки, проверив подключение к целевой системе. Команда ping является фундаментальной сетевой утилитой, используемой для проверки доступности хоста в IP-сети. Она отправляет пакеты ICMP Echo Request цели и ожидает пакеты ICMP Echo Reply.

Ваша среда была предварительно настроена с целевой системой, доступной по имени хоста target.

Выполните следующую команду в терминале, чтобы отправить четыре пакета на target и подтвердить, что он находится в сети:

ping -c 4 target

Вы должны увидеть вывод, аналогичный следующему, указывающий на то, что цель отвечает и соединение стабильно. Точный IP-адрес и значения времени могут отличаться.

PING target (172.17.0.2) 56(84) bytes of data.
64 bytes from target (172.17.0.2): icmp_seq=1 ttl=64 time=0.086 ms
64 bytes from target (172.17.0.2): icmp_seq=2 ttl=64 time=0.064 ms
64 bytes from target (172.17.0.2): icmp_seq=3 ttl=64 time=0.063 ms
64 bytes from target (172.17.0.2): icmp_seq=4 ttl=64 time=0.064 ms

--- target ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3069ms
rtt min/avg/max/mdev = 0.063/0.069/0.086/0.010 ms

Как только вы увидите успешные ответы, вы можете быть уверены, что ваша машина может обмениваться данными с целью.

Сканирование открытых портов с помощью Nmap

На этом этапе вы будете использовать nmap для выполнения сканирования портов на цели. Nmap (Network Mapper) — это незаменимый инструмент для сетевого обнаружения и аудита безопасности. Сканируя открытые порты, вы можете определить, какие службы запущены на цели, что является решающим шагом в поиске потенциальных уязвимостей.

Выполните следующую команду в терминале для сканирования открытых портов и определения версий служб:

nmap -sV target

Nmap теперь просканирует машину target с включенным определением версий. Через несколько мгновений он отобразит отчет о своих находках. Вывод должен выглядеть примерно так:

Starting Nmap 7.80 ( https://nmap.org ) at 2025-09-15 10:00 CST
Nmap scan report for target (172.17.0.2)
Host is up (0.00011s latency).
Not shown: 999 closed ports
PORT   STATE SERVICE VERSION
21/tcp open  ftp     vsftpd 3.0.5
Service Info: OS: Unix

Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 0.32 seconds

Внимательно изучите вывод. Nmap обнаружил, что порт 21/tcp является open и на нем запущена служба ftp версии vsftpd 3.0.5. Это наша точка входа для следующего шага.

Подключение к цели по FTP

На этом этапе вы попытаетесь подключиться к открытому FTP-порту, который вы обнаружили. FTP (File Transfer Protocol) — это стандартный протокол связи, используемый для передачи компьютерных файлов между сервером и клиентом. Его основная уязвимость заключается в том, что он может быть неправильно настроен для разрешения анонимного доступа без надлежащей аутентификации. Мы воспользуемся распространенной ошибкой конфигурации, позволяющей анонимный вход.

Выполните команду ftp для подключения к target:

ftp target

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

Connected to target.
220 (vsFTPd 3.0.5)
Name (target:labex):

Система запрашивает вход. Распространенная ошибка конфигурации в службах FTP позволяет анонимный доступ. Введите anonymous в приглашении для ввода имени пользователя и нажмите Enter. Поскольку служба настроена на разрешение анонимного доступа без пароля, вы можете снова нажать Enter, когда будет предложено ввести пароль.

Name (target:labex): anonymous
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp>

В случае успеха вы будете авторизованы и увидите приглашение FTP (ftp>). Это означает, что вы получили доступ к службе FTP.

ftp>

Теперь вы подключены к службе FTP и можете взаимодействовать с удаленной файловой системой.

Исследование целевой системы и поиск флага

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

В настоящее время вы подключены к службе FTP. Используйте команду ls для вывода списка файлов и каталогов в текущем удаленном расположении.

ftp > ls

Вы должны увидеть список файлов. Ищите файл с именем flag.txt.

ftp> ls
200 PORT command successful. Consider using PASV.
150 Here comes the directory listing.
-rw-r--r--    1 0        0              42 Sep 15 11:30 flag.txt
226 Directory send OK.
ftp>

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

ftp > get flag.txt

Файл будет загружен, и вы увидите сообщения о статусе передачи.

ftp> get flag.txt
local: flag.txt remote: flag.txt
200 PORT command successful. Consider using PASV.
150 Opening BINARY mode data connection for flag.txt (42 bytes).
226 Transfer complete.
42 bytes received in 0.00 secs (17.6 kB/s)
ftp>

Теперь выйдите из сеанса FTP и просмотрите содержимое загруженного файла.

ftp > exit

Используйте команду cat для отображения содержимого загруженного файла flag.txt.

cat flag.txt

Терминал отобразит хеш-значение флага.

labex{d3adb33f_p0rt_sc4nn1ng_m4st3ry}

Поздравляем! Вы успешно перечислили, получили доступ и извлекли флаг из целевой системы. Скопируйте значение флага, чтобы завершить лабораторию.

Резюме

В этой лаборатории вы выполнили базовый рабочий процесс тестирования на проникновение, от разведки до получения доступа. Вы узнали, как:

  • Использовать ping для подтверждения того, что цель активна и доступна.
  • Применять nmap -sV для выполнения сканирования портов, определения открытых портов и служб, работающих на них.
  • Идентифицировать и подключиться к неправильно настроенной службе FTP с анонимным доступом.
  • Использовать распространенную ошибку конфигурации для получения доступа к файлам на удаленной системе.
  • Использовать команды FTP для вывода списка и загрузки файлов с удаленного сервера.

Это упражнение подчеркивает важность основ сетевой безопасности. Службы FTP должны быть правильно настроены с аутентификацией и контролем доступа. Анонимный доступ должен быть отключен, если он не требуется специально, а все службы передачи файлов должны использовать безопасные протоколы, такие как SFTP или FTPS. Понимая, как действуют злоумышленники, вы лучше подготовлены к защите своих собственных систем.