संगणकाच्या जगात, काही आदेश ते पहिल्या दृष्टीक्षेपात निरुपद्रवी वाटू शकतात, परंतु ते एक विध्वंसक शक्ती लपवतात जी दुर्भावनापूर्णपणे किंवा चुकून वापरली गेली तर संपूर्ण प्रणाली उद्ध्वस्त होऊ शकते. या आज्ञांपैकी, एक सर्वोत्तम ज्ञात - किंवा नाही - आणि भयभीत, तथाकथित आहे काटा बॉम्ब, किंवा काटा बॉम्ब.
काटेरी बॉम्ब हे डिनायल-ऑफ-सर्व्हिस (DoS) हल्ल्यापेक्षा दुसरे काही नाही, उपलब्ध प्रणाली संसाधने वापरण्यासाठी डिझाइन केलेले, जसे की CPU आणि मेमरी, जेथे ते निरुपयोगी होते. ही आज्ञा कशी कार्य करते, ती इतकी हानीकारक का असू शकते आणि स्वतःचे रक्षण करण्यासाठी तुम्ही कोणती पावले उचलू शकता असा प्रश्न तुम्हाला कधी पडला असेल, तर येथे तुम्हाला माहिती असणे आवश्यक असलेली प्रत्येक गोष्ट सुलभ आणि तपशीलवार वर्णन केलेली आढळेल.
फोर्क बॉम्ब म्हणजे काय?
फोर्क बॉम्ब, ज्याला "रेबिट व्हायरस" देखील म्हटले जाते कारण ते वेगाने प्रतिकृती बनवण्याच्या प्रवृत्तीमुळे, हे एक तंत्र आहे जे प्रणालीला संतृप्त करण्यासाठी मोठ्या प्रमाणात प्रक्रियांचा वापर करते कार्यरत हे युनिक्स आणि लिनक्स सिस्टीमवर उपलब्ध असलेल्या फोर्क फंक्शन वापरणाऱ्या कमांडद्वारे साध्य केले जाते. फोर्क फंक्शन प्रक्रियेला स्वतःची अचूक प्रत तयार करण्यास अनुमती देते, ज्याला चाइल्ड प्रोसेस म्हणून ओळखले जाते.
अ शी संबंधित सर्वात प्रातिनिधिक आदेश काटा बॉम्ब खालीलप्रमाणे आहे:
: () {: |: &};:
या कमांडमध्ये एक रचना आहे जी कॉम्पॅक्ट असली तरी, आश्चर्यकारकपणे शक्तिशाली आहे. ते काय करते ते फंक्शन नावाची व्याख्या आहे :, जे स्वतःला वारंवार कॉल करते, प्रत्येक अंमलबजावणीमध्ये दोन नवीन प्रक्रिया निर्माण करते ऑपरेटरला धन्यवाद पाईप | आणि & सह पार्श्वभूमीत अंमलबजावणी. परिणाम म्हणजे प्रक्रियांची घातांकीय वाढ जी काही सेकंदात प्रणाली कोलमडते.
फोर्क बॉम्ब कसा काम करतो?
आज्ञा : () {: |: &};: हे सुरुवातीला गोंधळात टाकणारे वाटू शकते, म्हणून आपण ते टप्प्याटप्प्याने खंडित करूया:
:
: हे चिन्ह फंक्शनचे नाव दर्शवते. वास्तविक, तुम्ही कोणतेही नाव वापरू शकता.() { }
: हे वाक्यरचना कोणत्याही पॅरामीटर्सशिवाय फंक्शन परिभाषित करते.:|:
: एकदा परिभाषित केल्यावर, फंक्शन स्वतःला आणि ऑपरेटरला कॉल करते | त्याचे आउटपुट स्वतःच्या नवीन उदाहरणावर पुनर्निर्देशित करते.&
: हे चिन्ह पार्श्वभूमीत कॉल्स कार्यान्वित करते, प्रक्रियांची एकाचवेळी निर्मिती करण्यास अनुमती देते.;
: फंक्शनची व्याख्या आणि त्याची प्रारंभिक अंमलबजावणी दरम्यान विभाजक म्हणून काम करते.:
: शेवटी, हे शेवटचे चिन्ह फंक्शन कार्यान्वित करते, जे प्रक्रियांचा कॅस्केड सुरू करते.
एकदा धावल्यानंतर, काटा बॉम्ब त्वरीत सिस्टम संसाधने वापरतो, नवीन प्रक्रिया चालविण्याची क्षमता अवरोधित करणे आणि सहसा सक्तीने कॉम्प्युटर रीस्टार्ट करणे.
असुरक्षित प्रणाली
व्यावहारिकरित्या कोणतीही युनिक्स किंवा लिनक्स आधारित ऑपरेटिंग सिस्टम, जसे की उबंटू, डेबियन किंवा रेड हॅट, फोर्क बॉम्बसाठी असुरक्षित आहे, कारण हे सर्व फॉर्क सिस्टम कॉलचा वापर करतात. तथापि, यंत्रणा विंडोज ते या विशिष्ट प्रकारच्या हल्ल्यासाठी असुरक्षित नाहीत, कारण त्यांच्याकडे काटा समतुल्य कार्य नाही. त्याऐवजी, विंडोजवर तुम्हाला अशाच प्रकारे नवीन प्रक्रियांचा संच तयार करावा लागेल, परंतु यासाठी अधिक जटिल दृष्टीकोन आवश्यक आहे.
विविध भाषांमधील फोर्क बॉम्बची उदाहरणे
La काटा बॉम्ब हे बॅशसाठी विशेष नाही; हे इतर प्रोग्रामिंग भाषांमध्ये लागू केले जाऊ शकते. येथे काही उदाहरणे आहेत:
पायथन फोर्क बॉम्ब
#!/usr/bin/env python os आयात करताना खरे: os.fork()
जावा फोर्क बॉम्ब
सार्वजनिक वर्ग बॉम्ब { सार्वजनिक स्थिर शून्य मुख्य(अंतिम स्ट्रिंग[] आर्ग्स) { तर (सत्य) { Runtime.getRuntime().exec("java Bomb"); } } }
सी काटा बॉम्ब
#समाविष्ट करा int main(void) { तर (1) { fork(); } }
फोर्क बॉम्बचा प्रभाव
काटा बॉम्बचा मुख्य प्रभाव आहे सिस्टम ओव्हरलोड. CPU, मेमरी आणि प्रक्रिया इनपुट यांसारखी संसाधने त्वरीत वापरली जातात, ज्यामुळे सिस्टम अस्थिर किंवा प्रतिसादहीन होते. बर्याच बाबतीत, आपल्याला ए सक्तीने रीस्टार्ट करा नियंत्रण पुन्हा मिळवण्यासाठी. याव्यतिरिक्त, आपत्ती दरम्यान अचानक अनुप्रयोग वर्तनामुळे डेटा गमावण्याचा एक महत्त्वपूर्ण धोका आहे.
प्रतिबंधात्मक उपाय
जरी काटा बॉम्ब विनाशकारी असू शकतो, त्याचा प्रभाव कमी करण्याचे आणि प्रतिबंध करण्याचे मार्ग आहेत. पूर्णपणे:
1. प्रक्रियांची संख्या मर्यादित करा
आज्ञा मर्यादा लिनक्समध्ये ते तुम्हाला वापरकर्ता तयार करू शकणाऱ्या प्रक्रियेच्या कमाल संख्येवर मर्यादा सेट करण्याची परवानगी देते. उदाहरणार्थ:
ulimit -u 5000
हे वापरकर्त्यास कमाल मर्यादा ठेवते 5000 सक्रिय प्रक्रिया.
2. पर्सिस्टंट मर्यादा कॉन्फिगर करा
कायमस्वरूपी मर्यादा लागू करण्यासाठी, तुम्ही फाइलमध्ये बदल करू शकता /etc/security/limits.conf
. उदाहरणार्थ:
कठोर वापरकर्ता nproc 5000
हे सुनिश्चित करते की वापरकर्त्याने लॉग आउट केल्यानंतरही मर्यादा कायम राहतील.
3. Cgroups चा वापर
आधुनिक लिनक्स सिस्टमवर, cgroups (नियंत्रण गट) तुम्हाला सिस्टीम संसाधनांवर अधिक दाणेदार नियंत्रण स्थापित करण्याची परवानगी देतात, ज्यामध्ये संख्या समाविष्ट आहे परवानगी प्रक्रिया.
सोशल नेटवर्क्सवर तुम्ही काय पाहता याकडे लक्ष देऊ नका
या प्रकारच्या कमांड्स सोशल नेटवर्क्सवर व्यावहारिक विनोद म्हणून दिसू शकतात, म्हणून आपण सावधगिरी बाळगली पाहिजे आणि ते आपल्याला टर्मिनलमध्ये जे सांगतात ते प्रविष्ट करू नये. आणखी पुढे न जाता, X मध्ये "काटा बॉम्ब" ठेवला तर आपल्याला दिसेल एका पोस्टला प्रतिसाद "हॅलो, फोर्क बॉम्ब" असे म्हणतात. काही क्षणांपूर्वी शेअर केलेल्या मूळ पोस्टमध्ये असे म्हटले आहे की :(){ :|:& };: नावाची एक मांजर आहे आणि ती तुम्ही टर्मिनलमध्ये ठेवली आहे. ते काय करते हे आम्ही आधीच स्पष्ट केले आहे, म्हणून ते करू नका.
काटे बॉम्ब, जरी संकल्पनेत साधे असले तरी, असुरक्षित प्रणालींवर खोल प्रभाव पडतो. हे कसे कार्य करते, त्याचे परिणाम आणि ते कमी करण्याचे मार्ग समजून घेणे आधुनिक संगणकीय वातावरणाचे संरक्षण करण्यासाठी अत्यावश्यक आहे. हे एक स्मरणपत्र आहे की साध्या आदेशामुळे आपत्तीजनक परिणाम कसे होऊ शकतात आणि योग्य प्रणाली प्रशासन आणि सुरक्षा सीमा निश्चित करण्याचे महत्त्व देखील आहे.