آشنایی با ویروس (قسمت هشتم)
آشنایی با ویروس (قسمت هشتم)
روشهای تشخیص ویروس در آنتیویروس:
نرمافزارهای آنتیويروس عموماً از دو تکنيک براي تشخيص ويروسها استفاده مي کنند:
1. استفاده از فايل امضای ويروس : اين تکنيک توانايی شناسايی ويروسهايی را دارد که شرکتهای آنتیويروس تا کنون براي آنها امضا يا Signature توليد کرده اند. در اين روش ضدويروس، متن فايلهای موجود در رايانه را هنگامی که سامانهی عامل، آنها را بازمیکند ،میبندد يا ارسال ميکند، امتحان کرده و آن را به فايل امضای ويروس، که نويسندگان آنتی ويروس تشخيص دادهاند ارجاع میدهد.
فايل امضای ويروس، يک رشته بايت است که با استفاده از آن میتوان، ويروس را به صورت يکتا مورد شناسايی قرار داد و از اين جهت مشابه اثر انگشت انسانها ميباشد.
اگر يک تکه کد در فايلي با ويروس موجود، در فايل امضای ويروس مطابقت داشت، نرمافزار ضدويروس يکي از کارهای زير را انجام مي دهد:
-سعی مي کند تا فايل را توسط از بين بردن ويروس به تنهايی تعمير کند.
-قرنطينه کردن فايل (فايل قابل دسترسی توسط برنامههای ديگر نباشد و ويروس، نمیتواند گسترش يابد.)
-فايل ويروسی و آلوده را پاک کند.
دراين تکنيک، فايل امضای ويروس يا همان پايگاه داده ويروسهای شناخته شده، بايد به طور متناوب update شودتا آخرين اطلاعات را، راجع به آخرين ويروسها به دست آورد.
کاربران وقتی ويروسهای جديد(ناشناخته) راتشخيص دادند، میتوانند فايلهای آلوده را به نويسندگان آنتيويروس ارسال کنند.
2. استفاده از الگوريتم اکتشافی (Heuristic Analyzer):
وقتی تعداد کدهای مخرب به بيش از هزاران مورد رسيد و کمپانيهای ضدويروس ديدند که نمیتوانند برای هر ويروس، يک امضای جداگانه تهيه کنند، به فکر اين روش افتادند. اين تکنيک براي کشف ويروسهای ناشناخته که فايل امضاي آنها وجود ندارد به کار مي رود.
دراين تکنيک از روش زير استفاده مي شود:
Dynamic Heuristic analysis : شبيه سازی کد، به اين معنی است که، فايل در يک محيط محافظت شده در داخل ماشين مجازی، شروع به اجرا میکند. سپس به برنامه آنتیويروس اجازه میدهد تا رفتار يک فايل مشکوک را به هنگام اجرا شبيه سازی کند، در حالی که کد مشکوک اصلي ازماشين واقعي کاملاً مجزا شده است.وبعد بر فعاليتهای ويروسی مثل تکرار کد ، دوباره نويسی فايل و تلاش برای پنهان سازی فايلهای مشکوک، نظارت میکند. هرگاه يک يا بيشتر از آن فعاليتهای شبه ويروس را پيدا کرد، فايل مشکوک علامت گذاری و به کاربر اطلاع داده میشود. مثلا اگر برنامهای از رمز خود تصحيح کننده، استفاده کرده، ويروس به شمار میآيد.
اين تکنيک، حفاظت بيشتری را در مقابل ويروسهای جديد تجاری که هنوز وارد پايگاه دادهی نشانههای ويروسی نشدند، به وجود مي آورد.
مشکلات روش های اکتشافی:
*تشخیص مثبت اشتباه False Positive: این روش از ویژگیهای عمومی ویروس استفاده می کند، و بنابراین ممکن است برخی از نرم افزارهای قانونی و معتبر را در صورتی که خصوصیاتی شبیه بدافزار داشته باشند،نیز به اشتباه بدافزار شناسایی کند.
*بررسی کندتر: پروسه جستجوی ویژگیها برای یک نرم افزار بسیار سخت تر از جستجوی الگوهای مشخص است.به همین دلیل جستجوی اکتشافی مدت زمان بیشتری نسبت به جستجوی امضاء جهت شناسایی بدافزارها نیاز دارد.
*ندیدن ویژگیهای جدید: در صورتی که یک حمله بدافزاری جدید ویژگیهایی از خود به نمایش بگذارد، که پیش از شناسایی نشده اند،جستجوی اکتشافی نیز آن را شناسایی نمیکند مگر اینکه به روز رسانی شده و ویژگی مذکور به حافظه آن اضافه شود.
شنبه 5 اسفند 1391 9:09 PM
تشکرات از این پست