रूटकिट

From Vigyanwiki
Revision as of 15:20, 25 December 2022 by alpha>Neetua08

रूटकिट सॉफ्टवेयर का एक संग्रह है, जो सामान्यतः द्वेषपूर्ण होता है, जिसे कंप्यूटर या इसके सॉफ़्टवेयर के एक क्षेत्र तक पहुंच को सक्षम बनाने के लिए डिज़ाइन किया गया है, जिसे अन्यथा अनुमति नहीं है (उदाहरण के लिए, एक अनधिकृत उपयोगकर्ता के लिए) और अधिकांशतः इसके अस्तित्व या अन्य सॉफ़्टवेयर के अस्तित्व को छुपाता है।[1] शब्द रूटकिट "रूट" का एक यौगिक है (यूनिक्स-जैसे ऑपरेटिंग सिस्टम पर विशेषाधिकार प्राप्त अकाउंट का पारंपरिक नाम) और शब्द किट (जो उपकरण को लागू करने वाले सॉफ़्टवेयर घटकों को संदर्भित करता है)।[2] रूटकिट शब्द का मैलवेयर के साथ जुड़ाव के कारण नकारात्मक अर्थ है।[1]

रूटकिट इंस्टॉलेशन को स्वचालित किया जा सकता है, या एक हैकर (कंप्यूटर सुरक्षा) रूट या एडमिनिस्ट्रेटर एक्सेस प्राप्त करने के बाद इसे इंस्टॉल कर सकता है।[3] इस पहुंच को प्राप्त करना एक प्रणाली पर सीधे हमले का परिणाम है, अर्थात भेद्यता (जैसे विशेषाधिकार वृद्धि) या पासवर्ड (पासवर्ड क्रैकिंग या सोशल इंजीनियरिंग (सुरक्षा) रणनीति जैसे फ़िशिंग द्वारा प्राप्त) का शोषण करना। एक बार इंस्टॉल हो जाने पर, घुसपैठ को छुपाना और साथ ही विशेषाधिकार प्राप्त पहुंच को बनाए रखना संभव हो जाता है। किसी सिस्टम पर पूर्ण नियंत्रण का अर्थ है कि मौजूदा सॉफ़्टवेयर को संशोधित किया जा सकता है, जिसमें सॉफ़्टवेयर भी सम्मलित है जो अन्यथा इसका पता लगाने या इसे रोकने के लिए उपयोग किया जा सकता है।

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

इतिहास

शब्द रूटकिट या रूट किट मूल रूप से एक यूनिक्स जैसे ऑपरेटिंग सिस्टम के लिए प्रशासनिक उपकरणों के दुर्भावनापूर्ण रूप से संशोधित सेट को संदर्भित करता है जो सुपरयूजर एक्सेस प्रदान करता है।[4] यदि एक घुसपैठिया एक रूटकिट के साथ एक सिस्टम पर मानक प्रशासनिक उपकरण को बदल सकता है, तो घुसपैठिया वैध सिस्टम प्रशासक से इन गतिविधियों को छुपाते हुए सिस्टम पर रूट एक्सेस प्राप्त कर सकता है। ये पहली पीढ़ी के रूटकिट ओपन सोर्स ट्रिपवायर जैसे उपकरणों का उपयोग करके पता लगाने के लिए तुच्छ थे, जिन्हें समान जानकारी तक पहुंचने के लिए समझौता नहीं किया गया था।Cite error: Closing </ref> missing for <ref> tag 1983 में ट्यूरिंग पुरस्कार प्राप्त करने पर दिए गए व्याख्यान में, बेल लैब्स के केन थॉम्पसन, यूनिक्स के रचनाकारों में से एक, ने यूनिक्स वितरण में सी संकलक को नष्ट करने के बारे में सिद्धांत दिया और शोषण पर चर्चा की। संशोधित संकलक यूनिक्स को संकलित करने के प्रयासों का पता लगाएगा login आदेश दें और परिवर्तित कोड उत्पन्न करें जो न मात्र उपयोगकर्ता के सही पासवर्ड को स्वीकार करेगा, बल्कि हमलावर को ज्ञात एक अतिरिक्त पिछले दरवाजे (कंप्यूटिंग) पासवर्ड भी होगा। इसके अतिरिक्त, कंपाइलर कंपाइलर के एक नए संस्करण को संकलित करने के प्रयासों का पता लगाएगा, और उसी कारनामे को नए कंपाइलर में सम्मिलित करेगा। के लिए स्रोत कोड की समीक्षा login कमांड या अपडेटेड कंपाइलर किसी भी दुर्भावनापूर्ण कोड को प्रकट नहीं करेगा।[5] यह कारनामा एक रूटकिट के बराबर था।

