
MapPress Maps Pro < 2.53.9 - AJAX क्रियाओं में गलत पहुंच नियंत्रण के कारण दूरस्थ कोड निष्पादन (RCE)
MapPress Maps Pro < 2.53.9 - AJAX क्रियाओं में अनुचित पहुँच नियंत्रण के कारण दूरस्थ कोड निष्पादन (RCE)
इस प्लगइन का प्रो संस्करण कई AJAX क्रियाएँ पंजीकृत करता है जो ऐसे फ़ंक्शनों को कॉल करती हैं जिनमें क्षमता जाँच (capability checks) और नॉन्स जाँच (nonce checks) का अभाव है, विशेष रूप से mappress_template.php में 'ajax_get', 'ajax_save', और 'ajax_delete' फ़ंक्शन। इस प्रकार, न्यूनतम अनुमतियों वाला एक लॉग-इन हमलावर, जैसे कि एक सब्सक्राइबर, निम्नलिखित कार्य कर सकता है:
एक निष्पादन योग्य PHP फ़ाइल (संभावित बैकडोर सहित) अपलोड करना और wp-admin/admin-ajax.php पर $_POST अनुरोध भेजकर दूरस्थ कोड निष्पादन प्राप्त करना, जिसमें 'action' पैरामीटर 'mapp_tpl_save' पर सेट हो, 'name' पैरामीटर उस फ़ाइल के आधार नाम पर सेट हो जिसे वे बनाना चाहते हैं, और 'content' पैरामीटर निष्पादन योग्य PHP कोड पर सेट हो। यह फ़ाइल तब वर्तमान सक्रिय थीम की निर्देशिका में बनाई जाएगी और उसी से निष्पादित की जा सकेगी।
साइट पर किसी भी मौजूदा PHP फ़ाइल (जैसे wp-config.php) को हटाना, wp-admin/admin-ajax.php पर $_POST अनुरोध भेजकर जिसमें 'action' पैरामीटर 'mapp_tpl_delete' पर सेट हो, और 'name' पैरामीटर हटाने के लिए फ़ाइल के आधार नाम पर सेट हो। उदाहरण के लिए, wp-config.php को हटाने के लिए निर्देशिका ट्रैवर्सल हमले का उपयोग किया जा सकता है, और 'name' पैरामीटर को '../../../wp-config' पर सेट किया जा सकता है। इससे साइट रीसेट हो जाएगी, जिसके बाद हमलावर साइट पर पूर्ण नियंत्रण प्राप्त कर सकता है।
साइट पर किसी भी मौजूदा PHP फ़ाइल (जैसे wp-config.php) की सामग्री देखना, wp-admin/admin-ajax.php पर $_GET अनुरोध भेजकर जिसमें 'action' पैरामीटर 'mapp_tpl_get' पर सेट हो, और प्रकट करने के लिए फ़ाइल का 'name' पैरामीटर हो। उदाहरण के लिए, wp-config.php की सामग्री देखने के लिए निर्देशिका ट्रैवर्सल हमले का उपयोग किया जा सकता है, और 'name' पैरामीटर को '../../../../wp-config' पर सेट किया जा सकता है।
python3 exploit.py --url http://wordpress.lan --username user --password useruser1 --code "<?php phpinfo(); ?>"