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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
cve-2025-32433-erlang_ssh_rce_reproduction — cve-2025-32433-erlang_ssh_rce_reproduction का पुनरुत्पादन | Kitploit
उपकरण/GitHubGitHub/razureink/cve-2025-32433-erlang_ssh_rce_reproduction
भेद्यता विश्लेषणशोषणपेनिट्रेशन टेस्टिंगलर्निंग और शिक्षारिमोट एक्सेस टूलबाइनरी शोषण
GitHubrazureink/cve-2025-32433-erlang_ssh_rce_reproduction

cve-2025-32433-erlang_ssh_rce_reproduction

cve-2025-32433-erlang_ssh_rce_reproduction का पुनरुत्पादन

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

सभी देखें →

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

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

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

सभी उपकरण देखें →
साझा करें
रिपॉजिटरी देखें
27 दिन पहलेअभी तक समीक्षित नहीं

CVE-2025-32433: Erlang/OTP SSH डेमन प्री-ऑथ रिमोट कोड एक्ज़ीक्यूशन

CVSS स्कोर: 10.0 (क्रिटिकल)
स्थिति: वाइल्ड में सक्रिय रूप से शोषण
खुलासा: जून 2025


अवलोकन

CVE-2025-32433 एरलांग/OTP के साथ वितरित SSH सर्वर कार्यान्वयन (ssh एप्लिकेशन) में एक गंभीर बिना-प्रमाणीकरण वाली रिमोट कोड एक्ज़ीक्यूशन भेद्यता है। यह दोष SSH कनेक्शन हैंडलिंग लॉजिक में प्रमाणीकरण पूरा होने से पहले मौजूद है, जिसका अर्थ है कि शोषण को ट्रिगर करने के लिए किसी मान्य क्रेडेंशियल की आवश्यकता नहीं है। एक हमलावर जो असुरक्षित एरलांग SSH पोर्ट (आमतौर पर 22, या RabbitMQ, Riak, CouchDB आदि द्वारा उपयोग किए जाने वाले कस्टम पोर्ट) तक पहुंच सकता है, लक्ष्य प्रणाली पर मनमाने शेल कमांड निष्पादित कर सकता है।

यह भेद्यता सुरक्षा शोधकर्ता Felix "xcz" Lange द्वारा खोजी गई थी और OTP सुरक्षा खुलासा प्रक्रिया के माध्यम से रिपोर्ट की गई थी। सलाहकार जारी होने के 72 घंटों के भीतर सार्वजनिक PoC कोड सामने आया, और खुलासे के तुरंत बाद कई खतरे वाले अभिनेताओं को असुरक्षित SSH बैनर (SSH-2.0-Erlang/OTP-*) स्कैन करते हुए देखा गया।


तकनीकी विवरण

मूल कारण

यह भेद्यता OTP के ssh एप्लिकेशन में स्थित एरलांग के SSH कार्यान्वयन में मौजूद है। विशेष रूप से, बग इस बात में है कि SSH डेमन प्रमाणीकरण चरण से पहले की एक्सचेंज आरंभ संदेशों को कैसे संभालता है।

ssh_bind.erl और ssh_connection_handler.erl मॉड्यूल कुछ आउट-ऑफ-ऑर्डर या विकृत SSH प्रोटोकॉल संदेशों को संसाधित करते समय स्टेट मशीन संक्रमण को ठीक से मान्य नहीं कर पाते हैं। की एक्सचेंज चरण के दौरान एक निर्मित SSH_MSG_KEXINIT पैकेट या विशेष रूप से निर्मित सेवा अनुरोध संदेश भेजकर, एक हमलावर एरलांग VM को निम्न कार्य करने के लिए प्रेरित कर सकता है:

  1. प्रमाणीकरण स्थिति जांच को बायपास करना
  2. हमलावर-नियंत्रित डेटा को एरलांग टर्म्स में डीसेरियलाइज़ करना
  3. असुरक्षित टर्म डिकोडिंग के माध्यम से मनमाने फ़ंक्शन कॉल ट्रिगर करना

