دوشنبه, ۱۵ بهمن, ۱۴۰۳ / 3 February, 2025
مجله ویستا

چگونه یك ضد ویروس مناسب انتخاب كنیم


چگونه یك ضد ویروس مناسب انتخاب كنیم

در دنیای شبكه ای امروز, لزوم داشتن یك نرم افزار ضدویروس قدرتمند كه كامپیوتر ما را از انواع ویروس ها, كرم ها, بمب های منطقی و به طور كلی كدهای مخرب مصون بدارد, بیش از هر زمان دیگری احساس می شود

در دنیای شبكه‌ای امروز، لزوم داشتن یك نرم‌افزار ضدویروس قدرتمند كه كامپیوتر ما را از انواع ویروس‌ها، كرم‌ها، بمب‌های منطقی و به‌طور كلی كدهای مخرب مصون بدارد، بیش از هر زمان دیگری احساس می‌شود. خوشبختانه (شاید هم متأسفانه) انتخاب‌های متعددی در این زمینه وجود دارد. ولی واقعاً كدام یك از آن‌ها می‌تواند بهتر مشكل كامپیوتر (یا كامپیوترهای شبكه) ما را حل كند؟ كافی است سری به سایت‌های مربوط به فروشندگان این نوع نرم‌افزارها بزنید. به نظر می‌رسد كه همه آن‌ها از بهترین‌ها هستند. و همه آن‌ها در تمام طول سال و در تمام ۲۴ ساعت شبانه‌روز خدمات خود را ارایه می‌دهند. از طرفی به دلیل بازار رقابتی موجود، هیچكدام از آن‌ها اطلاعات دقیقی از نرم‌افزارخود ارایه نمی‌دهند. شما چه یك متخصصIT باشید و چه یك كاربر معمولی، ممكن است به دلیل نداشتن اطلاعات صحیح برای انتخاب ضدویروس مناسب خود با مشكل مواجه می‌شوید. بنابراین بسیار مهم است كه بدانید ضدویروس‌ها چگونه كار می‌كنند و در واقع عوامل مهم برای انتخاب آن‌ها كدامند.

ضدویروس‌ها چگونه كار می‌كنند؟

اولین قدم جهت انتخاب یك ضدویروس مناسب آشنایی با كاركرد ضدویروس‌ها می‌باشد.پس از آشنایی با خصوصیات یك ضدویروس، واژگانی كه در این زمینه استفاده می‌شود، را خواهید شناخت. این‌كه بدانید ضدویروس چه كارهایی می‌تواند انجام بدهد و چه كارهایی نمی‌تواند انجام دهد، به شما كمك می‌كند كه انتظارات معقولی از آن داشته باشید.

یك ضدویروس چگونه ویروس‌ها را شناسایی می‌كند؟

روش‌های مختلفی برای شناسایی ویروس‌ها وجود دارد. ویروس‌ها (به‌طور معمول) چیزی بیشتر از كد یك برنامه نیستند. بنابراین اگر ما بدانیم كه هر كدی چه كاری انجام می‌دهد قادر خواهیم بود كه كد حامل ویروس را به محض رویت شناسایی كنیم.این كار اولین عملی است كه انجام می‌گیرد و به نام Signature Matching معروف است. نرم‌افزارهای ضدویروس كه به این روش كار می‌كنند دارای یك بانك اطلاعاتی هستند كه شامل Virus signatureها است و به محض این‌كه كدی را ملاحظه كرد كه معادل یكی از ركوردها باشد آن را به عنوان ویروس شناسایی می‌كند. به نظر می‌رسد كه موثرترین راه برای كشف ویروس‌ها همین باشد. روش فوق ذاتاً به‌گونه‌ای است كه اول ویروس را شناسایی می‌كند و بعد متناظر با آن یك ركورد (virus signature) به بانك اطلاعاتی اضافه می‌كند و حالا اگر ویروسی پیدا كند، در صورتی‌كه متناظر با این ویروس ركوردی در بانك اطلاعاتی باشد قادر به شناسایی آن خواهد بود و همین امر ایجاب می‌كند شركت‌هایی كه از این فناوری در نرم‌افزار خود استفاده می‌كنند مدام آن را بروز نگه دارند. به هر حال این یك نقطه ضعف می‌باشد و برای فائق آمدن بر آن دو روش دیگر در نرم‌افزارهای ضدویروس معرفی شده است.

