
Apache Struts 2 RCE भेद्यता CVE-2017-5638 का शैक्षिक विश्लेषण, जिसमें शोषण विवरण, Equifax केस स्टडी और रोकथाम के उपाय शामिल हैं।
Apache Struts 2 एक ओपन सोर्स वेब एप्लिकेशन फ्रेमवर्क है जो Java EE वेब एप्लिकेशन विकसित करने के लिए है। यह स्ट्रट्स फ्रेमवर्क की दूसरी पीढ़ी है, जिसे पहली बार 10 अक्टूबर 2006 को जारी किया गया था। स्ट्रट्स फ्रेमवर्क को इस तरह डिज़ाइन किया गया है कि यह MVC आर्किटेक्चर का उपयोग करने वाले वेब एप्लिकेशन बनाने में सहायता करता है।
Apache Struts एक व्यापक रूप से उपयोग किया जाने वाला फ्रेमवर्क है। 2017 में Fortune 100 की 65 प्रतिशत से अधिक कंपनियों ने Apache Struts फ्रेमवर्क का उपयोग किया।
यह कमजोरी पहली बार NVD द्वारा 03/10/2017 को प्रकाशित की गई थी। इसे बेस स्कोर 10 का उच्चतम स्तर दिया गया है, जो क्रिटिकल है। उच्चतम कमजोरी स्कोर का मुख्य कारण यह है कि एप्लिकेशन को नेटवर्क पर न्यूनतम जटिलता के साथ शोषित किया जा सकता है, जिसका अखंडता और उपलब्धता पर उच्च प्रभाव पड़ता है।
इस कमजोरी ने हमलावर को HTTP हेडर में Object Graph Navigation Library (OGNL) अभिव्यक्तियाँ डालकर एप्लिकेशन पर RCE निष्पादित करने की अनुमति दी।
फ्रेमवर्क के कमजोर संस्करण Apache Struts-2 के 2.3.x (2.3.32 से पहले) और 2.5.x (2.5.10.1 से पहले) हैं।
.png)
कमजोर कोड Jakarta Multipart Parser में है। एक्सप्लॉइट करने के लिए, हमलावर ने LocalizedTextUtil.findText फ़ंक्शन में मौजूद कमजोरी का उपयोग किया, जिसने ${…} के भीतर दिए गए संदेश को Object Graph Navigation Library (OGNL) अभिव्यक्ति के रूप में व्याख्यायित किया। हमलावर फिर इन OGNL अभिव्यक्तियों का उपयोग कर सकता है, जो बदले में सिस्टम कमांड निष्पादित करती हैं और संवेदनशील फ़ाइलों की सामग्री जैसे कि /etc/password, /etc/shadow को उजागर कर सकती हैं, जिससे हमलावर को पूर्ण नियंत्रण मिल जाता है। एप्लिकेशन ने हमलावर द्वारा चलाए गए कमांडों का आउटपुट भी दिया, जिससे हमलावर को सुविधा हुई।
निम्नलिखित छवि OGNL अभिव्यक्ति के साथ HTTP अनुरोध दिखाती है, जिसने हमलावरों को एक्सप्लॉइट करने की अनुमति दी।

मार्च 2017 में, जब Apache Struts फ्रेमवर्क में कमजोरी CVE-2017-5638 पहली बार खोजी गई थी, तो Apache फाउंडेशन ने कमजोरी के लिए पैच जारी किया, लेकिन Equifax ने कमजोर सिस्टम पर पैच लागू नहीं किया, क्योंकि कमजोर सिस्टम का पता लगाने के लिए चलाए गए स्कैन काम नहीं कर पाए।
मई से जुलाई 2017 तक, हमलावर कई Equifax डेटाबेस तक पहुंच प्राप्त करने में सक्षम रहे, जिससे लाखों लोगों की जानकारी उजागर हुई। इस हमले ने 143 मिलियन लोगों को प्रभावित किया और 200,000 से अधिक लोगों की क्रेडिट कार्ड जानकारी भी उजागर की।
हमलावर 76 दिनों तक बिना किसी की नज़र में आए हमले जारी रखने में सक्षम रहे।
इस बड़े डेटा उल्लंघन के बाद कंपनी ने अपनी सुरक्षा को उन्नत करने के लिए $1.4 बिलियन खर्च किए।
नियमित अपडेट
एप्लिकेशन में उपयोग होने वाले सभी घटकों और फ्रेमवर्क को अपडेट करना
नियमित पेनेट्रेशन टेस्टिंग
कमजोरियों का पता लगाने के लिए बाउंटी प्रोग्राम