Skip to content
KitploitKITPLOIT
उपकरणएक्सप्लॉइटब्लॉग
Log in
जमा करें
उपकरणएक्सप्लॉइटब्लॉग
जमा करें

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
CVE-2026-39842 — OpenRemote के Rules Engine में गंभीर रिमोट कोड निष्पादन भेद्यता प्रमाणित उपयोगकर्ताओं को `write:rules` भूमिका के साथ सर्वर पर रूट विशेषाधिकारों के साथ मनमाना कोड निष्पादित करने की अनुमति देती है। | Kitploit
उपकरण/GitHubGitHub/keraattin/cve-2026-39842
टोहीभेद्यता स्कैनरभेद्यता विश्लेषणशोषणवेब एप्लिकेशन शोषणपेनिट्रेशन टेस्टिंग
GitHubkeraattin/cve-2026-39842

CVE-2026-39842

OpenRemote के Rules Engine में गंभीर रिमोट कोड निष्पादन भेद्यता प्रमाणित उपयोगकर्ताओं को `write:rules` भूमिका के साथ सर्वर पर रूट विशेषाधिकारों के साथ मनमाना कोड निष्पादित करने की अनुमति देती है।

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

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

सभी देखें →

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

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

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

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

CVE-2026-39842: OpenRemote Rules Engine में Expression Injection RCE

CVE-2026-39842 CVSS 10.0 Critical CWE-94 CWE-917 OpenRemote Status FIXED

TL;DR

OpenRemote के Rules Engine में गंभीर रिमोट कोड एक्ज़ीक्यूशन भेद्यता, जो write:rules भूमिका वाले प्रमाणित उपयोगकर्ताओं को सर्वर पर रूट विशेषाधिकारों के साथ मनमाना कोड निष्पादित करने की अनुमति देती है।

  • CVSS स्कोर: 10.0 (क्रिटिकल)
  • CVSS वेक्टर: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H
  • प्रभावित संस्करण: OpenRemote <= 1.21.0
  • फिक्स्ड संस्करण: OpenRemote >= 1.22.0
  • प्रमाणीकरण आवश्यक: हाँ (write:rules भूमिका, गैर-सुपरयूज़र हो सकती है)
  • शोषण: रूट उपयोगकर्ता के रूप में RCE, फ़ाइल सिस्टम एक्सेस, पर्यावरण चर की चोरी, मल्टी-टेनेंट डेटा उल्लंघन
  • परामर्श: GHSA-7mqr-33rv-p3mp

विषय-सूची

  • त्वरित तथ्य
  • OpenRemote क्या है?
  • भेद्यता का गहन विश्लेषण
  • प्रभाव विश्लेषण
  • प्रभावित संस्करण
  • पहचान
  • समझौते के संकेतक
  • निवारण
  • संदर्भ
  • लेखक

त्वरित तथ्य

पहलूविवरण
CVE IDCVE-2026-39842
GHSA IDGHSA-7mqr-33rv-p3mp
भेद्यता प्रकारकोड इंजेक्शन / एक्सप्रेशन लैंग्वेज इंजेक्शन
CVSS स्कोर10.0 (क्रिटिकल)
CWECWE-94, CWE-917
उत्पादOpenRemote
प्रभावित संस्करण<= 1.21.0
फिक्स्ड संस्करण>= 1.22.0
प्रमाणीकरण आवश्यकहाँ
आवश्यक विशेषाधिकार स्तरwrite:rules भूमिका (गैर-सुपरयूज़र)
कमजोर एंडपॉइंटPOST /api/{realm}/rules/realm, POST /api/{realm}/rules/asset
RCE निष्पादन स्तरroot
शोषण क्षमताउच्च
जटिलतानिम्न
खोज तिथि2026

OpenRemote क्या है?

OpenRemote स्मार्ट इमारतों, शहरों और उद्योगों के निर्माण के लिए एक ओपन-सोर्स IoT प्लेटफ़ॉर्म है। यह इंटरनेट ऑफ थिंग्स पारिस्थितिकी तंत्र के लिए डिवाइस प्रबंधन, स्वचालन नियम, विश्लेषण और एकीकरण प्रदान करता है।

मुख्य विशेषताएं

  • कई प्रोटोकॉल (MQTT, Modbus, BACnet, HTTP) में डिवाइस और एसेट प्रबंधन
  • IoT स्वचालन और लॉजिक प्रोसेसिंग के लिए Rules Engine
  • रोल-आधारित एक्सेस कंट्रोल के साथ मल्टी-टेनेंट आर्किटेक्चर
  • रीयल-टाइम डैशबोर्ड और मॉनिटरिंग
  • कई स्क्रिप्ट भाषाओं का उपयोग करके कस्टम नियम निर्माण
  • एकीकरण और प्रबंधन के लिए REST API
  • क्लाउड और ऑन-प्रिमाइसेस डिप्लॉयमेंट विकल्प