۱- Heuristic method (روش‌ مكاشفه‌ای)

فلسفه Heuristic این است كه بتوانیم ویروس‌هایی را شناسایی كنیم كه هنوز Virus Signature آن‌ها در بانك اطلاعاتی موجود نمی‌باشد. این كار با استفاده از یك بانك اطلاعاتی كه ركوردهای آن حاوی Virus behavior signature می‌باشد قابل انجام است. ركوردهای این بانك اطلاعاتی امضای ویروس خاصی را نگهداری نمی‌كنند بلكه بیشتر رفتارهای (رفتار بد) ویروس‌ها را ذخیره می‌كنند. مثلاً این‌كه هر كجا تشخیص بدهند كدی قصد پاك كردن Boot Sector را دارد از آن جلوگیری می‌كنند.

الگوریتم‌هایHeuristic به دو صورت پیاده‌سازی می‌شوند:

● اگر تكنولوژی Heuristic كد هر برنامه را با Virus behavior Signature مقایسه كند و مورد آنالیز قرار دهد آن را روش static heuristic می‌نامیم.

● در بعضی مواقع این تكنولوژی قطعه كد را در یك ماشین مجازی اجرا می‌كند تا نتایج رفتاری آن را ببیند به این روش dynamic heuristic می‌گوییم. این روش ممكن است نتایج غلطی نیز تولید كند.

Integrity checksum (جامعیت سرجمع)

در روش integrity checksum، فرض براین است كه ویروس قصد اعمال تغییراتی در فایل دارد. مثلا‌ً یك ویروس می‌خواهد كه روی یك فایل چیزی بنویسد یا این‌كه خودش را به آخر فایلی اضافه كند. در این روش نرم‌افزار checksum فایل غیرویروسی و یا درایورهای تمیز را ذخیره می‌كند و هرگاه كه تغییری در این checksum مشاهده شود متوجه می‌شود كه احتمال دارد ویروسی این كار را انجام داده باشد. در این روش نیز احتمال تولید نتایج غلط وجود دارد. این روش در مقابله با ویروس‌های ماكرویی یا ویروس‌های مانند code Red كه بدون این‌كه در هیچ فایلی ذخیره شوند در حافظه بارگذاری و اجرا می‌شوند، كارایی چندانی ندارد. اگر یك كد مزاحم از تمام الگوریتم‌های یك ضدویروس كه تاكنون نام بردیم بگذرد، در گام آخر توسط فناوری دیگری به نام Activity Blocker از فعالیت آن جلوگیری می‌شود. این تكنولوژی از تمام فعالیت‌هایی كه ممكن است توسط یك كد مخرب صورت بپذیرد جلوگیری می‌كند مثلاً اگر تشخیص دهد كه هارددیسك در حال فرمت شدن است از آن جلوگیری می‌كند.

یك ضدویروس چه موقع ویروس‌ها را شناسایی می‌كند؟

معمولاً ضدویروس‌ها به دو روش می‌توانند ویروس‌ها را شناسایی كنند.

در روش اول ضدویروس، به صورت Real Time (بلادرنگ) و همان موقع كه فایل مورد دسترسی قرار می‌گیرد عمل می‌كند. در این روش، ضدویروس درون حافظه مقیم می‌شود و تمام فعالیت‌های مربوط به سیستم را مورد ارزیابی و بررسی قرار می‌دهد. این نرم‌افزارها با همكاری سیستم‌عامل متوجه می‌شوند كه هم‌اكنون قرار است فایلی مورد دسترسی قرار بگیرد. سریعاً این فایل را بررسی و نتیجه را گزارش می‌دهند. به این روش on-access می‌گویند. مزیت این روش در ارایه یك حفاظت دایمی است ولی اشكالی كه دارد این است كه تنها فایل‌ها را به هنگام دسترسی مورد بررسی قرار می‌دهد. یعنی احتمالاً اگر ویروسی در یك فایل قرار گرفته باشد و در دیسك ذخیره شده باشد، با این روش قابل شناسایی نیست. در روش دوم این امكان به كاربر داده می‌شود كه خودش نرم‌افزار ضدویروس را برای بررسی كردن دیسك یا یك فایل به كمك بگیرد. برای این‌كه فعالیت فوق بازده بهتری داشته باشد باید ضدویروس را طوری تنظیم كرد كه در دوره‌های زمانی معین اقدام به اسكن كند. این روش به on-demand معروف است.