व्यक्तिगत कंप्यूटर को लक्षित करने वाला पहला प्रलेखित कंप्यूटर वायरस, जिसे 1986 में खोजा गया था, ने स्वयं को छिपाने के लिए क्लोकिंग तकनीकों का उपयोग किया: ब्रेन (कंप्यूटर वायरस) ने प्रारंभिक क्षेत्र को पढ़ने के प्रयासों को रोका, और इन्हें डिस्क पर कहीं और पुनर्निर्देशित किया, जहां इसकी एक प्रति थी। मूल बूट सेक्टर रखा गया था।[1] समय के साथ, डॉस-वायरस क्लोकिंग विधियां अधिक परिष्कृत हो गईं। उन्नत तकनीकों में फाइलों में अनधिकृत संशोधनों को छिपाने के लिए लो-लेवल डिस्क INT 13H BIOS रुकावट डालना कॉल को हुक करना सम्मलित है।[1]

विंडोज एनटी ऑपरेटिंग सिस्टम के लिए पहला दुर्भावनापूर्ण रूटकिट 1999 में दिखाई दिया: एनटीआरओटकिट नामक एक ट्रोजन जिसे ग्रेग होगलंड द्वारा बनाया गया था।[6]इसके बाद 2003 में हैकर डिफेंडर द्वारा किया गया।[1]पहला रूटकिट लक्ष्यीकरण macOS 2009 में सामने आया,[7] जबकि स्टक्सनेट वर्म निर्देशयोग्य तर्क नियंत्रक्स (पीएलसी) को लक्षित करने वाला पहला था।[8]


सोनी बीएमजी कॉपी प्रोटेक्शन रूटकिट स्कैंडल

File:RootkitRevealer.png
रूटकिट रिवीलर का स्क्रीनशॉट, विस्तारित कॉपी सुरक्षा रूटकिट द्वारा छिपी हुई फाइलों को दिखा रहा है

2005 में, Sony BMG ने कॉपी सुरक्षा और डिजिटल अधिकार प्रबंधन सॉफ़्टवेयर के साथ कॉम्पैक्ट डिस्क प्रकाशित की, जिसे विस्तारित कॉपी सुरक्षा कहा जाता है, जिसे सॉफ़्टवेयर कंपनी फ़र्स्ट 4 इंटरनेट द्वारा बनाया गया है। सॉफ्टवेयर में एक म्यूजिक प्लेयर सम्मलित था परंतु चुपचाप एक रूटकिट स्थापित किया गया था जो सीडी तक पहुंचने के लिए उपयोगकर्ता की क्षमता को सीमित करता था।[9] सॉफ्टवेयर इंजीनियर मार्क रोसिनोविच, जिन्होंने रूटकिट डिटेक्शन टूल रूटकिटरिवेलर बनाया था, ने अपने एक कंप्यूटर पर रूटकिट की खोज की।[1]आगामी घोटाले ने रूटकिट्स के बारे में जनता की जागरूकता बढ़ा दी।[10] स्वयं को छिपाने के लिए, रूटकिट उपयोगकर्ता को $sys$ से शुरू होने वाली किसी भी फ़ाइल से छुपाता है। रोसिनोविच की रिपोर्ट के तुरंत बाद, मैलवेयर सामने आया जिसने प्रभावित सिस्टम की भेद्यता का लाभ उठाया।[1]बीबीसी के एक विश्लेषक ने इसे जनसंपर्क दुःस्वप्न कहा।[11] सोनी बीएमजी ने रूटकिट को अनइंस्टॉलर करने के लिए पैच (कंप्यूटिंग) जारी किया, परंतु इसने उपयोगकर्ताओं को और भी गंभीर भेद्यता के लिए उजागर किया।[12] कंपनी ने अंततः सीडी को वापस बुला लिया। संयुक्त राज्य अमेरिका में, सोनी बीएमजी के खिलाफ एक वर्ग कार्रवाई | क्लास-एक्शन मुकदमा लाया गया था।[13]


