Go लाइब्रेरी net/http में गंभीर कमजोरी: लाखों सर्वरों के लिए खतरा

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

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

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

Go (Golang) मानक पुस्तकालय में गंभीर भेद्यता पाई गई: लाखों सर्वरों के लिए खतरा



Go (Golang) डेवलपर समुदाय मानक पुस्तकालय net/http में एक गंभीर भेद्यता की खोज की खबर से हिल गया है। इस भेद्यता को पहचानकर्ता CVE-2023-XXXX (उदाहरण के लिए बदला गया) प्राप्त हुआ है, यह HTTP अनुरोधों के प्रसंस्करण को प्रभावित करती है और गंभीर परिणाम दे सकती है - सुरक्षा नीतियों को दरकिनार करने से लेकर सर्वरों से पूरी तरह समझौता करने तक।



समस्या HTTP Request Smuggling ("अनुरोध तस्करी") प्रकार के हमलों की श्रेणी से संबंधित है। यह Go के HTTP अनुरोध पार्सर में Transfer-Encoding और Content-Length हेडर के गलत प्रसंस्करण के कारण उत्पन्न होती है। एक हमलावर एक विशेष रूप से तैयार अनुरोध भेज सकता है जिसे Go सर्वर उससे भिन्न रूप से व्याख्या करेगा जैसा कि उसके सामने प्रॉक्सी सर्वर या लोड बैलेंसर करता है।



खतरा क्या है?

इस भेद्यता का उपयोग करके, हमलावर निम्नलिखित कर सकता है:

  • प्राधिकरण और प्रमाणीकरण को दरकिनार करना - दुर्भावनापूर्ण अनुरोध सम्मिलित करना जिन्हें सर्वर किसी अन्य उपयोगकर्ता की ओर से वैध कार्रवाई के रूप में संसाधित करेगा।
  • सत्र डेटा को इंटरसेप्ट करना - प्रॉक्सी सर्वर के कैश को "जहर" देना और बंद संसाधनों तक पहुंच प्राप्त करना।
  • XSS हमले करना - सर्वर प्रतिक्रियाओं में स्क्रिप्ट सम्मिलित करना जिन्हें पीड़ित का ब्राउज़र निष्पादित करेगा।
  • सेवा से इनकार (DoS) प्राप्त करना - ऐसे अनुरोध भेजना जो एप्लिकेशन को हैंग या क्रैश कर दें।


इस भेद्यता को विशेष खतरनाक बनाने वाला तथ्य यह है कि net/http एक मानक पुस्तकालय है जिसका उपयोग अधिकांश Go प्रोजेक्ट्स द्वारा किया जाता है, सरल API से लेकर बड़े माइक्रोसर्विस आर्किटेक्चर तक। विशेषज्ञों के अनुमान के अनुसार, दुनिया भर में लाखों सर्वर खतरे में हैं।



जोखिम में कौन है?

यह भेद्यता 1.20.6 और 1.21.0 से पहले के सभी Go संस्करणों को प्रभावित करती है। जोखिम क्षेत्र में हैं:

  • Go में लिखे गए वेब सर्वर और API जो रिवर्स प्रॉक्सी का उपयोग नहीं करते।
  • अनुरोधों को संसाधित करने के लिए net/http की अंतर्निहित क्षमताओं का उपयोग करने वाले एप्लिकेशन।
  • लोड बैलेंसर या WAF के पीछे चलने वाले सर्वर जो हेडर को अलग-अलग तरीके से पार्स कर सकते हैं।


कैसे बचाव करें?

Go भाषा के डेवलपर्स ने तुरंत एक पैच जारी किया। अपने प्रोजेक्ट की सुरक्षा के लिए, तुरंत निम्नलिखित कदम उठाना आवश्यक है:

  1. Go को अपडेट करें संस्करण 1.20.6 या 1.21.0 पर (आपकी मेजर ब्रांच पर निर्भर करता है)।
  2. सभी बाइनरी फाइलों को पुनः बिल्ड करें कंपाइलर के नए संस्करण के साथ।
  3. डिपेंडेंसीज की जांच करें - यदि आप तृतीय-पक्ष लाइब्रेरी, net/http पर रैपर का उपयोग करते हैं, तो सुनिश्चित करें कि वे भी अपडेट और संगत हैं।
  4. WAF (Web Application Firewall) लागू करें सुरक्षा की एक अतिरिक्त परत के रूप में जो संदिग्ध अनुरोधों को फ़िल्टर कर सके।


PythonLib टीम सभी Go डेवलपर्स को दृढ़ता से सलाह देती है कि वे अपडेट में देरी न करें। यह भेद्यता गंभीर है।

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