23 - Pentesting Telnet
tip
Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Вивчайте та практикуйте Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Підтримайте HackTricks
- Перевірте плани підписки!
- Приєднуйтесь до 💬 групи Discord або групи telegram або слідкуйте за нами в Twitter 🐦 @hacktricks_live.
- Діліться хакерськими трюками, надсилаючи PR до HackTricks та HackTricks Cloud репозиторіїв на github.
Основна інформація
Telnet - це мережевий протокол, який надає користувачам незахищений спосіб доступу до комп'ютера через мережу.
Порт за замовчуванням: 23
23/tcp open telnet
Перерахунок
Отримання банера
nc -vn <IP> 23
Всі цікаві перерахунки можна виконати за допомогою nmap:
nmap -n -sV -Pn --script "*telnet* and safe" -p 23 <IP>
Скрипт telnet-ntlm-info.nse
отримає інформацію NTLM (версії Windows).
З telnet RFC: У протоколі TELNET є різні "options", які будуть санкціоновані і можуть використовуватися зі структурою "DO, DON'T, WILL, WON'T", щоб дозволити користувачу та серверу погодитися використовувати більш складний (або, можливо, просто інший) набір конвенцій для їхнього з'єднання TELNET. Такі опції можуть включати зміну набору символів, режиму еха тощо.
Я знаю, що можливо перерахувати ці опції, але не знаю як, тому дайте знати, якщо знаєте як.
Brute force
Config file
/etc/inetd.conf
/etc/xinetd.d/telnet
/etc/xinetd.d/stelnet
HackTricks Автоматичні Команди
Protocol_Name: Telnet #Protocol Abbreviation if there is one.
Port_Number: 23 #Comma separated if there is more than one.
Protocol_Description: Telnet #Protocol Abbreviation Spelled out
Entry_1:
Name: Notes
Description: Notes for t=Telnet
Note: |
wireshark to hear creds being passed
tcp.port == 23 and ip.addr != myip
https://book.hacktricks.wiki/en/network-services-pentesting/pentesting-telnet.html
Entry_2:
Name: Banner Grab
Description: Grab Telnet Banner
Command: nc -vn {IP} 23
Entry_3:
Name: Nmap with scripts
Description: Run nmap scripts for telnet
Command: nmap -n -sV -Pn --script "*telnet*" -p 23 {IP}
Entry_4:
Name: consoleless mfs enumeration
Description: Telnet enumeration without the need to run msfconsole
Note: sourced from https://github.com/carlospolop/legion
Command: msfconsole -q -x 'use auxiliary/scanner/telnet/telnet_version; set RHOSTS {IP}; set RPORT 23; run; exit' && msfconsole -q -x 'use auxiliary/scanner/telnet/brocade_enable_login; set RHOSTS {IP}; set RPORT 23; run; exit' && msfconsole -q -x 'use auxiliary/scanner/telnet/telnet_encrypt_overflow; set RHOSTS {IP}; set RPORT 23; run; exit' && msfconsole -q -x 'use auxiliary/scanner/telnet/telnet_ruggedcom; set RHOSTS {IP}; set RPORT 23; run; exit'
Останні вразливості (2022-2025)
- CVE-2024-45698 – D-Link Wi-Fi 6 маршрутизатори (DIR-X4860): Вбудована служба Telnet приймала жорстко закодовані облікові дані та не очищала введення, що дозволяло неавтентифіковане віддалене RCE як root через спеціально підготовлені команди на порту 23. Виправлено у прошивці ≥ 1.04B05.
- CVE-2023-40478 – NETGEAR RAX30: Переповнення буфера на основі стеку в команді Telnet CLI
passwd
дозволяє сусідньому зловмиснику обійти автентифікацію та виконати довільний код як root. - CVE-2022-39028 – GNU inetutils telnetd: Двобайтовий рядок (
0xff 0xf7
/0xff 0xf8
) викликає розіменування NULL-вказівника, що може призвести до збоюtelnetd
, в результаті чого виникає постійний DoS після кількох збоїв.
Тримайте ці CVE на увазі під час триажу вразливостей — якщо ціль працює на непатченої прошивці або застарілому демоні inetutils Telnet, ви можете мати простий шлях до виконання коду або деструктивного DoS.
Перехоплення облікових даних та атака "людина посередині"
Telnet передає все, включаючи облікові дані, у відкритому тексті. Два швидких способи їх перехоплення:
# Live capture with tcpdump (print ASCII)
sudo tcpdump -i eth0 -A 'tcp port 23 and not src host $(hostname -I | cut -d" " -f1)'
# Wireshark display filter
tcp.port == 23 && (telnet.data || telnet.option)
Для активного MITM поєднайте ARP спуфінг (наприклад, arpspoof
/ettercap
) з тими ж фільтрами для перехоплення паролів у комутованих мережах.
Автоматизований брутфорс / Спрайінг паролів
# Hydra (stop at first valid login)
hydra -L users.txt -P rockyou.txt -t 4 -f telnet://<IP>
# Ncrack (drop to interactive session on success)
ncrack -p 23 --user admin -P common-pass.txt --connection-limit 4 <IP>
# Medusa (parallel hosts)
medusa -M telnet -h targets.txt -U users.txt -P passwords.txt -t 6 -f
Більшість IoT ботнетів (варіанти Mirai) все ще сканують порт 23 з невеликими словниками за замовчуванням—відображення цієї логіки може швидко виявити слабкі пристрої.
Експлуатація та пост-експлуатація
Metasploit має кілька корисних модулів:
auxiliary/scanner/telnet/telnet_version
– отримання банера та перерахування опцій.auxiliary/scanner/telnet/brute_telnet
– багатопотоковий брутфорс.auxiliary/scanner/telnet/telnet_encrypt_overflow
– RCE проти вразливого Solaris 9/10 Telnet (обробка опції ENCRYPT).exploit/linux/mips/netgear_telnetenable
– активує службу telnet за допомогою спеціально підготовленого пакета на багатьох маршрутизаторах NETGEAR.
Після отримання оболонки пам'ятайте, що TTY зазвичай тупі; оновіть за допомогою python -c 'import pty;pty.spawn("/bin/bash")'
або використовуйте HackTricks TTY tricks.
Укріплення та виявлення (куток синьої команди)
- Вибирайте SSH і повністю вимкніть службу Telnet.
- Якщо Telnet необхідний, прив'яжіть його лише до VLAN для управління, забезпечте ACL і обгорніть демон за допомогою TCP обгорток (
/etc/hosts.allow
). - Замініть застарілі реалізації
telnetd
наssl-telnet
абоtelnetd-ssl
, щоб додати шифрування транспорту, але це лише захищає дані в русі—вгадування паролів залишається тривіальним. - Моніторте вихідний трафік на порт 23; компрометації часто запускають зворотні оболонки через Telnet, щоб обійти суворі фільтри виходу HTTP.
Посилання
- D-Link Advisory – CVE-2024-45698 Критичний Telnet RCE.
- NVD – CVE-2022-39028 inetutils
telnetd
DoS.
tip
Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Вивчайте та практикуйте Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Підтримайте HackTricks
- Перевірте плани підписки!
- Приєднуйтесь до 💬 групи Discord або групи telegram або слідкуйте за нами в Twitter 🐦 @hacktricks_live.
- Діліться хакерськими трюками, надсилаючи PR до HackTricks та HackTricks Cloud репозиторіїв на github.