ग्रीक वायरटैपिंग मामला 2004–05

ग्रीक वायरटैपिंग मामला 2004–05, जिसे ग्रीक वाटरगेट भी कहा जाता है,[14] वोडाफोन यूनान नेटवर्क पर 100 से अधिक चल दूरभाषों की अवैध टेलीफोन टैपिंग सम्मलित थी, जो ज्यादातर ग्रीस सरकार के सदस्यों और शीर्ष-श्रेणी के सिविल सेवकों के थे। नल अगस्त 2004 की शुरुआत के पास शुरू हुए और अपराधियों की पहचान का पता लगाए बिना मार्च 2005 में हटा दिए गए। घुसपैठियों ने एरिक्सन के एक्स टेलीफोन एक्सचेंज को निशाना बनाते हुए एक रूटकिट स्थापित किया। IEEE स्पेक्ट्रम के अनुसार, यह पहली बार था जब किसी विशेष प्रयोजन प्रणाली पर रूटकिट देखा गया था, इस मामले में एरिक्सन टेलीफोन स्विच।[15] रूटकिट को एक्सचेंज की मेमोरी को पैच करने के लिए डिज़ाइन किया गया था जब यह चल रहा था, ऑडिट लॉग को अक्षम करते हुए वायरटैपिंग को सक्षम करें, सक्रिय प्रक्रियाओं और सक्रिय डेटा ब्लॉक को सूचीबद्ध करने वाले कमांड को पैच करें और डेटा ब्लॉक अंततः, सत्यापन कमांड को संशोधित करें। एक बैकडोर ने एक ऑपरेटर को sysadmin स्थिति के साथ एक्सचेंज के लेनदेन लॉग, अलार्म और निगरानी क्षमता से संबंधित एक्सेस कमांड को निष्क्रिय करने की अनुमति दी।[15]घुसपैठियों द्वारा एक दोषपूर्ण अद्यतन स्थापित करने के बाद रूटकिट की खोज की गई, जिसके कारण एसएमएस पाठ वितरित नहीं हो पाए, जिससे एक स्वचालित विफलता रिपोर्ट उत्पन्न हुई। एरिक्सन इंजीनियरों को गलती की जांच करने के लिए बुलाया गया और रूटकिट और अवैध निगरानी सॉफ्टवेयर के साथ निगरानी किए जा रहे फोन नंबरों की सूची वाले छिपे हुए डेटा ब्लॉक की खोज की।

उपयोग करता है

आधुनिक रूटकिट पहुँच को उन्नत नहीं करते हैं,[4]बल्कि चुपके क्षमताओं को जोड़कर एक और सॉफ़्टवेयर पेलोड को ज्ञानी बनाने के लिए उपयोग किया जाता है।[6] अधिकांश रूटकिट को मालवेयर के रूप में वर्गीकृत किया जाता है, क्योंकि जिन पेलोड के साथ उन्हें बंडल किया जाता है वे दुर्भावनापूर्ण होते हैं। उदाहरण के लिए, एक पेलोड उपयोगकर्ता के पासवर्ड, क्रेडिट कार्ड की जानकारी, कंप्यूटिंग संसाधनों को गुप्त रूप से चुरा सकता है या अन्य अनधिकृत गतिविधियों का संचालन कर सकता है। रूटकिट की एक छोटी संख्या उनके उपयोगकर्ताओं द्वारा उपयोगिता अनुप्रयोगों के रूप में मानी जा सकती है: उदाहरण के लिए, एक रूटकिट सीडी रॉम-इम्यूलेशन ड्राइवर को क्लोक कर सकता है, जिससे वीडियो गेम उपयोगकर्ताओं को प्रतिलिपि सुरक्षा को हराने की अनुमति मिलती है#एंटी-पाइरेसी|एंटी-पाइरेसी उपाय जिनमें प्रविष्टि की आवश्यकता होती है मूल स्थापना मीडिया को भौतिक ऑप्टिकल ड्राइव में यह सत्यापित करने के लिए कि सॉफ़्टवेयर वैध रूप से खरीदा गया था।

