Skip to content
KitploitKITPLOIT
उपकरणब्लॉग
जमा करें
उपकरणब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

··फ़ीड·संपर्क·गोपनीयता·© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
CVE-2026-24061 — CVE-2026-24061 के लिए प्रूफ-ऑफ-कॉन्सेप्ट एक्सप्लॉइट, जो USER पर्यावरण चर में तर्क इंजेक्शन के माध्यम से telnetd प्रमाणीकरण बायपास है, जो बिना प्रमाणीकरण के रूट शेल एक्सेस की अनुमति देता है। | Kitploit
उपकरण/GitHubGitHub/przemytn/cve-2026-24061
भेद्यता विश्लेषणशोषणवेब सुरक्षानेटवर्क सुरक्षापेनिट्रेशन टेस्टिंगप्रमाणीकरण
GitHubprzemytn/cve-2026-24061

CVE-2026-24061

CVE-2026-24061 के लिए प्रूफ-ऑफ-कॉन्सेप्ट एक्सप्लॉइट, जो USER पर्यावरण चर में तर्क इंजेक्शन के माध्यम से telnetd प्रमाणीकरण बायपास है, जो बिना प्रमाणीकरण के रूट शेल एक्सेस की अनुमति देता है।

रिपॉजिटरी देखें
5 महीने पहलेअभी तक समीक्षित नहीं

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
साझा करें

CVE-2026-24061 - telnetd प्रमाणीकरण बाईपास

यह किस बारे में है

GNU InetUtils के telnetd में आर्गुमेंट इंजेक्शन। संस्करण 1.9.3 से 2.7। CVSS 9.8। CISA KEV में 26.01.2026 से, यानी खुलेआम शोषित किया जा रहा है।

पूरी तरकीब यह है कि telnetd क्लाइंट से NEW-ENVIRON (RFC 1572) के माध्यम से USER पर्यावरण चर का मान लेता है और उसे बिना किसी सत्यापन के सीधे login(1) कॉल में चिपका देता है। यदि क्लाइंट USER="-f root" भेजता है, तो telnetd निम्न चलाएगा:

root@kitploit:~
/usr/bin/login -p -h <host> -f root

login में -f फ्लैग का अर्थ है "इस उपयोगकर्ता को बिना पासवर्ड के लॉगिन करें"। रूट शेल, शून्य प्रमाणीकरण।

तंत्र

telnetd/telnetd.c में login कॉल का टेम्पलेट है:

root@kitploit:~
char *login_invocation = PATH_LOGIN " -p -h %h %?u{-f %u}{%U}";

%u telnet प्रमाणीकरण से उपयोगकर्ता है (विश्वसनीय)। %U क्लाइंट से env USER का कच्चा मान है (अविश्वसनीय)। जब प्रमाणीकरण सक्रिय नहीं होता है, तो %U का उपयोग किया जाता है।

चर विस्तार telnetd/utility.c में फ़ंक्शन _var_short_name में स्थित है:

root@kitploit:~
case 'U':
    return getenv("USER") ? xstrdup(getenv("USER")) : xstrdup("");

शून्य फ़िल्टरिंग। क्लाइंट USER में जो कुछ भी भेजता है वह सीधे login की कमांड लाइन में जाता है। केवल -f root ही काम नहीं करता, सैद्धांतिक रूप से कोई भी तर्क जो login स्वीकार करता है, इंजेक्ट किया जा सकता है।

बग 2015-03-19 (fa3245ac) के अपस्ट्रीम सुरक्षा-गार्ड कमिट में पेश किया गया था। विडंबना यह है कि इस कमिट का उद्देश्य USER चर की हैंडलिंग को सुधारना था। Debian के पास 2019 में इसके लिए पैच था (0028-telnetd-Scrub-USER-from-environment.patch), लेकिन Debian 10 में CVE-2020-10188 के फिक्स के दौरान पैच खो गया और बग वापस आ गया। इसलिए Debian 10+, Ubuntu और उनके व्युत्पन्न भी संवेदनशील हैं।

poc कैसे काम करता है

main.py एक न्यूनतम telnet क्लाइंट है जो:

  1. पोर्ट 23 पर कनेक्ट होता है
  2. नेगोशिएशन में NEW-ENVIRON स्वीकार करता है, बाकी विकल्प WONT
  3. SEND अनुरोध पर IAC SB NEW_ENVIRON IS VAR "USER" VALUE "-f root" IAC SE के साथ उत्तर देता है
  4. telnetd login -f root चलाता है, आपको शेल मिलता है
  5. आगे यह इंटरैक्टिव सत्र की तरह काम करता है, आउटपुट से IAC और ANSI एस्केप फ़िल्टर करता है
root@kitploit:~
क्लाइंट                                सर्वर
  |--- tcp connect ------------------->|
  |<-- IAC DO NEW_ENVIRON -------------|
  |--- IAC WILL NEW_ENVIRON ---------->|
  |<-- IAC SB NEW_ENVIRON SEND --------|
  |--- SB NEW_ENVIRON IS              |
  |    VAR "USER" VALUE "-f root"      |
  |    IAC SE ------------------------>|
  |    [telnetd: login -p -h x -f root]|
  |<-- root@host:~# ------------------|

उपयोग

root@kitploit:~
python3 main.py <host>
python3 main.py <host> -p <port>

Ctrl+C सत्र समाप्त करता है।

क्या न करें

उन सिस्टमों पर यह प्रयास न करें जिनमें inetutils-telnetd नहीं है। netkit का telnetd पैकेज अलग कोड है, यह इस विशिष्ट बग के लिए संवेदनशील नहीं है। यदि आप कनेक्ट करते हैं और सामान्य login प्रॉम्प्ट मिलता है शेल के बजाय, तो या तो सर्वर पर पैच लगा हुआ है, या यह inetutils telnetd नहीं है।

पेलोड को -f <अन्य_उपयोगकर्ता> में न बदलें यह उम्मीद करते हुए कि यह हर सिस्टम पर काम करेगा। कुछ डिस्ट्रीब्यूशन के login(1) में -f पर अतिरिक्त प्रतिबंध हैं। मानक Debian/Ubuntu पर -f root बिना किसी समस्या के काम करता है।

प्रभावित संस्करण

सॉफ्टवेयरसंस्करण
GNU InetUtils1.9.3 - 2.7
Debian 10+inetutils-telnetd (पैच तक)
Debian 112:2.0-1+deb11u3 में ठीक किया गया
Ubuntuinetutils-telnetd (पैच तक)

पैच

आधिकारिक फिक्स एक sanitize() फ़ंक्शन जोड़ता है जो - से शुरू होने वाले या शेल मेटाकैरेक्टर वाले मानों को अस्वीकार करता है। केवल USER पर नहीं, विस्तार में सभी चरों पर लागू किया गया।

root@kitploit:~
static char *
sanitize (const char *u)
{
  if (u && *u != '-' && !u[strcspn(u, "\t\n !\"#$&'()*;<=>?[\\^`{|}~")])
    return u;
  else
    return "";
}
  • fd702c0 - USER पैच
  • ccba9f7 - सभी चरों की सैनिटाइज़ेशन
टूल डाउनलोड करें