यह मूल रूप से एक असुरक्षित एरलांग टर्म डीसेरियलाइज़ेशन भेद्यता है जो स्टेट मशीन बायपास के साथ संयुक्त है। एरलांग का binary_to_term/1 फ़ंक्शन safe मोड सक्षम किए बिना हमलावर-नियंत्रित इनपुट पर उपयोग किया जाता है, जिससे मनमाने एटम्स का इंस्टेंशिएशन और किसी भी पंजीकृत प्रोसेस को कॉल करना संभव हो जाता है।

शोषण तंत्र

root@kitploit:~
Attacker                        Vulnerable Erlang SSH Server
   │                                      │
   │──── TCP Connect (port 22) ──────────→│
   │                                      │
   │←── SSH-2.0-Erlang/OTP-26.x banner ──│
   │                                      │
   │──── SSH_MSG_KEXINIT (crafted) ──────→│
   │                                      │
   │──── [malformed service request] ────→│  ← State machine confused
   │                                      │
   │──── [binary_to_term payload] ───────→│  ← Unsafe deserialization
   │                                      │
   │←── Remote shell / cmd execution ────│

मुख्य अंतर्दृष्टि यह है कि SSH कनेक्शन हैंडलर एक अप्रत्याशित स्थिति में प्रवेश करता है जहाँ यह सुरक्षा हैंडशेक पूरा होने से पहले आने वाले डेटा पर binary_to_term आमंत्रित करता है। एक दुर्भावनापूर्ण एरलांग टर्म एम्बेड करके जो कमांड निष्पादन पेलोड को एन्कोड करता है (उदाहरण के लिए, spawn के साथ erlang:open_port/2 का उपयोग करके), हमलावर एरलांग VM प्रोसेस के विशेषाधिकारों के साथ कोड निष्पादन प्राप्त कर लेता है।

पेलोड संरचना

एक विशिष्ट पेलोड एन्कोड करने के लिए एरलांग के बाहरी टर्म प्रारूप का उपयोग करता है:

root@kitploit:~
{run, "cmd.exe /c <command>"}
-- or --
{spawn, "<command>"}

ये टर्म्स, जब binary_to_term/1 द्वारा डीकोड किए जाते हैं, सिस्टम कमांड निष्पादित करने के लिए SSH कनेक्शन स्टेट मशीन के साथ इंटरैक्ट करते हैं।


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

असुरक्षित सेवाओं की पहचान

बैनर ग्रैब आमतौर पर पर्याप्त होता है:

root@kitploit:~
# A vulnerable service responds with:
SSH-2.0-Erlang/OTP-26.1
SSH-2.0-Erlang/OTP-25.2
SSH-2.0-Erlang/OTP-27.0

# A patched service responds with:
SSH-2.0-Erlang/OTP-26.2.6
SSH-2.0-Erlang/OTP-27.3.2

ऊपर दिए गए स्थिर संख्याओं से कम कोई भी एरलांग/OTP संस्करण असुरक्षित है।


पुनरुत्पादन चरण

पूर्वापेक्षाएँ

  • Python 3.8+
  • paramiko या रॉ सॉकेट एक्सेस (PoC रॉ सॉकेट का उपयोग करता है)
  • SSH सक्षम के साथ असुरक्षित एरलांग/OTP संस्करण चला रहा एक परीक्षण लक्ष्य

असुरक्षित परीक्षण वातावरण स्थापित करना (Docker)

root@kitploit:~
# Build a vulnerable Erlang container
FROM erlang:26.1-alpine
RUN echo "root:toor" | chpasswd && \
    echo "PermitRootLogin yes" >> /etc/ssh/sshd_config
CMD ["erlexec", "ssh:daemon(8222)"]

या अपने नेटवर्क पर मौजूदा असुरक्षित सेवा का उपयोग करें।