रूटकिट्स और उनके पेलोड के कई उपयोग हैं:

  • एक हमलावर को पिछले दरवाजे (कंप्यूटिंग) के माध्यम से पूर्ण पहुंच प्रदान करें, अनधिकृत पहुंच की अनुमति दें, उदाहरण के लिए, दस्तावेज़ों को चुराना या गलत करना। इसे पूरा करने के तरीकों में से एक लॉगिन तंत्र को हटाना है, जैसे कि यूनिक्स जैसी प्रणालियों पर / बिन / लॉगिन प्रोग्राम या विंडोज़ पर ग्राफिकल पहचान और प्रमाणीकरण। प्रतिस्थापन सामान्य रूप से कार्य करता प्रतीत होता है, परंतु एक गुप्त लॉगिन संयोजन को भी स्वीकार करता है जो एक हमलावर को मानक प्रमाणीकरण और प्राधिकरण तंत्र को दरकिनार करते हुए प्रशासनिक विशेषाधिकारों के साथ सिस्टम तक सीधी पहुंच की अनुमति देता है।
  • अन्य मैलवेयर छुपाएं, विशेष रूप से पासवर्ड-चोरी करने वाले कीस्ट्रोक लॉगिंग और कंप्यूटर वायरस।[16]
  • अन्य कंप्यूटरों पर हमलों के लिए समझौता मशीन को एक ज़ोंबी कंप्यूटर के रूप में उपयुक्त करें। (हमला हमलावर के सिस्टम के अतिरिक्त समझौता किए गए सिस्टम या नेटवर्क से उत्पन्न होता है।) ज़ोंबी कंप्यूटर सामान्यतः बड़े botnet के सदस्य होते हैं जो अन्य चीजों के साथ-डिनायल-ऑफ-सर्विस हमलों को लॉन्च कर सकते हैं, ईमेल स्पैम (इलेक्ट्रॉनिक) वितरित कर सकते हैं। और क्लिक धोखाधड़ी करें।[17]

कुछ उदाहरणों में, रूटकिट वांछित कार्यक्षमता प्रदान करता है, और कंप्यूटर उपयोगकर्ता की ओर से जानबूझकर स्थापित किया जा सकता है:

  • हमलों का पता लगाएं, उदाहरण के लिए, हनीपोट (कंप्यूटिंग) में।[18]
  • एमुलेशन सॉफ्टवेयर और सुरक्षा सॉफ्टवेयर को बेहतर बनाएं।[19] एल्कोहल 120% और डेमोन टूल्स गैर-विरोधी रूटकिट के व्यावसायिक उदाहरण हैं जिनका उपयोग SafeDisc और SecuROM जैसे कॉपी-प्रोटेक्शन मैकेनिज्म को हराने के लिए किया जाता है।[20] Kaspersky एंटी-वायरस स्वयं को दुर्भावनापूर्ण कार्यों से बचाने के लिए रूटकिट जैसी तकनीकों का भी उपयोग करता है। यह सिस्टम गतिविधि को बाधित करने के लिए अपने स्वयं के डिवाइस ड्राइवर को लोड करता है, और फिर अन्य प्रक्रियाओं को स्वयं को नुकसान पहुँचाने से रोकता है। इसकी प्रक्रियाएँ छिपी नहीं हैं, परंतु मानक विधियों द्वारा समाप्त नहीं की जा सकती हैं।
  • एंटी-थेफ्ट प्रोटेक्शन: लैपटॉप में BIOS-आधारित रूटकिट सॉफ्टवेयर हो सकता है जो समय-समय पर एक केंद्रीय प्राधिकरण को रिपोर्ट करेगा, जिससे लैपटॉप की निगरानी की जा सकेगी, चोरी होने की स्थिति में सूचना को अक्षम या मिटा दिया जा सकेगा।[21]
  • Microsoft उत्पाद सक्रियण को दरकिनार करना[22]


प्रकार