OpenRemote आर्किटेक्चर```

                  Internet / Network
                         |
                ┌────────┴────────┐
                v                 v
        ┌──────────────┐  ┌──────────────┐
        | Web Browser  |  | Mobile App   |
        └──────────────┘  └──────────────┘
                |                 |
                └────────┬────────┘
                         v
                ┌──────────────────┐
                | OpenRemote API   |
                | (REST/WebSocket) |
                └────────┬─────────┘
                         v
                ┌──────────────────┐
                | Manager Service  |
                |  (Port 8080)     |
                └────────┬─────────┘
                         |
    ┌────────────────────┼────────────────────┐
    |                    |                    |
    v                    v                    v

┌──────────┐ ┌──────────┐ ┌──────────────┐ | Rules | | Asset | | Notification | | Engine | | Storage | | Service | └──────────┘ └──────────┘ └──────────────┘ | | v v ┌──────────────────────────────────┐ | PostgreSQL / Timescale Database | └──────────────────────────────────┘

## भेद्यता गहन विश्लेषण

### मूल कारण विश्लेषण

यह भेद्यता OpenRemote के Rules Engine में दो गंभीर खामियों से उत्पन्न होती है:

**खामी 1: बिना सैंडबॉक्स वाला Nashorn JavaScript इंजन**

Java Nashorn JavaScript इंजन का उपयोग उपयोगकर्ता-प्रदत्त नियम अभिव्यक्तियों का मूल्यांकन करने के लिए बिना किसी सैंडबॉक्सिंग, सुरक्षा प्रबंधक, या ClassFilter प्रतिबंधों के किया जाता है। यह हमलावरों को JavaScript संदर्भ से सीधे Java कक्षाओं तक पहुँचने की अनुमति देता है।

**खामी 2: अक्षम Groovy सैंडबॉक्स**

Groovy स्क्रिप्ट इंजन में कोड निष्पादन को रोकने के लिए एक GroovyDenyAllFilter पंजीकृत था, लेकिन यह फ़िल्टर पंजीकरण कोडबेस में टिप्पणी कर दिया गया था। केवल Groovy प्रवर्तन API स्तर पर मौजूद था (RulesResourceImpl.java:262), लेकिन JavaScript पर कोई प्रतिबंध नहीं थे।

### भेद्य कोड पथ```
RulesResource.java (lines 153-158)
    |
    > POST request handler for rule creation
    |
    v
RulesetDeployment.java (line 368)
    |
    > scriptEngine.eval(ruleExpression)
    |
    v
Nashorn Engine
    |
    > No ClassFilter / SecurityManager
    > Java.type() accessible
    > Runtime.exec() available

प्राधिकरण बाईपास

यह भेद्यता write:rules भूमिका वाले प्रमाणित उपयोगकर्ताओं को प्रभावित करती है। RulesResourceImpl.java:262 पर प्राधिकरण जांच केवल गैर-सुपरयूज़र के लिए Groovy को ब्लॉक करती है:``` if (!isUserSuperuser && isGroovy) { throw new UnauthorizedException("Groovy rules not allowed"); }

इसका अर्थ है:
- गैर-सुपरयूज़र JavaScript नियम बना सकते हैं (कोई ब्लॉक नहीं)
- गैर-सुपरयूज़र Groovy नियम नहीं बना सकते (ब्लॉक किया गया)
- JavaScript में कोई सैंडबॉक्सिंग नहीं है, इसलिए write:rules वाला कोई भी प्रमाणित उपयोगकर्ता शोषण संभव है

इसके अतिरिक्त, assetStorageService पर रिफ्लेक्शन के माध्यम से मल्टी-टेनेंट आइसोलेशन को बायपास किया जा सकता है, जिससे अन्य रियल्म्स का डेटा एक्सेस किया जा सकता है।

### अटैक फ्लो```
┌─────────────────────────────────────────────────────┐
| 1. Attacker authenticates with write:rules role     |
└─────────────────────────────────────────────────────┘
                         |
                         v
┌─────────────────────────────────────────────────────┐
| 2. POST /api/{realm}/rules/realm with JS expression|
└─────────────────────────────────────────────────────┘
                         |
                         v
┌─────────────────────────────────────────────────────┐
| 3. Expression passes validation (no checks)         |
└─────────────────────────────────────────────────────┘
                         |
                         v
┌─────────────────────────────────────────────────────┐
| 4. RulesetDeployment.java calls scriptEngine.eval() |
└─────────────────────────────────────────────────────┘
                         |
                         v
┌─────────────────────────────────────────────────────┐
| 5. Nashorn Engine executes JavaScript payload      |
└─────────────────────────────────────────────────────┘
                         |
                         v
┌─────────────────────────────────────────────────────┐
| 6. Java.type("java.lang.Runtime") access granted   |
└─────────────────────────────────────────────────────┘
                         |
                         v
┌─────────────────────────────────────────────────────┐
| 7. Arbitrary command execution as root              |
└─────────────────────────────────────────────────────┘

चरण-दर-चरण शोषण

चरण 1: write:rules क्रेडेंशियल प्राप्त करें

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