ضدویروس‌ها چه كارهایی را می‌توانند انجام دهند و چه كارهایی را نمی‌توانند انجام دهند؟

۱- محافظت صددرصدی

هیچ ضدویروسی وجود ندارد كه بتواند به صورت صددرصد سیستم شما را در مقابل ویروس‌ها ایمن كند. ویروس‌ها و كدهای مخرب همیشه از ضد‌ویروس‌ها جلو بوده‌اند CodeRed .،Melissa ،Funlove ، Nimda و ویروس‌های زیاد دیگر این فرضیه را ثابت نموده‌اند و البته دلیل پویایی و حیات نرم‌افزارهای ضدویروس نیز همین قضیه می‌باشد. به خاطر دارید كه ضدویروس‌ها برای شناسایی یك ویروس به‌طور معمول نیاز به virus signature دارند و البته هنگامی كه این signature موجود نباشد از روش‌های heuristic استفاده می‌شود كه این روش‌ نیز همیشه جواب درست را برنمی‌گرداند. با این همه، ضدویروس‌ها در مقابل ویروس‌های شناخته شده (بیش از۶۰ هزار عدد) یك حفاظت همه جانبه از سیستم شما به عمل می‌آورند.

بیشتر ضدویروس‌ها در صورت بروز و ظهور یك ویروس جدید قادر خواهند بود كه به سرعت آن را شناسایی كنند و سیستم شما را از وجود این ویروس پاك نگه دارند.

۲- بازسازی فایل‌های ویروسی شده

آیا هر ویروسی كه توسط نرم‌افزار ضدویروس شناسایی شد قابل از بین بردن است؟

بستگی دارد كه عملكرد ویروس چگونه باشد. بعضی از ویروس‌ها مانند ویروس‌های ماكرویی به راحتی توسط نرم‌افزار ضدویروسی تشخیص داده می‌شوند و از فایل بیرون كشیده می‌شوند و پاك می‌شوند. این فایل‌ها هیچ آسیبی به فایل میزبان خود نمی‌رسانند.اما بعضی از ویروس‌های دیگر نیز هستند كه بر روی فایل میزبان چیزی می‌نویسند یا این‌كه اصلاً كدویروس را درون فایل میزبان قرار می‌دهند. یكی از انواع این ویروس‌ها Loveletter است. در این مورد به وضوح دیده می‌شود كه فایل میزبان قابل بازیابی نیست و تنها راه‌حل این است كه این فایل را پاك كنیم. دسته دیگری از ویروس‌ها وجود دارند (مانند ویروس Nimda) كه علاوه بر ایجاد تغییرات بر روی فایل، قابلیت دستكاری فایل‌های سیستم و رجیستری را نیز دارند. در این موارد ضدویروس به تنهایی نمی‌تواند كاری بكند. شما به ابزاری نیاز دارید كه بتواند فایل ویروسی را حذف كند و تغییرات اعمال شده در سیستم شما را به حالت اولیه برگرداند. معمولاً این ابزار كمكی بر روی وب سایت‌های فروشندگان نرم‌افزار ضدویروس موجود می‌باشد.

معیارهای انتخاب یك ضدویروس

حالا كه متوجه شدید ضدویروس چگونه كار می‌كند و چه كارهایی را می‌تواند برای شما انجام دهد، وقت آن است ببینیم چه معیارهایی برای انتخاب یك ضدویروس مهم هستند.

۱- شناسایی

