डीएलएल अपहरण भेद्यता हमले, रोकथाम और जांच

डीएलएल (DLL)डायनेमिक लिंक लाइब्रेरी(Dynamic Link Libraries) के लिए खड़ा है और विंडोज़(Windows) या किसी अन्य ऑपरेटिंग सिस्टम पर चलने वाले अनुप्रयोगों के बाहरी हिस्से हैं । अधिकांश एप्लिकेशन अपने आप में पूर्ण नहीं होते हैं और कोड को विभिन्न फाइलों में संग्रहीत करते हैं। यदि कोड की आवश्यकता होती है, तो संबंधित फ़ाइल को मेमोरी में लोड किया जाता है और उपयोग किया जाता है। यह रैम(RAM) के उपयोग को इष्टतम करते हुए एप्लिकेशन फ़ाइल आकार को कम करता है । यह लेख बताता है कि डीएलएल अपहरण(DLL Hijacking) क्या है और इसका पता कैसे लगाया जाए और इसे कैसे रोका जाए।

डीएलएल फाइलें(Files) या डायनेमिक लिंक लाइब्रेरी क्या हैं(Dynamic Link Libraries)

डीएलएल अपहरण

डीएलएल(DLL) फाइलें डायनेमिक लिंक लाइब्रेरी(Dynamic Link Libraries) हैं और जैसा कि नाम से स्पष्ट है, विभिन्न अनुप्रयोगों के विस्तार हैं। हमारे द्वारा उपयोग किया जाने वाला कोई भी एप्लिकेशन कुछ कोड का उपयोग कर सकता है या नहीं भी कर सकता है। इस तरह के कोड अलग-अलग फाइलों में संग्रहीत होते हैं और संबंधित कोड की आवश्यकता होने पर ही रैम(RAM) में इनवॉइस या लोड किए जाते हैं । इस प्रकार, यह एक एप्लिकेशन फ़ाइल को बहुत बड़ा होने से बचाता है और एप्लिकेशन द्वारा संसाधन हॉगिंग को रोकता है।

डीएलएल(DLL) फाइलों का पथ विंडोज(Windows) ऑपरेटिंग सिस्टम द्वारा निर्धारित किया जाता है। वैश्विक पर्यावरण चर(Global Environmental Variables) का उपयोग करके पथ निर्धारित किया गया है । डिफ़ॉल्ट रूप से, यदि कोई एप्लिकेशन DLL फ़ाइल का अनुरोध करता है, तो ऑपरेटिंग सिस्टम उसी फ़ोल्डर में देखता है जिसमें एप्लिकेशन संग्रहीत है। यदि यह वहां नहीं मिलता है, तो यह वैश्विक चर द्वारा निर्धारित अन्य फ़ोल्डरों में जाता है। पथ से जुड़ी प्राथमिकताएं हैं और यह विंडोज़(Windows) को यह निर्धारित करने में मदद करती है कि कौन से फ़ोल्डर्स डीएलएल(DLLs) को देखना है । यह वह जगह है जहां डीएलएल(DLL) अपहरण आता है।

डीएलएल अपहरण क्या है

चूंकि डीएलएल(DLLs) एक्सटेंशन हैं और आपकी मशीनों पर लगभग सभी अनुप्रयोगों का उपयोग करने के लिए आवश्यक हैं, वे कंप्यूटर पर विभिन्न फ़ोल्डरों में मौजूद हैं जैसा कि समझाया गया है। यदि मूल DLL फ़ाइल को दुर्भावनापूर्ण कोड वाली नकली DLL फ़ाइल से बदल दिया जाता है, तो इसे (DLL)DLL अपहरण(DLL Hijacking) के रूप में जाना जाता है ।

