
LearnDash के लिए Uncanny Groups का शोषण करके Admin तक प्रमाणित विशेषाधिकार वृद्धि।
Uncanny Groups for LearnDash (uncanny-learndash-group) LearnDash LMS (sfwd-lms) के लिए एक तृतीय-पक्ष प्लगइन है। यह प्लगइन Group Leaders (कस्टम LearnDash भूमिका) को फ्रंटएंड से अपने स्वयं के LearnDash समूहों के उपयोगकर्ताओं को प्रबंधित करने देता है।
Group Leaders अपने समूहों में मौजूदा उपयोगकर्ताओं को जोड़ सकते हैं। मौजूदा उपयोगकर्ता स्वचालित रूप से जोड़े जाते हैं (यानी, उन्हें कोई निमंत्रण स्वीकार नहीं करना पड़ता)।
यदि साइट व्यवस्थापक ने “Allow group leaders to edit users” नामक प्लगइन सुविधा सक्षम की है, तो Group Leaders अपने समूह के सदस्यों (Users) के नाम और ईमेल पते भी बदल सकते हैं। यह सुविधा डिफ़ॉल्ट रूप से अक्षम है।
यदि “Allow group leaders to edit users” सेटिंग सक्षम है, तो एक Group Leader किसी Admin का ईमेल पता बदल सकता है और इस प्रकार admin पहुंच प्राप्त कर सकता है। जब CVE-2024-8350 के साथ संयोजन में शोषण किया जाता है, तो सभी Group Leaders “Allow group leaders to edit users” सेटिंग की स्थिति की परवाह किए बिना Admins बन सकते हैं।
प्लगइन नए समूहों में जोड़े जाने पर मौजूदा समूह सदस्यों (Users) की भूमिका की जाँच नहीं करता है। यदि “Allow group leaders to edit users” सक्षम है, तो एक Group Leader अपने समूह में किसी मौजूदा Admin को जोड़कर साइट पर admin विशेषाधिकार प्राप्त कर सकता है। समूह में मौजूदा Admin को जोड़ने के बाद, Group Leader केवल Admin का ईमेल पता बदल देता है और पासवर्ड रीसेट कर देता है।
Uncanny Owl ने 2024-08-26 को एक अपर्याप्त पैच (6.1.0.1) प्रकाशित किया। इस भेद्यता का उपयोग अब Admin बनने के लिए शोषण नहीं किया जा सकता था (CVE-2024-8350 के साथ संयोजन को छोड़कर), लेकिन इसका उपयोग अभी भी किसी भी Group Leader के Editor (या उससे निचले स्तर) बनने के लिए किया जा सकता था। “Allow group leaders to edit users” को सक्षम करना आवश्यक था।
Uncanny Owl ने 2024-09-11 को एक पूर्ण पैच (6.1.1) प्रकाशित किया।
REST API में लापता अनुमति जाँच के कारण एक Group Leader किसी User की संपर्क जानकारी बदल सकता है। जब CVE-2024-8349 के साथ संयोजन में शोषण किया जाता है, तो सभी Group Leaders स्वयं को admin विशेषाधिकार दे सकते हैं।
प्लगइन में “Allow group leaders to edit users” नामक एक साइट-व्यापी अनुमति सेटिंग है। सक्षम होने पर, Group Leaders अपने समूह के सदस्यों (Users) के नाम और ईमेल पते बदल सकते हैं। यह सुविधा डिफ़ॉल्ट रूप से अक्षम है।
हालाँकि, सुविधा को अक्षम छोड़ने से केवल सेटिंग को फ्रंटएंड पर दिखने से रोका जाता है। एक Group Leader अभी भी उन्हीं क्रियाओं के साथ POST अनुरोध भेज सकता है। चूँकि Group Leaders सभी उपयोगकर्ताओं को अपने समूहों में जोड़ सकते हैं, Group Leaders सभी Users के नाम और ईमेल पते भी बदल सकते हैं।
https://example.com/wp-json/ulgm_management/v1/edit_user/?
action=edit-user&group-id={Group ID}&edit-user-id={user ID}&first_name=Lorem&last_name=Ipsum&email={attacker’s email address}
(समूह ID और उपयोगकर्ता ID पृष्ठ सामग्री के भाग के रूप में पाए जा सकते हैं।)
जब CVE-2024-8349 के साथ संयोजन में शोषण किया जाता है, तो सभी Group Leaders स्वयं को admin विशेषाधिकार दे सकते हैं।
Uncanny Owl ने 2024-08-26 को एक अपर्याप्त पैच (6.1.0.1) प्रकाशित किया। भेद्यता को आंशिक रूप से पैच किया गया था, लेकिन फिर से, केवल फ्रंटएंड पर। “Allow group leaders to edit users” सेटिंग को सक्षम करना आवश्यक था।
यदि किसी Group Leader के समूह में एक Admin शामिल था, तो Group Leader Admin का ईमेल पता बदलने के लिए मोडल प्रदर्शित नहीं कर सकता था। हालाँकि, REST API अभी भी Group Leader को ऐसा करने देता था।
एक Group Leader अभी भी CVE-2024-8349 के साथ संयोजन में CVE-2024-8350 का शोषण करके Admin बन सकता था। Group Leader को पहले अपने समूह में एक Editor जोड़ना था और Editor के खाते पर कब्ज़ा करना था। Group Leader (अब एक Editor) फिर LearnDash के बैकएंड से एक Admin जोड़ सकता था और Uncanny Groups के REST API के माध्यम से Admin का ईमेल पता बदल सकता था।
Uncanny Owl ने 2024-09-11 को एक पूर्ण पैच (6.1.1) प्रकाशित किया।
Uncanny Owl ने भेद्यता रिपोर्टों को अच्छी तरह से संभाला और 90-दिवसीय जिम्मेदार प्रकटीकरण अवधि के भीतर भेद्यताओं का समाधान किया।
साइट व्यवस्थापकों को पता होना चाहिए कि Group A का एक Group Leader, User की सहमति के बिना Group B का हिस्सा रहे User को जोड़ सकता है। यह गोपनीयता और GDPR अनुपालन का मुद्दा हो सकता है, उदाहरण के लिए, यदि Group A और Group B दो अलग-अलग कंपनियाँ हैं। हालाँकि, यह भेद्यता नहीं है क्योंकि प्लगइन इसी तरह काम करने के लिए अभिप्रेत है।
मैंने 2021 में इस गोपनीयता मुद्दे को संबोधित करने के बारे में एक फीचर अनुरोध प्रस्तुत किया था। Uncanny Owl अब मेरे फीचर अनुरोध पर पुनर्विचार करेगा। इस बीच, प्रभावित साइटें ulgm_gdpr_is_group_leader_allowed फ़िल्टर और कस्टम फ्रंटएंड टेम्पलेट ओवरराइड का उपयोग करके अपने स्वयं के वर्कअराउंड लागू कर सकती हैं।