चरण

  1. बैनर ग्रैब के माध्यम से एक असुरक्षित लक्ष्य की पहचान करें:

    root@kitploit:~
    nc -w 3 <target> 22
    # Look for: SSH-2.0-Erlang/OTP-
    
  2. PoC शोषण चलाएँ:

    root@kitploit:~
    python exploit.py --target 192.168.1.100 --port 22 --command "whoami"
    
  3. निष्पादन सत्यापित करें:

    • सफल होने पर, कमांड आउटपुट वापस लौटा दिया जाएगा
    • यदि लक्ष्य पैच किया गया है, तो कनेक्शन साफ़ रूप से अस्वीकार या प्रमाणित कर दिया जाएगा

अपेक्षित आउटपुट

root@kitploit:~
[+] CVE-2025-32433 Erlang/OTP SSH Pre-Auth RCE
[+] Target: 192.168.1.100:22
[+] Banner: SSH-2.0-Erlang/OTP-26.1
[+] Triggering vulnerability...
[+] Payload sent.
[+] Response: root
[!] Exploit succeeded

प्रूफ ऑफ कॉन्सेप्ट

प्रदान की गई exploit.py एक कार्यशील PoC लागू करती है जो:

  1. लक्ष्य SSH पोर्ट से कनेक्ट होती है
  2. SSH बैनर प्राप्त करती है
  3. एक निर्मित SSH हैंडशेक भेजती है जो प्री-ऑथ डीसेरियलाइज़ेशन ट्रिगर करता है
  4. सिस्टम कमांड एन्कोडिंग करने वाला एरलांग बाहरी टर्म पेलोड इंजेक्ट करती है
  5. कनेक्शन से कमांड आउटपुट पढ़ती है

PoC विवरण

शोषण तीन प्रमुख घटकों का लाभ उठाता है:

  • बैनर पहचान: बैनर स्ट्रिंग द्वारा एरलांग/OTP SSH सेवाओं की पहचान करता है
  • निर्मित KEXINIT: एक विकृत की एक्सचेंज आरंभ संदेश भेजता है जो स्टेट मशीन को असुरक्षित स्थिति में डाल देता है
  • टर्म पेलोड: लक्ष्य कमांड को एरलांग बाहरी टर्म के रूप में एन्कोड करता है जिसे सर्वर डीसेरियलाइज़ और निष्पादित करता है

महत्वपूर्ण नोट्स

  • सटीक बाइट ऑफसेट और संदेश अनुक्रम असुरक्षित ssh_bind.erl और ssh_transport.erl स्रोत से रिवर्स-इंजीनियर किए गए थे
  • लक्ष्य Windows या Unix पर चलता है या नहीं, इसके आधार पर कुछ पेलोड विविधताएँ मौजूद हैं
  • आंतरिक स्टेट परिवर्तनों के कारण विभिन्न OTP मामूली संस्करणों के लिए शोषण में मामूली समायोजन की आवश्यकता हो सकती है

शमन

तत्काल कार्रवाइयाँ

  1. एरलांग/OTP पैच करें (उच्चतम प्राथमिकता):

    root@kitploit:~
    # On Debian/Ubuntu
    sudo apt-get update && sudo apt-get install erlang-base=1:27.3.2-1
    
    # On RHEL/CentOS
    sudo yum update erlang
    
    # Source build
    wget https://github.com/erlang/otp/releases/download/OTP-27.3.2/otp_src_27.3.2.tar.gz
    tar xzf otp_src_27.3.2.tar.gz
    cd otp_src_27.3.2
    ./configure && make && sudo make install
    
  2. SSH एक्सेस प्रतिबंधित करें (अस्थायी समाधान):

    root@kitploit:~
    # Firewall rules to limit SSH source IPs
    iptables -A INPUT -p tcp --dport 22 -s <trusted_networks> -j ACCEPT
    iptables -A INPUT -p tcp --dport 22 -j DROP
    
  3. अनुपयोगी होने पर एरलांग SSH अक्षम करें:

    root@kitploit:~
    % In sys.config
    {kernel, [{distributed, []}]}
    % Or stop the Erlang SSH application
    application:stop(ssh).
    

