क्या आपकी कभी इच्छा हुई है कि आप भी एक वायरस बना सकें, चाहे तो सीखने के लिए या यूं ही शरारत के लिए? वैसे तो वायरस बनाने में समय और ज्ञान दोनों की ही ज़रूरत होती है, मगर कोई भी, जो तय कर लेगा, वह इसे बना सकता है। वायरस बनाने से आप न केवल प्रोग्रामिंग लैंगवेज़ कैसे काम करती है यह सीख सकते हैं, बल्कि ऑपरेटिंग सिस्टम और नेटवर्क सिक्योरिटी के बारे में भी जान सकते हैं। अपना वायरस बना कर मज़ा लेना शुरू करने के लिए नीचे चरण 1 देखिये।
-
तय करिए कि आप किस ऑपरेटिंग सिस्टम पर अटैक (attack) करना चाहते हैं: आम तौर पर माइक्रोसॉफ्ट विंडोज़ (Microsoft Windows), खास तौर से उनके पुराने वर्ज़न्स (versions) को, निशाना बनाया जाता है। विंडोज़ के अनेक पुराने इस्तेमाल करने वाले, अपने ऑपरेटिंग सिस्टम को अपडेट (update) नहीं करते हैं, जिससे उनकी सिक्योरिटी में ऐसी कुछ नाज़ुक कमियाँ रह जाती हैं, जिन्हें नए वर्ज़नों में ठीक किया गया होता है।
- जिस प्रकार से परमीशन्स (permissions) काम करती हैं और उनके ऑपरेटिंग सिस्टम का जैसा जनरल आर्कीटेक्चर (general architecture) होता है, उसके कारण Mac OS X और Linux दोनों ही बहुत हद तक वायरस से प्रभावित नहीं होते हैं। 95% वायरसों का निशाना विंडोज़ इस्तेमाल करने वाले ही होते हैं।
-
तय करिए कि आप उसे कैसे फैलाना चाहते हैं: कोई भी वायरस तभी वायरस कहलाता है जबकि वह दूसरे इस्तेमाल करने वालों में फैल सकता हो। आपको शुरू करने से पहले ही, यह समझ लेना होगा कि डिलीवरी (delivery) का तरीका क्या होगा, क्योंकि यह वायरस के कोड के फंडामेंटलों (fundamentals) में से एक होता है। आम तौर से डिलीवरी के तरीकों में शामिल होती हैं:
- एक्ज़ीक्यूटेबल फ़ाइल (.EXE, .BAT, .COM etc.) – इस प्रोग्राम को यूज़र द्वारा रन किया जाना होता है, और यह अक्सर किसी और रूप (जैसे कोई इमेज) में होती है।
- मैक्रो (माइक्रोसॉफ्ट ऑफिस) – मैक्रोज़ (Macros) ऐसे प्रोग्राम होते हैं जो किसी डॉकयुमेंट या ई-मेल में एम्बेड (embedded) किए हुये होते हैं। इनका निशाना Word, Outlook, और कोई भी अन्य मैक्रो से एनेबल किए (enabled) उत्पाद होते हैं। इनकी डिलिवरी का सबसे आम तरीका होता है कि किसी ईमेल के साथ इनफ़ेकटेड (infected) डॉकयुमेंट को भेजा जाये।
- वेब स्क्रिप्ट – ये एक दूषित कोड के हिस्से होते हैं जिन्हें वेबमास्टर की जानकारी के बिना साइटों में इंजेक्ट किया जाता है [१] X रिसर्च सोर्स ।
-
आप उस कमजोर स्पॉट को तय करिए जहां आप निशाना लगाना चाहते हैं: सफल वायरस, फैलने और अपना काम करने के लिए किसी भी प्रोग्राम या सिस्टम की कमज़ोरियों का फ़ायदा उठाया जाता है। इसके लिए काफ़ी रिसर्च और जानकारी की ज़रूरत होती है, मगर ऐसी बहुत सी कम्युनिटीज़ हैं जो आपकी ज़रूरत की चीज़ खोजने में आपकी मदद कर सकती हैं।
-
तय करिए कि आप अपने वायरस से क्या करवाना चाहते हैं: जब आपका वायरस सिस्टम को इनफ़ेक्ट कर देगा तब आप उससे क्या करवाना चाहते हैं? बात, कुछ नहीं से शुरू हो कर, किसी मेसेज को डिस्प्ले करने, फ़ाइलों को डिलीट करने, या उससे कहीं आगे तक जा सकती है। यह ध्यान रहे कि मैलीशियस (malicious) वायरस को फैलाना अधिकांश देशों में गंभीर अपराध माना जाता है।
-
कोई लैंगवेज चुनिये: वायरस बनाने के लिए, आपको कम से कम एक कंप्यूटर लैंगवेज या स्क्रिप्टिंग टूल (scripting tool) की थोड़ी बहुत बेसिक जानकारी होना आवश्यक है। अधिक जटिल वायरस के लिए अनेक लैंगवेजों की ज़रूरत होती है। वास्तव में प्रभावी वायरसों के लिए, आपको असेंबली लैंगवेजों से परिचित होने की ज़रूरत होगी।
- अगर आप एग्ज़ीक्यूटेबल वायरस बनाना चाहते हैं तब C या C++ से शुरू करना अच्छा रहेगा।
- अगर आप मैक्रो वायरस बनाना चाहते हैं, तब जो प्रोग्राम आपके निशाने पर हो जैसे कि माइक्रोसॉफ्ट ऑफिस, उसकी मैक्रो लैंगवेज सीख लीजिये।
- विंडोज़ के यूजर्स के लिए मैलीशियस प्रोग्राम बनाने के लिए Visual Basic का इस्तेमाल करिए।
-
वायरस लिखना शुरू करिए: अगर यह आपका कुछ भी कोड करने का पहला प्रयास होगा तब तो यह एक लंबा प्रोसेस (process) होगा। जितना संभव हो उतना एक्सपेरिमेंट (Experiment) करिए, और जिस लैंगवेज का भी आप इस्तेमाल कर रहे हों उससे अपने कोड को रेप्लीकेट (replicate) करने के तरीकों की खोज करिए। अनेक लैंगवेजों के लिए फ़ोरम्स और कम्यूनिटी ब्लॉग्स पर, ट्यूटोरियल मिल जाते हैं।
- पॉलीमोर्फिक कोड (Polymorphic code) पर रिसर्च करिए: इससे हर बार रेप्लीकेट किए जाने पर आपके वायरस का कोड बदल जाएगा, जिससे इसको एंटीवायरस प्रोग्रामों से ट्रैक नहीं किया जा सकेगा। पॉलीमोर्फिक कोड बहुत उन्नत होता है और हर लैंगवेज में अलग तरीके से लागू होता है।
-
अपने कोड को छुपाने के तरीके खोजिए: पॉलीमोर्फिक कोड के अलावा भी आपके वायरस को छुपाने के और तरीके भी होते हैं। एनक्रिप्शन (Encryption) भी वायरस के डेवलपरों द्वारा इस्तेमाल किया जाने वाला एक सामान्य टूल है। इसके लिए बहुत अभ्यास और पढ़ाई की ज़रूरत होती है, मगर इससे वायरस का जीवनकाल लंबा करने में बहुत लाभ होता है।
-
अपने वायरस का परीक्षण करें: जब आप प्रोटोटाइप बना कर उसे चलाने लगें, तब जितनी मशीनों और सेट अप में हो सके, उतनी में उसका परीक्षण करिए। यह सबसे आसान तब होगा जब आप भिन्न कान्फ़िग्यूरेशनों (configurations) में वर्चुअल मशीनें (virtual machines) सेटअप कर सकेंगे।
- ध्यान दीजिएगा कि आपके परीक्षण सीमित ही रहें ताकि आप दुर्घटनावश कहीं पूरी तरह तैयार होने से पहले ही, अपना वायरस रिलीज़ न कर बैठें। वायरस के फैलने के प्रभाव को देखने के लिए टेस्ट मशीनों को आइसोलेटेड (isolated) नेटवर्क में ही रखिए।
- जब आप अपने वायरस को टेस्ट मशीनों पर काम करते हुये देख रहे हों तभी समय-समय पर आवश्यकतानुसार उनका कोड एडजस्ट (Adjust) करते रहिए। अगर कोई परेशानी सामने आए तो उसका वहीं समाधान कर दीजिये।
-
अपने वायरस को रिलीज़ करिए: अगर आप अपने वायरस के काम से संतुष्ट हों, तब समझ लीजिये कि उसे रिलीज़ करने का समय आ गया है। मगर, ऐसा करने से पहले, खुद से पूछ लीजिये कि एक बार उसे खुला छोड़ देने के जो नतीजे होंगे, आप उनका सामना करने को तैयार हैं। बेहतर तो यह होगा कि उस अनुभव का फ़ायदा नए प्रोजेक्टों पर काम में लगाया जाए। [२] X रिसर्च सोर्स
चेतावनी
- मैलीशियस कोड को खुला छोड़ देना अपराध है! यह गाइड केवल शिक्षा के उद्देश्य से है!
- याद रखिएगा, वायरस फैलाने के लिए आपको जेल हो सकती है, और आपको पुलिस गिरफ़्तार कर सकती है।