কম্পিউটার ভাইরাস প্রােগ্রাম লেখার অনেক আগে 1949 সালে কম্পিউটার বিজ্ঞানী জন ভন নিউম্যান এ বিষয়ে আলােকপাত করেন। তার স্ব - পুনরুৎপাদিত প্রােগ্রামের ধারণা থেকে ভাইরাস প্রােগ্রামের তখন সেটিকে ভাইরাস বলা হতাে না আবির্ভাব। পুনরুৎপাদনশীলতার জন্য এই ধরনের কম্পিউটার প্রােগ্রামকে ভাইরাস হিসেবে প্রথম সম্বােধন করেন আমেরিকার কম্পিউটার বিজ্ঞানী ফ্রেডরিক বি কোহেন। জীবজগতে ভাইরাস পােষক দেহে নিজেই পুনরুৎপাদিত হতে পারে । ভাইরাস প্রােগ্রামও নিজের কপি তৈরি করতে পারে। সত্তর দশকেই , ইন্টারনেটের আদি অবস্থা , আরপানেট "ARPANET" - এ ক্রিপার ভাইরাস নামে একটি ভাইরাস চিহ্নিত করা হয় । সে সময় রিপার "Reaper" নামে আর একটি সফটওয়্যার তৈরি করা হয় যা ক্রিপার ভাইরাসকে মুছে ফেলতে সক্ষম ছিল। সে সময় যেখানে ভাইরাসের জন্ম হতাে সেখানেই সেটি সীমাবদ্ধ থাকত। 1982 সালে এক ক্লোনার "ELK CLONER" ফ্লপি ডিস্ক ব্যবহারের মাধ্যমে সারা পৃথিবীতে ছড়িয়ে পড়ে। তবে ভাইরাসের বিধ্বংসী আচরণ প্রথম প্রকাশিত হয় ব্রেইন ভাইরাসের মাধ্যমে 1986 সালে। পাকিস্তানি দুই ভাই লাহােরে এই ভাইরাস সফটওয়্যারটি তৈরি করেন। এর পর থেকে প্রতিবছরই সারাবিশে অসংখ্য ভাইরাসের সৃষ্টি হয়। বিশ্বের ক্ষতিকারক ভাইরাস ও ম্যালওয়্যারের মধ্যে কয়েকটি হলাে যেমন: ব্রেইন, তিয়েনা, জেরুজালেম, পিংপং, মাইকেল এঞ্জেলাে, ডার্ক এভেঞ্জার, সিআইএইচ, জানাকুনিকোভা, কোড ব্লেড ওয়ার্ম, নিমড়া, ডাপট্রেসি ওয়ার্ম ইত্যাদি।
কমিউটার ভাইরাস
কম্পিউটার ভাইরাস হলাে এক ধরনের ক্ষতিকারক সফটওয়্যার বা ম্যালওয়্যার যা পুনরুৎপাদনে সক্ষম এবং এক কম্পিউটার থেকে অন্য কম্পিউটারে সংক্রমিত হতে পারে। অনেকে ভুলভাবে ভাইরাস বলতে সব ধরনের ম্যালওয়্যারকে বুঝিয়ে থাকে যদিও অন্যান্য ম্যালওয়্যারের যেমন চপাইওয়্যার বা এডওয়্যারের পুনরুৎপাদন ক্ষমতা নেই। কমিপউটার ভাইরাস কম্পিউটার সিস্টেমের নানা ধরনের ক্ষতি করে থাকে। এর মধ্যে দৃশ্যমান ক্ষতি যেমন কম্পিউটারের গতি কমে যাওয়া, হ্যাং হয়ে যায়, ঘন ঘন রিবুট "Reboot" হওয়া ইত্যাদি। তবে বেশিরভাগ ভাইরাসই ব্যবহারকারীর অজান্তে তার সিস্টেমের ক্ষতি করে থাকে। কিছু কিছু ভাইরাস সিস্টেমের ক্ষতি করে না কেবল ব্যবহারকারীর দৃষ্টি আকর্ষণ করে। সিআইএইচ CIH নামে একটি সাড়াজাগানাে ভাইরাস প্রতিবছর 26 এপ্রিল সক্রিয় হয়ে কম্পিউটার হার্ডডিস্ককে ফরম্যাট করে ফেলতাে। বর্তমানে এটি নিস্ক্রিয় রয়েছে।
ভাইরাসের প্রকারভেদ
পুনরুৎপাদনের জন্য যেকোনাে প্রোগ্রামকে অবশ্যই তার কোড চালাতে "execute" এবং মেমােরিতে লিখতে সক্ষম হতে হয় । যেহেতু কেউ জেনে - শুনে কোনাে ভাইরাস প্রােগ্রাম চালাবে না সেহেতু ভাইরাস তার উদ্দেশ্য পূরণে একটি সহজ পদ্ধতি বেছে নেয়। যে সকল প্রোগ্রাম ব্যবহারকারী নিয়মিত চালিয়ে থাকে যেমন লেখালেখির সফটওয়্যার সেগুলাের কার্যকরী ফাইলের পেছনে ভাইরাসটি নিজের কোডটি ঢুকিয়ে দেয়। যখন কোনাে ব্যবহারকারী ওই কার্যকরী ফাইলটি চালায় তখন ভাইরাস প্রােগ্রামটিও সক্রিয় হয়ে উঠে । কাজের ধরনের ভিত্তিতে ভাইরাসকে দুইভাগে ভাগ করা হয়। কোনাে কোনাে ভাইরাস সক্রিয় হয়ে ওঠার পর অন্যান্য কোন কোন প্রােগ্রামকে সংক্রমণ করা যায় সেটি খুঁজে বের করে। তারপর সেগুলােকে সংক্রমণ করে এবং পরিশেষে মূল প্রােগ্রামের কাছে নিয়ন্ত্রণ দিয়ে নিষ্ক্রিয় হয়ে যায়। এগুলােকে বলা হয় অনিবাসী ভাইরাস "Non - Resident Virus" । অন্যদিকে কোনাে কোনাে ভাইরাস সক্রিয় হওয়ার পর মেমােরিতে স্থায়ী হয়ে বসে থাকে। যখনই অন্য কোনাে প্রােগ্রাম চালু হয় তখনই সেটি সেই প্রােগ্রামকে সংক্রমিত করে । এ ধরনের ভাইরাসকে বলা হয় নিবাসী ভাইরাস "Resident Virus"।
ম্যালওয়্যার থেকে নিষ্কৃতি পাওয়ার উপায়
বিশেষ ধরনের কম্পিউটার প্রােগ্রাম ব্যবহার করে ভাইরাস ওয়ার্ম কিংবা ট্রোজান হর্স ইত্যাদি থেকে নিষ্কৃতি পাওয়া যায়। এগুলােকে বলা হয় এন্টি - ভাইরাস বা এন্টি - ম্যালওয়্যার সফটওয়্যার। বেশিরভাগ এন্টি ভাইরাস সফটওয়্যার বিভিন্ন ম্যালওয়্যারের বিরুদ্ধে কার্যকরী হলেও প্রথম থেকে এন্টি - ভাইরাস সফটওয়্যার নামে পরিচিত বাজারে প্রচলিত প্রায় সকল এন্টি - ভাইরাস সফটওয়্যার ভাইরাস ভিন্ন অন্যান্য ম্যালওয়্যারের বিরুদ্ধে কার্যকরী। সকল ভাইরাস প্রােগামের কিছু সুনির্দিষ্ট ধরন বা প্যাটার্ন রয়েছে। এন্টিভাইরাস সফটওয়্যার এই সকল প্যাটার্নের একটি তালিকা সংরক্ষণ করে। সাধারণত গবেষণা করে এই তালিকা তৈরি করা হয়। যখন এন্টিভাইরাস সফটওয়্যারকে কাজ করতে দেওয়া হয়, তখন সেটি কম্পিউটার সিস্টেমের বিভিন্ন ফাইলে বিশেষ নকশা খুঁজে বের করে এবং তা তার নিজস্ব তালিকার সঙ্গে তুলনা করে। যদি এটি মিলে যায় তাহলে এটিকে ভাইরাস হিসাবে শনাক্ত করে। যেহেতু বেশিরভাগ ভাইরাস কেবল কার্যকরী ফাইলকে সংক্রমিত করে কাজেই সেগুলােকে পরীক্ষা করেই অনেকখানি আগানাে যায়। তবে এ পদ্ধতির একট বড় ত্রুটি হলাে তালিকাটি নিয়মিত হালনাগাদ না হলে ভাইরাস শনাক্ত করা কঠিন হয়ে পড়ে। সেজন্য অনেক এন্টি - ভাইরাস সফটওয়্যার কম্পিউটারের সকল প্রােগ্রামের আচরণ পরীক্ষা করে ভাইরাস শনাক্ত করার চেষ্টা করে। এতে সমস্যা হলাে যে সফটওয়্যার সম্পর্কে এন্টি - ভাইরাস সফটওয়্যারটি আগে থেকে জানে না সেটিকে ভাইরাস হিসাবে চিহ্নিত করে যা ক্ষতিকর। এ কারণে বিশ্বের জনপ্রিয় এন্টি - ভাইরাস সফটওয়্যারগুলো প্রথম পদ্ধতি ব্যবহার করে থাকে। এন্টি - ভাইরাস সফটওয়্যারের মধ্যে জনপ্রিয় কয়েকটি হলাে যেমন: নরটন, অ্যাভাস্ট, প্যান্ডা, কাসপারেস্কি, মাইক্রোসফট সিকিউরিটি এসেনসিয়াল ইত্যাদি।