آنتی ویروس چیست ؟
آنتی ویروس ( Anti Virus ) به نرم افزاری گفته میشود که مسئولیت پاکسازی و جلوگیری از ورود ویروس و عوامل مخرب به کامپیوتر را بر عهده دارد. در واقع آنتی ویروس یک برنامه کامپیوتری است که برای مرور فایل ها و تشخیص و حذف ویروس ها و دیگر بدافزارها از آن استفاده می شود.
نحوه عملکرد آنتی ویروس ها
هسته مرکزی یک آنتی ویروس ، موتور جستجوی آن است. این موتور از الگوریتمهای جستجو برای بررسی لایههای مختلف فایل استفاده می کند.
موتور جستجو با الگوریتم مخصوص به خود میلیونها فایل را در مدت زمان کوتاهی بررسی می کند و از شناسهها برای ردیابی فایلهای آلوده و مخرب استفاده می کند. شناسه، بخشی از رشته لایههای مختلف فایلها را در بر دارد و مانند اثر انگشت برای هر ویروس یکتا است.
یکی از مزیتهای استفاده از آنتی ویروسهای معتبر و خرید لایسنس قانونی آنها، این است که شرکت سازنده خود را موظف می داند تا از طریق به روزرسانی بانک شناسهها، شما را در مقابل جدیدترین ویروسها محافظت نماید.
یکی دیگر از قابلیت هایی که بیشتر برنامههای آنتی ویروس در موتور جستجوی خود ایجاد میکنند، توانایی شناسایی رفتارهای مشکوک فایلها و ایجاد سطوح دسترسی برای برنامههای مختلف است.
به این ترتیب حتی اگر شناسه ویروسی در بانک اطلاعاتی آنتی ویروس موجود نبود، موتور جستجو به طور خودکار رفتار فایلها را زیر نظر می گیرد و اگر رفتار مشکوکی مشاهده کند به کاربر اخطار میدهد.
این روزها اکثریت شرکتهای سازنده آنتی ویروس ، برای جامعتر ساختن راه حلهای امنیتی، قابلیتهای Firewall، آنتی اسپم و آنتی فیشینگ را نیز به نرم افزارهای خود اضافه می نمایند.
رفتار آنتی ویروس با ویروس معمولا توسط کاربر تعیین میشود. پیش فرض بیشتر آنتیویروسها خنثی سازی فایل آلوده با از بین بردن کد مخرب است. در حالتی که کد، قابل جداسازی نباشد آنتی ویروس آن را پاک و یا قرنطینه می کند.
در ادامه با برخی از تکنیک های رایج که در بین آنتی ویروس ها ، برای تشخیص بدافزارها به کار برده میشوند، به طور دقیق تر آشنا خواهیم شد.
تشخیص بر اساس شناسه یا امضای ویروس
اغلب برنامههای آنتی ویروس در حال حاضر از این تکنیک استفاده میکنند. در این شیوه، درایوهای حافظه و فایل ها، با هدف پیدا کردن الگویی که نشان دهنده یک بدافزار باشد، مورد جستجو قرار میگیرند.
این الگوها معمولا در فایل هایی به نام فایل های امضا ذخیره میشوند. فایل های مذکور توسط تولیدکنندگان نرم افزارهای آنتی ویروس طبق یک برنامه منظم به روز رسانی میشوند تا قادر باشند بیشترین تعداد ممکن حملههای بدافزاری را شناسایی کنند.
در این شیوه زمانی که نرم افزار آنتی ویروس یک فایل را مورد آزمایش قرار میدهد، به یک دیکشنری ویروس که حاوی امضای ویروس های شناخته شده است مراجعه می کند. در صورتی که هر تکه از کد فایل با یک ویروس شناخته شده مطابقت داشته باشد، فایل مذکور به عنوان یک فایل آلوده شناسایی شده و آنتی ویروس یا آن را پاک می کند و یا آن را قرنطینه می نماید تا برنامههای دیگر به آن دسترسی نداشته و همچنین از انتشار آن جلوگیری به عمل آید. در برخی موارد نیز امکان بازسازی فایل آلوده از طریق حذف ویروس از فایل اصلی وجود دارد که در صورت امکان آنتی ویروس این کار را انجام می دهد.
مشکل اصلی تکنیک بررسی شناسه این است، که آنتی ویروس نسبت به ویروس های جدید آسیب پذیری بسیار بالایی دارد و تقریبا خنثی عمل خواهد کرد. چون در این روش، بانک اطلاعاتی آنتی ویروس باید قبلا به روز رسانی شده باشد تا بتواند به مقابله و خنثی سازی بدافزارها بپردازد و لذا بدافزارهای جدیدی که هنوز شناسایی نشده و به فایل های امضا، اضافه نشده اند تشخیص داده نمیشوند.
مسئله دیگری که باید به آن توجه کرد، این است که ویروس نویسان همواره تلاش میکنند تا یک قدم جلوتر از آنتی ویروسها حرکت کنند و این کار را از طریق ایجاد ویروس های چندریختی انجام میدهند. ویروس های چندریختی در واقع دارای یک مکانیزم دفاعی رمزنگاری هستند.
روشهای متنوعی برای رمزنگاری و بسته بندی بدافزارها وجود دارد که تشخیص انواع شناخته شده بدافزارها را برای آنتی ویروس ها بسیار سخت می سازد. متاسفانه بسیاری از آنتی ویروسهای معروف امروزی فاقد توانایی تشخیص ویروسهای رمزنگاری شده هستند.
تشخیص بر اساس رفتار ویروس
در این روش بر خلاف روش پیشین، آنتی ویروس تنها در تلاش برای شناسایی ویروس های شناخته شده نیست بلکه رفتار همه برنامهها را نظارت می کند. این تکنیک سعی در تشخیص انواع شناخته شده و همچنین انواع جدید بدافزار دارد و این کار را از طریق جستجوی ویژگی های عمومی و مشترک بدافزارها انجام می دهد.
به عنوان مثال اگر یک برنامه سعی در نوشتن داده بر روی یک برنامه اجرایی دیگر را داشته باشد، این رفتار به عنوان یک رفتار مشکوک شناسایی شده و به کاربر هشدار لازم داده میشود. سپس از او در مورد اینکه چه کاری باید انجام شود سوال میشود.
به روش تشخیص بر اساس رفتار، جستجوی اکتشافی یا Heuristic نیز گفته میشود زیرا سعی در کشف رفتارهای مشکوک و شناسایی بدافزارها دارد. مهمترین فایده این روش تکیه نکردن آن بر فایل های امضا برای تشخیص و مقابله با بدافزار است.
البته این روش نیز با مشکلات خاصی روبرو است از جمله کندتر بودن این روش نسبت به روش تشخیص بر اساس امضا و تعداد زیاد تشخیص های مثبت اشتباه و هشدارهای بی مورد به کاربر، که موجب خستگی و سر رفتن حوصله کاربران میشود.
همچنین در این روش نیز در صورتی که یک حمله بدافزاری جدید، ویژگی هایی را از خود به نمایش بگذارد که پیش از این شناسایی نشده اند، جستجوی اکتشافی نیز آن را شناسایی نمیکند مگر اینکه به روز رسانی شده و ویژگی مذکور به حافظه آن اضافه شود.
