در حدود 20 سال پیش وقتی بنده در دوران کودکی بودم،از روی کنجکاوی و بر اساس شنیده های خود،از مادرم پرسیدم:مامان ویروس کامپیوتر چیه؟در آن زمان که البته مادر بنده یک معلم مدرسه بود،پس از کمی فکر کردن به من گفت:مثل ویروس های آدما میمونه کامپیوتر رو مریض می کنه.اما وقتی که چهره پر از سوال من رو برای دوم دید،گفت:مثل کپک که یک مواد غدایی رو خراب میکنه!
تاریخچه ویروس ها
اولین تحقیق واقعی علمی و آکادمیک بر روی ویروسها توسط فرد کوهن در سال 1983، با نام ویروس که توسط لِن آدلمن ابداع شده بود، انجام شد. بعضاً از کوهن به عنوان (پدر ویروسهای کامپیوتری) نام برده میشود، اما واقعاً ویروسهایی بودند که قبل از شروع تحقیقات او تولید شده بودند. ویروس Elk Cloner نوشته شده توسط ریچ اسکرنتا در سال 1982 در گردش بود و ویروسهای تولید شده توسط جو دلینگر نیز بین سالهای 1981 تا 1983 ساخته شده بودند؛ که همهی آنها برای پلتفرمهای Apple II بودند. برخی منابع یک نقص فنی در Arpanet را در سال 1980 به عنوان اولین ویروس ذکر میکنند، اما آن فقط یک کد قانونی و مجاز بود که اشتباه کار میکرد و تنها مسألهای که ایجاد میکرد این بود که دادهها را در بستههای شبکه پخش میکرد. ویروسهای گریگوری بنفورد، تنها به به داستانهای علمیاش ختم نشد. او در سال 1969 ویروسهای غیر مخرب خود را در جایی که امروزه (آزمایشگاه ملی لیورمور لارنس) خوانده میشود و در Arpanet اولیه تولید و منتشر کرد.
نرمافزار ضدویروس (Anti-Virus) که با نامهای ویروسیاب و ویروسکش و ضد بدافزار هم شناخته میشود، نرمافزاری است که با مشاهده و بررسی محتوای پروندهها به دنبال الگوهای آشنای بدافزار شامل ویروسها یا کرمهای اینترنتی میگردند. در صورت مشاهده این الگوها که به آن امضای ویروس (Virus Signature) گفته میشود، از ورود آن به کامپیوتر شما و اجرا شدناش جلوگیری میکنند و یا به شما هشدار لازم را میدهند و از شما دستور میگیرند که آیا فایل را حذف کنند و یا سعی نمایند آن را اصلاح و پاکسازی کنند.نرمافزار آنتی ویروس سه وظیفه عمده را انجام میدهند:۱. بازرسی یا کشف، ۲. تعیین هویت یا شناسایی، و ۳. آلودگیزدایی یا پاکسازی.
شرکتهای سازنده نرمافزارهای ضدویروس، با ساخته شدن ویروسهای جدید، الگوهای نرمافزاری آنها را کشف و جمعآوری میکنند و به همین علت اغلب لازم است تا این نرمافزارها هر از چندگاهی بهروزرسانی (Update) شوند تا الگوهای جدید ویروسها را دریافت کنند.ویروسهای کامپیوتری برنامههایی دارای درجهای از هوشمندی هستند و روشهای بسیاری وجود دارد که توسط آنها اطلاعاتی از کامپیوتر شما به نویسنده ویروس یا افراد سودجوی دیگر ارسال شود. بهعنوان مثال، شما در حال نگاه کردن به یک فیلم روی اینترنت هستید، یا در حال خواندن یک نامه و بسیاری کارهای عادی دیگر… و بدون آنکه بدانید در همان زمان به ویروسی اجازه دادهاید تا کامپیوتر شما را بررسی و تحلیل کند. بسیاری از اوقات هنگامی که شما آنها را شناسایی میکنید و از بین میبرید، خبر ندارید که ویروس برای ورود مجدد و فعال شدن در کامپیوتر شما قبلاً چاره لازم را اندیشیده است و راههای دیگری (Backdoors) برای حمله مجدد به کامپیوتر یا شبکه کامپیوتری شما ایجاد کرده است.
راه های ورود بدافزارها به سیستم
راههای مختلفی برای ورود ویروسها به کامپیوتر کاربران وجود دارد.درایو های ODD و دیسک هایی که درون آن قرار می گیرد،بدافزارهایی که از طریق ایمیل برای کاربران ارسال می شود،ورود به وب سایت و دامنه های آلوده،دریافت فایل های آلوده از طریق دانلود های اینترنتی،اتصال فلش درایوهای آلوده که از طریق اینترفیس USB به کامپیوتر متصل می گردد،اجرای نرم افزارهای آلوده و نصب آنها،فایل های ناشناسی که از طریق شبکه های اجتماعی برای شما ارسال می گردد و…از جمله مهمترین مواردی که یک بد افزار از طریق آن،به کامپیوتر و یا حتی گوشی موبایل شما وارد می شود.
اهداف یک ویروس و یا بد افزار چیست؟
ویروس و بد افزارها با اهداف متفاوتی سیستم شما را هدف قرار می دهد.یکی از مهمترین آنها،دزدی اطلاعات است.امروزه سیستم های دفاعی در سامانه های آنلاین مانند پرداخت های اینترنتی بسیار پیشرفت کرده اند.به عبارت ساده نمی توان به آسانی گذشته،رمزهای عبور را از کامپیوتر و گوشی های موبایل سرقت کرد.در نتیجه هکرها نیاز به دریافت یک سری اطلاعات پایه از سیستم شما دارند.درست در همین زمان است که آنها یک بد افزار را در قالب های ناشناس تولید کرده و به صورت ایمیل و یا یک فایل،برای شما ارسال می کنند.کاربران پس از کلیک بر روی آن و پیمودن مقداری از مسیر Wizard،اجازه فعالیت فایل را بر روی سیستم صادر می کنند.آن وقت است که فایل ناشناس اطلاعات مورد نظر را برای هکرها ارسال خواهد کرد.به عنوان مثال آخرین دبیرستانی که در کالیفرنیا طعمه این اتفاق بود،از همین راه و پس از ارسال بدافزار برای کامپیوتر مدیریت آلوده شده و رمزهای عبور را برای هکر ارسال کرد.
اخلال در عملکرد عادی کامپیوتر و یا اجرای فرامین اشتباه نیز از جمله آنها است.برای این بخش هم می توان به ویروس “استاکس نت” نت اشاره کرد.این بدافزار کامپیوترهای حداقل 7 کشور از جمله ایران،هند،پاکستان،ایالات متحده و اندونزی را آلوده کرد.این ویروس به منظور ایجاد اخلال در سیستم های غنی سازی اورانیوم طراحی شده بود.یک بدافزار مشابه می تواند علاوه بر ایجاد اخلال،عملکرد راکتورها را مورد حمله قرار داده و فجایع وحشتناکی را پدید آورد!
هدف دیگر یک ویروس و یا بد افزار،اخلال در کارکرد صحیح یک کامپیوتر است.متاسفانه این دسته از ویروس ها امروزه به وفور یافت می شوند و کامیپوترهای بسیاری را آلوده می کنند.برخی از کارشناسان و کاربران حرفه ای معتقد هستند که برخی از تولید کنندگان آنتی ویروس،در تولید ویروس ها دخیل هستند.بدین ترتیب نیاز کاربران برای تهیه یک آنتی ویروس بیشتر می گردد.
نوع دیگری از اهداف ویروس ها،حمله به سامانه های شبکه ای است.شبکه های کامیپوتری از توپولوژی و الگوهای متفاوت در تمامی نقاط جهان موجود هستند.هدف قرار دادن یک شبکه کامپیوتری می تواند به منزله آلوده کردن تمامی کامپیوترها باشد.اطلاعات در گردش شبکه ها می تواند آلوده و یا دزدیده شود.
پاک کردن و یا تخریب اطلاعات نیز از جمله اهداف یک ویروس برشمرده می شود.
ویژگی های یک آنتی ویروس
همانطور که برای هر محصولی (چه نرمافزاری و چه سختافزاری) آزمونهایی وجود دارد که کیفیت و شایستگی آن را تعیین میکند، چنین سنجشهایی برای یک نرمافزار ضد ویروس هم وجود دارد. یکی از آزمونها با نام آزمون DURCH شناخته میشود که نام آن سرواژهای است که از حروف ابتدایی بخشهای پنچگانه این آزمون تشکیل شدهاند. بنابر آزمون DURCH یک نرمافزار ضدویروس مناسب باید بتواند به نیازهای زیر پاسخ دهد:
آزمون درخواست (Demand): باید بتواند هنگامی که میخواهید به یک پرونده یا صفحهٔ اینترنتی یا یک رایانامه دسترسی یابید، آن را بررسی کند.
آزمون بهروزرسانی (Update): به این معنی که نرمافزار باید بتواند در بازههای زمانی مشخص بانک اطلاعاتی خود که شامل امضای ویروسها است را بروز کند.
آزمون واکنش (Respond): اینکه نرمافزار بتواند تمامی رفتارهای منطقی در برخورد با یک ویروس را از خود نشان دهد. پرونده آلوده را دوبارهسازی و تمیز کند و یا آن را حذف نماید.
آزمون وارسی (Check): باید بتواند تمام فایلها از نوع مختلف که میتوانند محلی برای پنهان شدن ویروس باشند را کنترل کند.
آزمون اکتشاف (Heuristics): به این معنی که نرمافزار باید با وجود نداشتن الگوی همه ویروسها، بتواند خطر و احتمال وجود ویروس را تشخیص دهد. این رفتار نیازمند هوشمندی نسبی نرمافزار و استفاده آن از روشهای اکتشافی است.
تمامی این آزمون ها جزو مراحلی است که در رنکینگ آنتی ویروس ها مورد ارزیابی قرار می گیرد.
آنتی ویروس های آفلاین
بعضی از سایر نرمافزارها نیز عملکردی مشابه نرمافزارهای ضد ویروس دارند. به طور مثال، یک نرمافزار میتواند با کنترل و تحلیل محتویات تمامی دیسکهای یو اس بی که به رایانه متصل میشوند، با ویروسهای خود اجرا شونده (Autorun) مقابله کند. این ابزارها معمولا دارای بانک اطلاعاتی از امضای ویروسها نبوده و نیازمند به روزرسانی نیستند. از این رو، به آنها ضد ویروس برون خط (Offline anti-virus) نیز اطلاق میگردد.
برخی از فایل ها
در ذیل فهرست پسوندهای رایج فایلهای اجرایی ارائه شده است و اکثر نرمافزارهای ضد ویروس در حالت عادی (بدون تنظیمات خاص) این فایلها را ویروسیابی میکنند (البته در برخی برنامههای ضد ویروس ممکن است برخی پسوندها حذف یا اضافه شوند) : .com ، .exe ، .dll ، .ovl ، .bin ، .sys ، .dot ، .doc ، .vbe ، .vbs ، .hta ، .htm ، .scr ، .ocx ، .hlp ، .eml
ویروس ها به چندین دسته تقسیم می شوند که از جمله آنها می توان به موارد ذیل اشاره کرد؛ویروسهای فایلی (File Viruses)، ویروسهای ماکرو (Macro Viruses)، ویروسهای بوت و پارتیشن سکتوری (Boot Sector and Partition Table Viruses)، ویروسهای اسکریپتی (Script Viruses)، ویروسهای مقیم در حافظه (Memory Resident Viruses)، ویروسهای مخفیکار (Stealth Viruses)، ویروسهای فعالشونده بر اساس رویداد خاص(Triggered Event Viruses)، ویروسهای چندشکلی (Polymorphic Viruses) و…