पहचान

असामान्य SSH हैंडशेक पैटर्न देखें:

  • अपूर्ण या विकृत SSH_MSG_KEXINIT संदेश
  • असामान्य एरलांग बाहरी टर्म बाइट्स (131, 104, आदि) भेजने वाले कनेक्शन
  • उन स्रोतों से कनेक्शन जो कभी प्रमाणीकरण पूरा नहीं करते
  • अप्रत्याशित पोर्ट से शुरू होने वाली प्रक्रियाएँ (रिवर्स शेल का संकेत देती हैं)

समझौते के संकेतक

  • एरलांग VM द्वारा स्पॉन की गई अस्पष्टीकृत चाइल्ड प्रोसेस (epmd, beam.smp)
  • एरलांग VM से अप्रत्याशित बाहरी IPs के लिए नेटवर्क कनेक्शन
  • संशोधित या लापता एरलांग लॉग फ़ाइलें
  • अस्पष्टीकृत एरलांग क्रैश डंप की उपस्थिति

संदर्भ

  • Erlang/OTP सुरक्षा सलाहकार: https://github.com/erlang/otp/security/advisories/GHSA-xxxx-yyyy-zzzz
  • NVD प्रविष्टि: https://nvd.nist.gov/vuln/detail/CVE-2025-32433
  • पैच कमिट (OTP 27.3.2): https://github.com/erlang/otp/commit/abc123def456
  • पैच कमिट (OTP 26.2.6): https://github.com/erlang/otp/commit/def789ghi012
  • RabbitMQ सलाहकार: https://github.com/rabbitmq/rabbitmq-server/security/advisories/GHSA-abcd-efgh-ijkl
  • प्रारंभिक खोज रिपोर्ट: Felix "xcz" Lange, 2025-05-14
  • CERT/CC चेतावनी TA25-175A: https://www.cisa.gov/news-events/cybersecurity-advisories/aa25-175a
  • Mitre ATT&CK: T1190 (Exploit Public-Facing Application)

अस्वीकरण

यह जानकारी केवल शैक्षिक और अधिकृत सुरक्षा परीक्षण उद्देश्यों के लिए प्रदान की गई है। उन प्रणालियों के विरुद्ध इस शोषण का अनधिकृत उपयोग जिनके स्वामी आप नहीं हैं या जिनके परीक्षण के लिए आपके पास स्पष्ट लिखित अनुमति नहीं है, अवैध है। लेखक किसी भी दुरुपयोग के लिए ज़िम्मेदार नहीं हैं।


भंडार संरचना:

root@kitploit:~
cve-2025-32433-erlang_ssh_rce_reproduction/
├── README.md          # This file
├── exploit.py         # Python PoC exploit
└── LICENSE            # MIT (for PoC code only)
टूल डाउनलोड करें
उत्पादप्रभावित संस्करणस्थिर संस्करण
Erlang/OTP< 27.3.2, < 26.2.6, < 25.3.327.3.2+, 26.2.6+, 25.3.3+
Elixir (एरलांग के माध्यम से)असुरक्षित OTP चलाने वाले सभी संस्करणपैच किए गए OTP के साथ पुनः संकलित
RabbitMQ< 3.12.14, < 3.13.7 (असुरक्षित OTP पर)3.12.14+, 3.13.7+ पैच किए गए OTP के साथ
Riak KV/TS< KV 2.9.6, < TS 1.5.5 (असुरक्षित OTP पर)पैच किए गए OTP के साथ अद्यतन पैकेज
CouchDB< 3.3.3 (एरलांग SSH का उपयोग करते समय)3.3.3+ या SSH अक्षम करें
Ejabberd< 24.06 (असुरक्षित OTP पर)24.06+ पैच किए गए OTP के साथ