چکیده
امروزه با توجه به فراوانی ویروس های کامپیوتری از یک طرف و صدمات حاصل از انتشار آنها از سویی دیگر شناخت و نحوه مبارزه با آنها بسیار حائز اهمیت می باشد . در این مقاله آشنایی با نحوه عملکرد ویروسهای کامپیوتری بیان شده است .
مقدمه
امروزه با توجه به تعدد ویروس های کامپیوتری در کشور،که اغلب آنها نیز ایرانی می باشند، شناخت و جلوگیری از تخریب آنها مفید ولازم به نظر می رسد . پیش از هر گونه بحث فنی لازم است توضیحی در مورد ویروس و خوب وبد بودن ویروس سازی از دیدگاه مثبت آن بررسی شود تا مبادا افراد بد گمان و احتمالا متنفر از ویروس ، سیل بدو بیراه خود را نثار ویروس نویسان! کنند بد نیست بدانیم جدای از هنر و تکنیک زیبای عملکرد ویروس های مختلف و شیرینی جدال با ویروس یابها ، خود ویروس عاملی برای حمایت از برنامه های کاربردی می توامند به شمار آید، چرا که اولین ویروس ها در راه جلوگیری از کپی برداریهای غیر مجاز طرح و نوشته شده و زمان فعالیت آن را موکول به وقتی کرده اند که فرد خاطی از " خواهش عدم کپی غیر مجاز" نیاز به گوش مالی دارد ! تا شاید همین فرد عادت به خرید و تهیه ی برنامه های مورد استفاده خود از طریق اصولی بنماید.
واما ویروس ها برنامه هایی هستند که به شکل پنهانی، موقع اجرا شدن برنامه آلوده خود را به برنامه های اجرایی نظیر فایل های COM و EXE می چسبانند و معمولا بدون اینکه تاثیری در کار اصلی برنامه آلوده بگذارند، منتظر زمان فعالیت نهایی یا برقراری شرط خاصی می شوند . حال این فعالیت می تواند بزرگتر کردن فایلهای مختلف DATA باشد ، یا آلوده کردن فایلهای اجرایی و یا از بین بردن اطلاعات PARTITION TABLE، معدوم کردن اطلاعا ت با ارزش یا از کار انداختن فایل های اجرایی و ... باشد .
ولی در هر حال یک چیز در اکثر ویروس ها مشترک می باشد و آن انتقال ویروس از فایل های آلوده به فایل های سالم است .
ویروس ها برنامه کامپیوتری هستند و نه چیز دیگری و می توانند با انواع زبان های برنامه سازی Assenbly، C++، Pascal،Basic، ... طراحی شوند و ما از قویترین زبان یعنی اسمبلی جهت اینکاراستفاده کرده ایم
چگونه ویروس ها کار می کنند.
ویروس های کامپیوتری برنامه های پارازیته ای هستند که توسط افراد به طور عمد نوشته می شوند و راه عملکرد کامپیوتر شما را بدون دانش و اجازه شما تغییر می دهند. ویروس کپیی از خود را به دیگر فایل ها می دهد، وقتی ویروس فعال شد، ممکن است به فایل آسیب رسد، موجب رفتار های نامنظم سیستم و یا نشان دادن پیغام هایی شوند.
ویروس های کامپیوتری فایل های سیستم و سند هایی را که شما توسط برنامه های مختلف به وجود آورده اید، آلوده می کند.
بعضی از ویروس های سیستم، طوری طراحی شده اند که برنامه ها را خراب کنند، به فایل ها آسیب برسانند و اطلاعات دیسک ها را پاک کنند
ویروس ها چگونه منتشر می شوند
اگر کسی چیزی در مورد کامپیوتر ها نداند این را می داند که ویروسها مخرب هستند و باید کامپیوتر خود را در برابر هجوم آنها حافظت کند. کمپانی های ضد ویروس ( آنتی ویروس ) تعداد زیادی ویروس را ساپورت می کنند. ولی هیچ کدام از آنها کامل نیستند. آنتی ویروسهای امروزی بیشتر عمل حفاظت را به طور واکنشی انجام می دهند تا به صورت کنشی. یعنی برای برای اینکه آنتی ویروس شما متوجه ویروس جدید در کامپیوتر شود باید تا آخرین بیت وارد کامپیوتر شما شود و شروع به فعالیت کند. سناریوی پخش یک ویروس جدید در اینترنت و عکس العمل شرکت های آنتی ویروس در برابر آن به صورت زیر است:
ابتدا یک ویروس به طور متوسط صد هزار کامپیوتر را مورد هجوم قرار می دهد.
سپس شرکت های آنتی ویروس شروع به ساختن پکیج برای آنها می کنند.
در مرحله بعد این پکیج در اختیار عموم قرار می گیرد.
مشکل این است که ممکن است کامپیوتر شما قبل از ساختن این پکیج مورد حمله قرار گیرد. مشکل دیگر این است که اکثر افراد آنتی ویروس کامپیوتر خود را « به روز » یا « up to date » نمی کنند. کمپانی های ضد ویروس بیشتر به صورت اکتشافی عمل می کنند. و این کار را بوسیله برنامه های آشکار سازی انجام می دهند. این برنامه ها کلیه اعمالی را که در کامپیوتر بوسیله برنامه های دیگر انجام می شود تحت نظر می گیرند و هر گاه این اعمال با کارهایی که یک ویروس در کامپیوتر انجام می دهد مطابقت کند آن را به عنوان یک ویروس شناسایی می کنند.سپس جلوی فعالیت آن را می گیرند و همچنین وجود ویروس را به کاربر گوشزد می کنند. با عمل کردن این برنامه آشکار ساز در نرم افزار آنتی ویروس هر گاه یک برنامه فعالیت مشکوکی انجام دهد به کاربر هشدار می دهد و احتمالاً جلوی انتشار ویروس گرفته می شود. این عمل باعث می شود کامپیوتر ها کمتر آلوده شوند.
نرم افزار آنتی ویروس باید به گونه ای تنظیم شود که که روزانه به طور اتوماتیک اجرا شود که شامل به روز کردن و اسکن کردن است.
برنامه های اکتشافی (Heuristics ) این فرصت را می دهند که زودتر جلوی انتشار ویروس ها گرفته شود. هر چند استفاده از این برنامه ها یک راه صددرصد فراگیر نیست. ولی بسیار مشکل گشا است. و حساسیت این برنامه ها به تنظیم سطح حفاظت ( Level Setting ) در نرم افزار آنتی ویروس بستگی دارد. یعنی آنتی ویروسی که در کامپیوتر شما نصب شده است و تنظیمات آن به کشف ویروسها کمک می کند.
انواع دستکاری و تخریب ویروس های کامپیوتری
صرف نظر از ویروس هایی که کاربران را مورد لطف قرارداده و تنها با صدورپیامی، نمایش تصویری و یا پخش موزیکی حضور خود را اعلام می کنند،سایر ویروس ها به گونه های مختلف باعث نابودی اطلاعات و در برخی موارد باعث خرابی سخت افزار کامپیوتر می شوند. در زیر نمونه هایی از خسارات ویروس ها بیان می شود:
الف: اختلال در کار سیستم(تخریب نرم افزاری)
در این حالت ویروس با ایجاد خطا دربرنامه موجب اختلال در اجرای آن می شود. این اختلال گاه همراه با تصویری بر روی صفحه نمایش و یا صدای خاصی بلندگو یا قفل شدن کامپیوتر می باشد .
بعضی از دلایل اختلال در سیستم بدلیل ویروس ها عبارتند از :
1-خطاهای برنامه نویسی توسط برنامه نویس ویروس
2 - ناسازگاری ویروس با سیستم یا نرم افزارهای نصب شده بر روی آن
3- تخریب اطلاعات که شامل حذف، تغییر ویا اشغال و تکثیر در حافظه
4- اختلال عمدی سیستم توسط ویروس(اهداف نویسندگان ویروس) که به عنوان مثال می توان به کندی سرعت سیستم اشاره کرد
ب:تخریب سخت افزرای
عده ای معتقدند که ویروس ها نمی توانند به سخت افزار آسیب برسانند وتا به امروز، هیچ ویروسی پیدا نشده است که که این کار را انجام دهد. ولی در خلاف انتظار از بین بردن سخت افزار توسط برنامه های نرم افزاری امکان پذیر و عملی است . گرچه خسارات سخت افزاری در موارد اندکی توسط ویروسها وجود دارد ولی باید آنها را جدی گرفت . به عنوان مثال کامپیوترهای سری آمیگا از شرکت کمو دور، به خاطر نداشتن کنترل در قسمت های مختلف در مقابل ویروس آسیب پذیرند.
در این کامپیوتر ها می توان به کمک نرم افزار ،موتور دیسک گردان را از حرکت باز داشت و همزمان فرمان خواندن یک تراک که وجو ندارد ، را به هد داد به این ترتیب هد به دیواره های دیسک گردان برخورد کرده و می شکند . نمونه دیگر این است که CPU و Icهای آمیگا از جمله اگنس ، دنیس و پائولا از نوع CMOS بوده و در مقابل الکتریسیته حساس هستند . اگر همزمان به تمام ورودیهای بیت یک اعمال می شود ولتاژ اضافی باعث خرابی ICها می شود.به کمک یک برنامه کوتاه چند خطی به زبان ماشین می توان کلیه ثباتهایی که به نام CPU می روند را حاوی بیت یک نمود و CPU را خراب کرد