कम से कम 69 प्रकार के रूटकिट हैं, फ़र्मवेयर में निम्नतम स्तर (उच्चतम विशेषाधिकारों के साथ) से लेकर कर्नेल (कंप्यूटर विज्ञान) में संचालित होने वाले कम से कम विशेषाधिकार प्राप्त उपयोगकर्ता-आधारित वेरिएंट तक। इनमें से हाइब्रिड संयोजन फैले हुए हो सकते हैं, उदाहरण के लिए, उपयोगकर्ता मोड और कर्नेल मोड।[23]


उपयोगकर्ता मोड

File:CPU ring scheme.svg
रिंग -1 नहीं दिखाया गया है)

उपयोक्ता-मोड रूटकिट रिंग (कंप्यूटर सुरक्षा) में चलते हैं, अन्य अनुप्रयोगों के साथ-साथ निम्न-स्तरीय सिस्टम प्रक्रियाओं के अतिरिक्त उपयोगकर्ता के रूप में।[24]एप्लिकेशन प्रोग्रामिंग इंटरफेस (एपीआई) के मानक व्यवहार को रोकने और संशोधित करने के लिए उनके पास कई संभावित इंस्टॉलेशन वैक्टर हैं। कुछ अन्य प्रक्रियाओं में गतिशील लिंकर लाइब्रेरी (जैसे डायनेमिक-लिंक लाइब्रेरी|.DLL फ़ाइल विंडोज़ पर, या .dylib फ़ाइल macOS पर) इंजेक्ट करते हैं, और इस तरह इसे स्पूफ करने के लिए किसी भी लक्ष्य प्रक्रिया के अंदर निष्पादित करने में सक्षम होते हैं; अन्य पर्याप्त विशेषाधिकारों के साथ लक्ष्य अनुप्रयोग की स्मृति को अधिलेखित कर देते हैं। इंजेक्शन तंत्र में सम्मलित हैं:[24]*विक्रेता द्वारा आपूर्ति किए गए एप्लिकेशन एक्सटेंशन का उपयोग। उदाहरण के लिए, विंडोज़ एक्सप्लोरर में सार्वजनिक इंटरफेस हैं जो तीसरे पक्ष को इसकी कार्यक्षमता बढ़ाने की अनुमति देते हैं।

  • संदेश पारित करने का अवरोधन।
  • डिबगर्स।
  • भेद्यता का शोषण (कंप्यूटिंग)।
  • सामान्यतः उपयोग किए जाने वाले एपीआई के फंक्शन हुकिंग या पैचिंग, उदाहरण के लिए, एक फाइल सिस्टम पर चलने वाली प्रक्रिया या फाइल को छिपाने के लिए।[25]

...since user mode applications all run in their own memory space, the rootkit needs to perform this patching in the memory space of every running application. In addition, the rootkit needs to monitor the system for any new applications that execute and patch those programs' memory space before they fully execute.

— Windows Rootkit Overview, Symantec[4]


कर्नेल मोड

कर्नेल-मोड रूटकिट उच्चतम ऑपरेटिंग सिस्टम विशेषाधिकारों (रिंग (कंप्यूटर सुरक्षा)) के साथ कोड जोड़कर या कर्नेल (कंप्यूटर विज्ञान) और संबंधित डिवाइस ड्राइवर दोनों सहित कोर ऑपरेटिंग सिस्टम के भागों को बदलकर चलते हैं।[citation needed] अधिकांश ऑपरेटिंग सिस्टम कर्नेल-मोड डिवाइस ड्राइवरों का समर्थन करते हैं, जो ऑपरेटिंग सिस्टम के समान विशेषाधिकारों के साथ निष्पादित होते हैं। जैसे, कई कर्नेल-मोड रूटकिट डिवाइस ड्राइवर या लोड करने योग्य मॉड्यूल के रूप में विकसित किए जाते हैं, जैसे लिनक्स में मॉड्यूल (लिनक्स) या माइक्रोसॉफ़्ट विंडोज़ में डिवाइस ड्राइवर। रूटकिट के इस वर्ग के पास अप्रतिबंधित सुरक्षा पहुंच है, परंतु लिखना अधिक कठिन है।[26]जटिलता बग को सामान्य बनाती है, और कर्नेल स्तर पर संचालन करने वाले कोड में कोई भी बग सिस्टम स्थिरता को गंभीर रूप से प्रभावित कर सकता है, जिससे रूटकिट की खोज हो सकती है।[26]पहले व्यापक र