
RealPlayer के लिए प्रूफ-ऑफ-कॉन्सेप्ट एक्सप्लॉइट जो Import() मेथड के माध्यम से मनमानी फ़ाइल डाउनलोड और डायरेक्ट्री ट्रैवर्सल के ज़रिए रिमोट कोड एक्ज़ीक्यूशन की ओर ले जाता है।
Real Player 'external::Import()' मनमाना फ़ाइल डाउनलोड, डायरेक्टरी ट्रैवर्सल भेद्यताएँ रिमोट कोड निष्पादन की ओर ले जाती हैं
वीडियो डेमो: https://youtu.be/CONlijEgDLc
Real Player Microsoft Internet Explorer की कार्यक्षमता का उपयोग करता है और एक विशेष माध्यम से गुणों और विधियों को उजागर करता है जो अनुप्रयोग-विशिष्ट है:
'external' ऑब्जेक्ट और यह कई कस्टम विधियों और गुणों को उजागर करता है।
'Import()' विधि को 'Copy to My Music' पैरामीटर के संबंध में असुरक्षित तरीके से संभाला जाता है, जो मनमाने फ़ाइल प्रकारों को डाउनलोड करने की अनुमति देता है। यह असुरक्षित हो सकता है क्योंकि केवल ऑडियो/इमेज/वीडियो प्रकारों को उपयोगकर्ता की डिस्क पर डाउनलोड करने की अनुमति दी जानी चाहिए। इसके अतिरिक्त, यह फ़ाइल पथों को ठीक से सैनिटाइज़ नहीं करता है। जिससे मनमाने स्थानों पर मनमानी फ़ाइलें रखी जा सकती हैं। भले ही यह डाउनलोड की गई फ़ाइल को प्रस्तुत न कर पाने के कारण एक त्रुटि प्रदर्शित करता है, फ़ाइल तब तक बनी रहती है जब तक उपयोगकर्ता, डायलॉग बॉक्स बंद नहीं करता। इसके अतिरिक्त, नई विंडो खोलते समय, Real Player एक पुरानी, अप्रचलित IE लाइब्रेरी (shdoclc.dll) की तलाश करता है, जिसका दुरुपयोग कोड को स्वचालित रूप से चलाने के लिए भी किया जा सकता है, बिना रीबूट तक प्रतीक्षा किए (यह तब सत्य होता है जब फ़ाइल 'startup' फ़ोल्डर में रखी जाती है)।
हमलावर को कॉपी/डाउनलोड की जाने वाली फ़ाइलों को SMB या WebDav शेयर पर होस्ट करना होता है। निर्देशिका 'appdata' को शेयर के रूट में रखा जाना चाहिए।
इसके अलावा, 'external.PreloadURL()' में एक DOS स्थिति मदद करती है ताकि Real Player द्वारा फ़ाइलें हटाई न जाएँ।
PoC 'shdoclc.dll' (प्रदर्शन उद्देश्यों के लिए 'DllMain()' पर 'cmd.exe' चलाने के लिए सरल कोड है) को उपयोगकर्ता के 'windowsapps' फ़ोल्डर में और 'write.exe' को 'startup' फ़ोल्डर में ड्रॉप करेगा, इसलिए यह सार्वभौमिक रूप से काम करता है (कम से कम XP से लेकर 11 तक किसी भी Windows संस्करण पर)।
RP ver. 16.00.282, 16.0.3.51, Cloud 17.0.9.17, v.20.0.7.309 पर परीक्षण किया गया।