जैसा कि पहले उल्लेख किया गया है, प्राथमिकताएं हैं जहां ऑपरेटिंग सिस्टम डीएलएल(DLL) फाइलों की तलाश करता है। सबसे पहले(First) , यह एप्लिकेशन फ़ोल्डर के समान फ़ोल्डर में दिखता है और फिर ऑपरेटिंग सिस्टम के पर्यावरण चर द्वारा निर्धारित प्राथमिकताओं के आधार पर खोज करता है। इस प्रकार यदि कोई अच्छी.dll फ़ाइल SysWOW64 फ़ोल्डर में है और कोई एक bad.dll को उस फ़ोल्डर में रखता है जिसकी SysWOW64 फ़ोल्डर की तुलना में उच्च प्राथमिकता है, तो ऑपरेटिंग सिस्टम bad.dll फ़ाइल का उपयोग करेगा, क्योंकि इसका नाम DLL के समान है आवेदन द्वारा अनुरोध किया गया। एक बार RAM में , यह फ़ाइल में निहित दुर्भावनापूर्ण कोड को निष्पादित कर सकता है और आपके कंप्यूटर या नेटवर्क से समझौता कर सकता है।

डीएलएल अपहरण का पता कैसे लगाएं

डीएलएल(DLL) अपहरण का पता लगाने और रोकने का सबसे आसान तरीका तृतीय-पक्ष टूल का उपयोग करना है। बाजार में कुछ अच्छे फ्री टूल्स उपलब्ध हैं जो डीएलएल(DLL) हैक के प्रयास का पता लगाने और इसे रोकने में मदद करते हैं।

ऐसा ही एक प्रोग्राम है डीएलएल हाईजैक ऑडिटर(DLL Hijack Auditor) लेकिन यह केवल 32-बिट अनुप्रयोगों का समर्थन करता है। आप इसे अपने कंप्यूटर पर स्थापित कर सकते हैं और यह देखने के लिए अपने सभी विंडोज़ अनुप्रयोगों को स्कैन कर सकते हैं कि सभी एप्लिकेशन डीएलएल(DLL) अपहरण के लिए कमजोर हैं। इंटरफ़ेस सरल और आत्म-व्याख्यात्मक है। इस एप्लिकेशन का एकमात्र दोष यह है कि आप 64-बिट एप्लिकेशन को स्कैन नहीं कर सकते।

एक अन्य प्रोग्राम, DLL अपहरण का पता लगाने के लिए,  DLL_HIJACK_DETECT, GitHub के माध्यम से उपलब्ध है । यह प्रोग्राम यह देखने के लिए एप्लिकेशन की जांच करता है कि क्या उनमें से कोई डीएलएल(DLL) अपहरण की चपेट में है। यदि ऐसा है, तो प्रोग्राम उपयोगकर्ता को सूचित करता है। एप्लिकेशन के दो संस्करण हैं - x86 और x64 ताकि आप प्रत्येक का उपयोग क्रमशः 32-बिट और 64-बिट दोनों अनुप्रयोगों को स्कैन करने के लिए कर सकें।

यह ध्यान दिया जाना चाहिए कि उपरोक्त प्रोग्राम केवल कमजोरियों के लिए विंडोज(Windows) प्लेटफॉर्म पर एप्लिकेशन को स्कैन करते हैं और वास्तव में डीएलएल(DLL) फाइलों के अपहरण को नहीं रोकते हैं।

डीएलएल अपहरण को कैसे रोकें

इस मुद्दे को पहले प्रोग्रामर्स द्वारा निपटाया जाना चाहिए क्योंकि आपकी सुरक्षा प्रणालियों को मजबूत करने के अलावा आप बहुत कुछ नहीं कर सकते हैं। यदि एक सापेक्ष पथ के बजाय, प्रोग्रामर एक निरपेक्ष पथ का उपयोग करना शुरू करते हैं, तो भेद्यता कम हो जाएगी। पूर्ण पथ को पढ़ना, विंडोज(Windows) या कोई अन्य ऑपरेटिंग सिस्टम पथ के लिए सिस्टम चर पर निर्भर नहीं होगा और सीधे इच्छित डीएलएल(DLL) के लिए जाएगा, जिससे उच्च प्राथमिकता वाले पथ में समान नाम डीएलएल लोड करने की संभावना को खारिज कर दिया जाएगा। (DLL)यह तरीका भी फेल-प्रूफ नहीं है क्योंकि अगर सिस्टम से छेड़छाड़ की जाती है, और साइबर अपराधियों को डीएलएल(DLL) का सटीक रास्ता पता है , तो वे मूल डीएलएल(DLL) को नकली डीएलएल से बदल देंगे।(DLL). वह फ़ाइल को अधिलेखित कर देगा ताकि मूल DLL को दुर्भावनापूर्ण कोड में बदल दिया जाए। लेकिन फिर से, साइबर अपराधी को डीएलएल(DLL) के लिए कॉल करने वाले एप्लिकेशन में उल्लिखित सटीक पूर्ण पथ जानने की आवश्यकता होगी । साइबर अपराधियों के लिए प्रक्रिया कठिन है और इसलिए इस पर भरोसा किया जा सकता है।

