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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
cve-2026-9558-poc — CVE-2026-9558 (SSTI Mautic Theme) के लिए शोषणीयता PoC | Kitploit
उपकरण/GitHubGitHub/covepseng/cve-2026-9558-poc
विशेषाधिकार वृद्धिभेद्यता विश्लेषणशोषणवेब एप्लिकेशन शोषणपेनिट्रेशन टेस्टिंगलर्निंग और शिक्षापेलोड डेवलपमेंटलैब और अभ्यास
GitHubcovepseng/cve-2026-9558-poc

cve-2026-9558-poc

CVE-2026-9558 (SSTI Mautic Theme) के लिए शोषणीयता PoC

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

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

सभी देखें →

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

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

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

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

CVE-2026-9558 — Mautic थीम टेम्पलेट्स सर्वर-साइड टेम्पलेट इंजेक्शन (SSTI) से पूर्ण प्रशासक अधिग्रहण

विषय सूची

  • अवलोकन
  • प्रभावित संस्करण
  • मूल कारण
  • विश्लेषण
  • रिपॉजिटरी संरचना
  • आवश्यकताएँ
  • उपयोग
  • अपेक्षित आउटपुट
  • संदर्भ
  • अस्वीकरण

अवलोकन

CVE-2026-9558 Mautic के थीम इंजन में एक सर्वर-साइड टेम्पलेट इंजेक्शन (SSTI) कमजोरी है। थीम मैनेजर के माध्यम से अपलोड की गई थीमें ZIP आर्काइव होती हैं जिनमें Twig टेम्पलेट होते हैं, और प्रभावित संस्करणों में वे टेम्पलेट एप्लिकेशन के डिफ़ॉल्ट Twig Environment द्वारा बिना किसी SandboxExtension नीति के रेंडर किए जाते हैं।

क्योंकि Twig map, filter, और reduce जैसे फ़िल्टर के माध्यम से मनमानी PHP callables को आमंत्रित कर सकता है, थीम अपलोड अनुमति वाला एक प्रमाणित उपयोगकर्ता ऐसी थीम स्थापित कर सकता है जिसका टेम्पलेट रेंडर होते ही एक मनमाना सिस्टम कमांड चलाता है — जो स्वचालित रूप से तब होता है जब कोई उपयोगकर्ता पहली बार उस थीम के विरुद्ध ईमेल या लैंडिंग पेज बिल्डर खोलता है।

{{ ["id"] | map("system") | join }}

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

प्रभावित श्रेणीफिक्स्ड इन
>= 1.3.0, < 4.4.134.4.13 (4.4.20 via ELTS)
>= 5.0.0, < 5.2.115.2.11
>= 6.0.0, < 6.0.96.0.9
>= 7.0.0, < 7.1.27.1.2

यह लैब 7.1.1 को लक्षित करता है, जो फिक्स से पहले का अंतिम रिलीज़ है।


मूल कारण

Mautic के डेवलपर दस्तावेज़ीकरण में कहा गया है कि थीम टेम्पलेट एक प्रतिबंधित Twig सैंडबॉक्स में रेंडर किए जाते हैं:

Mautic उपयोगकर्ता-अपलोड किए गए थीम टेम्पलेट को एक प्रतिबंधित Twig सैंडबॉक्स वातावरण में रेंडर करता है। सैंडबॉक्स कुछ कार्यों और फ़िल्टर को अवरुद्ध करता है जो रिमोट कोड निष्पादन, डेटा रिसाव, या फ़ाइलसिस्टम जांच को सक्षम कर सकते हैं।

प्रभावित संस्करणों में, वह सैंडबॉक्स नीति मौजूद नहीं है। फिक्स (7.1.2) में ThemeSandboxPolicy.php शामिल किया गया है, जो एक डिनीलिस्ट-आधारित SecurityPolicyInterface कार्यान्वयन है जो map, filter, और reduce फ़िल्टर को और source() (मनमानी फ़ाइल पठन) और configGetParameter() (DB क्रेडेंशियल्स और एप्लिकेशन सीक्रेट कुंजी लीक) सहित कार्यों के एक सेट को अवरुद्ध करता है। फिक्स की अपनी इनलाइन टिप्पणी इस PoC में उपयोग किए गए सटीक पेलोड आकार का दस्तावेज़ीकरण करती है:

private const DENIED_FILTERS = [
    'map',    // {{ ['id']|map('system')|join }} -> RCE
    'reduce',
    'filter',
];

इस नीति से पहले, किसी भी थीम रेंडरिंग पथ पर ऐसा कोई प्रतिबंध मौजूद नहीं था।


विश्लेषण

इस श्रृंखला को एडवाइज़री के CVSS वेक्टर में PR:L शर्त को मिलाने के लिए केवल थीम्स (बनाएं/संपादित करें) और ईमेल (बनाएं/संपादित करें) अनुमति समूहों वाले — प्रशासक नहीं — निम्न-विशेषाधिकार वाले खाते के विरुद्ध एंड-टू-एंड मान्य किया गया।

  1. कमांड निष्पादन — एक संशोधित थीम अपलोड करना और ईमेल बिल्डर खोलना थीम की .twig फ़ाइल में एम्बेडेड system() कॉल को निष्पादित करता है।
  2. क्रेडेंशियल चोरी — वही आदिम Mautic की स्वयं की config/local.php पढ़ता है, जिससे डेटाबेस क्रेडेंशियल्स और एप्लिकेशन secret_key सादे पाठ में उजागर होते हैं।
  3. विशेषाधिकार वृद्धि — चुराए गए डेटाबेस क्रेडेंशियल्स का उपयोग SSTI पेलोड के भीतर से एक सीधा PDO कनेक्शन खोलने और निम्न-विशेषाधिकार वाले खाते को role_id 1 (प्रशासक) तक बढ़ाने के लिए किया जाता है, जो Mautic के एप्लिकेशन-स्तरीय अनुमति जांचों को पूरी तरह से बायपास करता है।
