Go लाइब्रेरी net/http में क्रिटिकल भेद्यता CVE-2024-XXXX: लाखों सर्वरों के लिए खतरा

शुरुआती लोगों के लिए ऑनलाइन Python प्रशिक्षक

Python आसानी से सीखें बिना सिद्धांत के बोझ के। स्वचालित जांच के साथ व्यावहारिक कार्य हल करें और ब्राउज़र में सीधे कोड लिखें।

पाठ्यक्रम शुरू करें

लोकप्रिय Go (Golang) लाइब्रेरी net/http में क्रिटिकल भेद्यता



Go (Golang) पर डेवलपर समुदाय मानक लाइब्रेरी net/http में एक क्रिटिकल भेद्यता की खोज से चिंतित है। यह लाइब्रेरी Go पर वेब सर्वर, HTTP क्लाइंट और माइक्रोसर्विसेज बनाने का आधार है, जिसका अर्थ है कि यह समस्या दुनिया भर के लाखों अनुप्रयोगों को प्रभावित करती है।



इस भेद्यता को पहचानकर्ता CVE-2024-XXXX दिया गया है, जिसे सुरक्षा शोधकर्ताओं द्वारा खोजा गया और CVSS पैमाने पर 10 में से 9.8 अंक के साथ क्रिटिकल के रूप में वर्गीकृत किया गया। यह समस्या HTTP/2 स्ट्रीम के गलत प्रसंस्करण से संबंधित है, जिससे मेमोरी लीक (memory leak) हो सकता है और अंततः सेवा से इनकार (DoS) हो सकता है।



भेद्यता कैसे काम करती है?



समस्या का सार यह है कि कुछ प्रकार के HTTP/2 अनुरोधों को संसाधित करते समय, net/http लाइब्रेरी आंतरिक बफ़र्स के लिए आवंटित मेमोरी को मुक्त नहीं करती है। एक हमलावर विशेष रूप से तैयार किए गए अनुरोधों की एक श्रृंखला भेज सकता है, जिससे सर्वर पर मेमोरी की खपत अनियंत्रित रूप से बढ़ जाएगी। जब मेमोरी समाप्त हो जाती है, तो सर्वर क्रैश हो जाता है या वैध उपयोगकर्ताओं के लिए अनुपलब्ध हो जाता है।



यह ध्यान रखना महत्वपूर्ण है कि भेद्यता के शोषण के लिए प्रमाणीकरण की आवश्यकता नहीं है - हमला दूरस्थ रूप से किया जा सकता है।



कौन से संस्करण खतरे में हैं?



यह समस्या Go के सभी संस्करणों को प्रभावित करती है, जो 1.20 से शुरू होकर 1.22.2 (सम्मिलित) तक है।



  • Go 1.20.x — सभी उप-संस्करण असुरक्षित हैं।
  • Go 1.21.x — सभी उप-संस्करण असुरक्षित हैं।
  • Go 1.22.0 — 1.22.2 — असुरक्षित हैं।
  • Go 1.22.3 और उससे ऊपर — ठीक कर दिए गए हैं।


डेवलपर्स को क्या करना चाहिए?



Go टीम ने पहले ही संस्करणों 1.22.3 और 1.21.10 में पैच जारी कर दिए हैं। डेवलपर्स को दृढ़ता से सलाह दी जाती है:



  • तुरंत अपडेट करें Go कंपाइलर को नवीनतम स्थिर संस्करण (1.22.3 या 1.21.10+) में।
  • पुनः बनाएँ अपने अनुप्रयोगों की सभी बाइनरी फ़ाइलों को कंपाइलर के नए संस्करण के साथ।
  • जाँचें CI/CD पाइपलाइनों के कॉन्फ़िगरेशन को - सुनिश्चित करें कि बिल्ड Go के वर्तमान संस्करण का उपयोग करता है।
  • परीक्षण करें अपडेट के बाद अनुप्रयोगों का रिग्रेशन के लिए।


पारिस्थितिकी तंत्र पर प्रभाव



यह भेद्यता विशेष रूप से Go में लिखे गए उच्च-लोड वाले माइक्रोसर्विसेज, API-गेटवे और प्रॉक्सी सर्वरों के लिए खतरनाक है। हमला हमलावर की ओर से न्यूनतम संसाधनों के साथ किया जा सकता है, जो इसे क्लाउड इंफ्रास्ट्रक्चर पर बड़े पैमाने पर हमलों के लिए आकर्षक बनाता है।



हम यह भी सलाह देते हैं कि यदि तुरंत अपडेट करना संभव नहीं है, तो महत्वपूर्ण सर्वरों पर HTTP/2 समर्थन को अस्थायी रूप से अक्षम करें। यह Server.TLSNextProto सेटिंग के माध्यम से किया जा सकता है।



Go की आधिकारिक वेबसाइट और GitHub रिपॉजिटरी पर अपडेट पर नज़र रखें। आपकी परियोजनाओं की सुरक्षा आपके हाथों में है!

अनुशंसित लाइब्रेरीज़