مهمترین وظیفه یك ضدویروس شناسایی ویروس‌ها است. اما چگونه باید مطمئن شویم كه یك ضدویروس همان كاری را كه ادعا می‌كند انجام می‌دهد؟ آیا همین قدر كه برنامه ضدویروس یك گزارش مبنی بر شناسایی ویروس‌ها تولید می‌كند متقاعد می‌شوید كه كار خود را به خوبی انجام می‌دهد؟ پیدا كردن جواب دو سوال زیر می‌تواند به شما كمك ‌كند:

پرسش اول: نرم‌افزار ضدویروس قادر است چه تعداد ویروس را مورد شناسایی قرار دهد. از این پارامتر عموماً با نام detection Rate یاد می‌شود.

پرسش دوم: نرم‌افزار ضدویروس تحت چه شرایطی می‌تواند یك ویروس را شناسایی كند؟ آیا اگر این ویروس در حافظه مقیم شده باشد توسط ضدویروس قابل تشخیص است؟

توصیه های مهم

اول: یك راه‌حل این است كه شما خودتان ضدویروس را بررسی كنید. برای این كار بر روی اینترنت به دنبال ویروس‌های مختلفی بگردید و این ویروس‌ها را به سیستم خودتان بیاورید و ببینید كه آیا ضد‌ویروس می‌تواند این ویروس‌ها را شناسایی كند یا نه؟ ولی من شما را از انجام این عمل شدیداً منع می‌كنم. حتی اگر فروشنده ضدویروس خودش این پیشنهاد را به عنوان یك راه‌حل برای آزمایش ضدویروس داده باشد. همان‌طورEicar كه گفته است: استفاده از ویروس‌های واقعی برای تست كردن یك ضدویروس در یك محیط عملیاتی مانند این است كه شما آتش را به دفتر كار خود بیاورید و بعد بخواهید بررسی كنید كه آیا حسگرهای دود‌ به خوبی كار می‌كنند یا نه؟ شما هرگز نمی‌توانید از نتیجه كار مطمئن باشید. ممكن است برنامه ضدویروس نتواند همه موارد را شناسایی كند و ویروس‌ها شروع به پاك كردن داده‌های ارزشمند سیستم شما و پخش شدن در شبكه بنمایند. امری كه ممكن است به بهای از دست دادن شغلتان تمام شود.

دوم: اگر شما واقعاً می‌خواهید مطمئن شوید كه یك ضدویروس قادر به انجام چه كارهایی است می‌توانید در سایتwww.eicar.org یك سری آزمایش‌های بی‌خطر جهت آزمایش ضدویروس پیدا كنید. در این سایت فایل‌های آزمایشی و بی‌خطری وجود دارند كه بیشتر ضدویروس‌ها آن‌ها را به عنوان ویروس شناسایی می‌كنند. در این حالت اگر ضدویروس موفق به از بین‌بردن ویروس شود چه بهتر و چنانچه نتواند، شما هیچگونه اطلاعاتی از دست نخواهید داد. بدین‌ترتیب می‌توانید یك روش امن برای آزمایش ضدویروس به كار ببندید.

سوم: شما می‌توانید از منابع موجود كه قبلاً این كار را انجام داده‌اند استفاده كنید. بعضی از سازمان‌ها، متولی انجام همین فعالیت می‌باشند. لیستی از ویروس‌ها توسط www.wildlist.org نگهداری می‌شود. در این سایت می‌توانید ببینید كه detection Rate یا نرخ شناسایی هر ضدویروس چقدر است.

این سایت‌ها نیز برای این منظور مفید می‌باشند:

www.virusbtn.com: این سایت، آماری از توان ضدویروس‌ها برای شناسایی ویروس‌های موجود در سایت wildlist (در دو مورد on-demand,Real-time) را ارایه می‌كند.

www.chech-mark.com/cgi-bin/Redirect.pl: در این سایت ضدویروس‌ها در دو سطح مورد بررسی قرار می‌گیرند. سطح اول همان است كه در سایت Virusbtn نیز انجام می‌شود یعنی فقط شناسایی یروس‌ها.نرم‌افزارهایی در سطح دوم موفق هستند كه قادر به از بین بردن ویروس نیز باشند.


شما در حال مطالعه صفحه 1 از یک مقاله 2 صفحه ای هستید. لطفا صفحات دیگر این مقاله را نیز مطالعه فرمایید.