uid=33(www-data) gid=33(www-data) groups=33(www-data)
'db_host' => 'mautic-db',
'db_user' => 'mautic',
'db_password' => 'mauticpass',
'secret_key' => 'a15d98da823d751f4a0a5219123f4afbd90eb254074b1cea07518a3c0db70bcd',
rows_updated=1
confirm: 2|priv-esc|1

प्रयोगात्मक रूप से पुष्टि की गई पूर्व शर्तें

एडवाइज़री PR:L बताती है। यह लैब व्यवहार में विशिष्ट निम्न-विशेषाधिकार पूर्व शर्त की पुष्टि करती है: रेंडर ट्रिगर तक पहुंचने के लिए थीम अपलोड अनुमति और ईमेल निर्माण अनुमति दोनों की आवश्यकता होती है — न कि केवल एक सामान्य निम्न अनुमति। आधिकारिक फिक्स के अलावा कोई भी वर्कअराउंड इसे प्रतिबंधित नहीं करता; एकमात्र दस्तावेज़ीकृत उपाय core:themes:create को विश्वसनीय प्रशासकों तक सीमित करना है।


रिपॉजिटरी संरचना

cve-2026-9558-poc/
├── podman-compose.yml       # MariaDB + Mautic 7.1.1-apache, अलग ब्रिज नेटवर्क
├── Dockerfile.mautic        # आधिकारिक इमेज को कमजोर रिलीज़ पर पिन करता है
├── install.sh                # गैर-संवादात्मक mautic:install बूटस्ट्रैप
└── sparse/
    ├── config.json           # दुर्भावनापूर्ण थीम मेनिफेस्ट
    ├── sparse.zip            # अपलोड के लिए तैयार थीम
    └── html/
        ├── email.html.twig   # SSTI पेलोड टेम्पलेट। फ़ाइल के अंत में देखें जहां मनमानी कमांड इंजेक्ट करने के लिए प्लेसहोल्डर है।
        ├── ...               # अन्य .twig फ़ाइलें
        └── .../              # अन्य निर्देशिकाएँ (जैसे css)

आवश्यकताएँ

उपकरणसंस्करणटिप्पणियाँ
Podman≥ 4.0podman-compose आवश्यक
curlकोई भीinstall.sh द्वारा तत्परता जांचने के लिए उपयोग किया जाता है

इस PoC में शोषण Mautic वेब UI (थीम मैनेजर अपलोड → ईमेल बिल्डर) के माध्यम से मैन्युअल रूप से किया जाता है, जो वास्तविक हमलावर वर्कफ़्लो से मेल खाता है: थीम अपलोड एक फ़ाइल ऑपरेशन है, न कि कोई API कॉल जो विश्लेषण के इस चरण के लिए स्वचालित करने लायक हो।


उपयोग

1. लैब बनाएं और प्रारंभ करें

podman-compose up -d
./install.sh

install.sh एप्लिकेशन कंटेनर के कनेक्शन स्वीकार करने की प्रतीक्षा करता है, फिर पहले प्रशासक खाते को बूटस्ट्रैप करने के लिए गैर-संवादात्मक रूप से mautic:install चलाता है।

2. निम्न-विशेषाधिकार खाता बनाएं

UI से, केवल थीम्स (बनाएं/संपादित करें) और ईमेल (बनाएं/संपादित करें) सक्षम के साथ एक कस्टम भूमिका बनाएं, और उस भूमिका को सौंपा गया एक उपयोगकर्ता बनाएं। यह प्रशासक के रूप में परीक्षण करने के बजाय PR:L पूर्व शर्त को पुन: उत्पन्न करता है।

3. दुर्भावनापूर्ण थीम अपलोड करें

निम्न-विशेषाधिकार उपयोगकर्ता के रूप में लॉग इन करें। थीम्स → अपलोड से, sparse/config.json और sparse/html/page.html.twig (या पेलोड लाइन जोड़ी गई किसी निर्मित थीम की संशोधित प्रतिलिपि) से निर्मित एक ZIP अपलोड करें।

4. रेंडर ट्रिगर करें

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

5. सफाई

podman-compose down -v

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

uid=33(www-data) gid=33(www-data) groups=33(www-data)

संदर्भ

संसाधनलिंक
एडवाइज़रीGHSA-9fx4-7cmj-47vg
फिक्स (सैंडबॉक्स नीति)ThemeSandboxPolicy.php
कमजोर रिपॉजिटरीmautic/mautic
पूर्ण विश्लेषण — ब्लॉग पोस्टreturn-zero.dev/posts/cve-2026-9558

अस्वीकरण

यह रिपॉजिटरी केवल शैक्षिक उद्देश्यों और स्थानीय शोषण विश्लेषण के लिए है। सभी परीक्षण एक स्व-होस्टेड कंटेनर वातावरण के विरुद्ध किए गए। इस PoC को उन सिस्टमों के विरुद्ध न चलाएं जिनके आप स्वामी नहीं हैं या जिनके परीक्षण के लिए आपके पास स्पष्ट लिखित प्राधिकरण नहीं है।

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