diff --git a/src/network-services-pentesting/pentesting-telnet.md b/src/network-services-pentesting/pentesting-telnet.md index c67651115..2f5367c94 100644 --- a/src/network-services-pentesting/pentesting-telnet.md +++ b/src/network-services-pentesting/pentesting-telnet.md @@ -23,9 +23,9 @@ nmap -n -sV -Pn --script "*telnet* and safe" -p 23 ``` The script `telnet-ntlm-info.nse` NTLM जानकारी (Windows संस्करण) प्राप्त करेगा। -From the [telnet RFC](https://datatracker.ietf.org/doc/html/rfc854): TELNET प्रोटोकॉल में विभिन्न "**options**" हैं जो स्वीकृत होंगे और उपयोगकर्ता और सर्वर को उनके TELNET कनेक्शन के लिए एक अधिक विस्तृत (या शायद बस अलग) सेट के नियमों का उपयोग करने के लिए सहमत होने की अनुमति देने के लिए "**DO, DON'T, WILL, WON'T**" संरचना के साथ उपयोग किया जा सकता है। ऐसे विकल्पों में वर्ण सेट, इको मोड आदि को बदलना शामिल हो सकता है। +[telnet RFC](https://datatracker.ietf.org/doc/html/rfc854) से: TELNET प्रोटोकॉल में विभिन्न "**विकल्प**" हैं जिन्हें स्वीकृत किया जाएगा और उपयोग किया जा सकता है "**DO, DON'T, WILL, WON'T**" संरचना के साथ ताकि उपयोगकर्ता और सर्वर एक अधिक जटिल (या शायद बस अलग) सेट के लिए सहमत हो सकें उनके TELNET कनेक्शन के लिए परंपराओं का। ऐसे विकल्पों में वर्ण सेट, इको मोड आदि को बदलना शामिल हो सकता है। -**मुझे पता है कि इन विकल्पों को गिनना संभव है लेकिन मुझे नहीं पता कैसे, इसलिए मुझे बताएं कि क्या आप जानते हैं।** +**मुझे पता है कि इन विकल्पों को सूचीबद्ध करना संभव है लेकिन मुझे नहीं पता कैसे, इसलिए मुझे बताएं कि क्या आप जानते हैं।** ### [Brute force](../generic-hacking/brute-force.md#telnet) @@ -67,4 +67,60 @@ 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' ``` -{{#include ../banners/hacktricks-training.md}} +### Recent Vulnerabilities (2022-2025) + +* **CVE-2024-45698 – D-Link Wi-Fi 6 routers (DIR-X4860)**: अंतर्निहित Telnet सेवा ने हार्ड-कोडेड क्रेडेंशियल्स को स्वीकार किया और इनपुट को साफ करने में विफल रही, जिससे पोर्ट 23 पर तैयार किए गए कमांड के माध्यम से रूट के रूप में प्रमाणीकरण रहित दूरस्थ RCE की अनुमति मिली। फर्मवेयर ≥ 1.04B05 में ठीक किया गया। +* **CVE-2023-40478 – NETGEAR RAX30**: Telnet CLI `passwd` कमांड में स्टैक-आधारित बफर ओवरफ्लो एक निकटवर्ती हमलावर को प्रमाणीकरण को बायपास करने और रूट के रूप में मनमाना कोड निष्पादित करने की अनुमति देता है। +* **CVE-2022-39028 – GNU inetutils telnetd**: एक दो-बाइट अनुक्रम (`0xff 0xf7` / `0xff 0xf8`) एक NULL-पॉइंटर डेरिफरेंस को ट्रिगर करता है जो `telnetd` को क्रैश कर सकता है, कई क्रैश के बाद एक स्थायी DoS का परिणाम होता है। + +कमजोरियों के वर्गीकरण के दौरान इन CVEs को ध्यान में रखें—यदि लक्ष्य एक अन-पैच किए गए फर्मवेयर या विरासती inetutils Telnet डेमॉन चला रहा है, तो आपके पास कोड-निष्पादन या एक विघटनकारी DoS के लिए एक सीधा रास्ता हो सकता है। + +### Sniffing Credentials & Man-in-the-Middle + +Telnet सब कुछ, जिसमें क्रेडेंशियल्स भी शामिल हैं, **स्पष्ट-टेक्स्ट** में प्रसारित करता है। उन्हें कैप्चर करने के दो त्वरित तरीके: +```bash +# 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`) को स्विच किए गए नेटवर्क पर पासवर्ड इकट्ठा करने के लिए समान स्निफ़िंग फ़िल्टर के साथ मिलाएं। + +### स्वचालित ब्रूट-फोर्स / पासवर्ड स्प्रेइंग +```bash +# Hydra (stop at first valid login) +hydra -L users.txt -P rockyou.txt -t 4 -f telnet:// + +# Ncrack (drop to interactive session on success) +ncrack -p 23 --user admin -P common-pass.txt --connection-limit 4 + +# 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` – कमजोर Solaris 9/10 Telnet (विकल्प ENCRYPT हैंडलिंग) के खिलाफ RCE। +* `exploit/linux/mips/netgear_telnetenable` – कई NETGEAR राउटर्स पर एक तैयार पैकेट के साथ टेलनेट सेवा सक्षम करता है। + +एक शेल प्राप्त करने के बाद याद रखें कि **TTYs आमतौर पर बेवकूफ होते हैं**; `python -c 'import pty;pty.spawn("/bin/bash")'` के साथ अपग्रेड करें या [HackTricks TTY tricks](/generic-hacking/reverse-shells/full-ttys.md) का उपयोग करें। + +### हार्डनिंग और पहचान (ब्लू टीम कोना) + +1. SSH को प्राथमिकता दें और टेलनेट सेवा को पूरी तरह से बंद करें। +2. यदि टेलनेट आवश्यक है, तो इसे केवल प्रबंधन VLANs से बाइंड करें, ACLs को लागू करें और डेमन को TCP wrappers (`/etc/hosts.allow`) के साथ लपेटें। +3. परिवहन एन्क्रिप्शन जोड़ने के लिए पुराने `telnetd` कार्यान्वयनों को `ssl-telnet` या `telnetd-ssl` के साथ बदलें, लेकिन **यह केवल डेटा-इन-ट्रांजिट की सुरक्षा करता है—पासवर्ड-गेसिंग तुच्छ रहता है**। +4. पोर्ट 23 पर आउटबाउंड ट्रैफ़िक की निगरानी करें; समझौते अक्सर टेलनेट के माध्यम से रिवर्स शेल उत्पन्न करते हैं ताकि सख्त-HTTP ईग्रेस फ़िल्टर को बायपास किया जा सके। + +## संदर्भ + +* D-Link Advisory – CVE-2024-45698 Critical Telnet RCE. +* NVD – CVE-2022-39028 inetutils `telnetd` DoS. + +{{#include /banners/hacktricks-training.md}}