आप जो कर सकते हैं उस पर वापस आते हुए, बस अपने विंडोज सिस्टम को बेहतर ढंग से सुरक्षित(secure your Windows system) करने के लिए अपनी सुरक्षा प्रणालियों को बढ़ाने का प्रयास करें । एक अच्छे फायरवॉल(firewall) का इस्तेमाल करें । यदि संभव हो, हार्डवेयर फ़ायरवॉल का उपयोग करें या राउटर फ़ायरवॉल चालू करें। अच्छी घुसपैठ का पता लगाने वाली प्रणाली का उपयोग करें ताकि आप जान सकें कि कोई आपके कंप्यूटर के साथ खेलने की कोशिश कर रहा है या नहीं।

यदि आप कंप्यूटर समस्या निवारण में हैं, तो आप अपनी सुरक्षा के लिए निम्न कार्य भी कर सकते हैं:

  1. दूरस्थ नेटवर्क शेयरों से DLL(DLL) लोडिंग अक्षम करें
  2. WebDAV से (WebDAV)DLL फ़ाइलों को लोड करना अक्षम करें
  3. WebClient सेवा को पूरी तरह अक्षम करें या इसे मैन्युअल पर सेट करें
  4. (Block)टीसीपी(TCP) पोर्ट 445 और 139 को ब्लॉक करें क्योंकि इनका उपयोग कंप्यूटर से समझौता करने के लिए सबसे अधिक किया जाता है
  5. ऑपरेटिंग सिस्टम और सुरक्षा सॉफ़्टवेयर में नवीनतम अपडेट इंस्टॉल करें।

माइक्रोसॉफ्ट ने (Microsoft)डीएलएल(DLL) लोड हाईजैकिंग हमलों को रोकने के लिए एक टूल जारी किया है । यह उपकरण डीएलएल(DLL) फाइलों से कोड को असुरक्षित रूप से लोड करने से अनुप्रयोगों को रोककर डीएलएल(DLL) अपहरण हमलों के जोखिम को कम करता है।

यदि आप लेख में कुछ भी जोड़ना चाहते हैं, तो कृपया नीचे टिप्पणी करें।(If you would like to add anything to the article, please comment below.)



About the author

व्यापार और प्रौद्योगिकी में, विंडोज़ 10 और विंडोज़ 11/10 बहुत महत्वपूर्ण उपकरण हैं। वे आपको पहले से कहीं अधिक आसानी से और सुरक्षित रूप से कंप्यूटर के साथ बातचीत करने की अनुमति देते हैं, साथ ही बिना किसी सुरक्षा जोखिम के शक्तिशाली लेकिन अनुकूलन योग्य ऐप्स चलाते हैं। ये टूल उन व्यवसायों के लिए भी आवश्यक हैं जो अपनी ऑनलाइन उपस्थिति बढ़ाने और नए ग्राहकों तक पहुंचने में सक्षम होना चाहते हैं। इस वजह से, मैं कहूंगा कि विंडोज़ 10 और विंडोज़ 11/10 में मेरा कौशल मुझे ऐसी नौकरी या व्यवसाय के लिए एक महान उम्मीदवार बनाता है।



Related posts