خلاصة:
روتکیتهای سطح هسته، بهدلیل رفتار پنهانکارانه خود، به تهدیدات امنیتی جدی تبدیل شدهاند. اغلب روتکیتهای سطح هسته، با قلاباندازی اشارهگرهای تابع موجود در هسته سیستمعامل، جریان کنترل سیستم را تغییر داده و به اهداف پنهانکارانه خود دست مییابند. بررسیها نشان میدهد اکثر روشهای ضدروتکیتی که یکپارچگی اشارهگرهای تابع موجود در حافظه هسته سیستم را بررسی میکنند حافظه پویای هسته را که هدف حمله روتکیتهای پیشرفته هستند، بررسی نمیکنند. از طرف دیگر روتکیتهای سطح هسته قادر به دستکاری ساختارهای هسته سیستمعامل بوده و میتوانند در کار نرمافزارهای ضد بدافزاری اختلال ایجاد کنند. بنابراین، ابزارهای کشف روتکیت پیشین، که در داخل ماشین میزبانی که آن را محافظت میکنند، اجرا میشوند، در برابر تغییر و دور زدن، آسیبپذیر هستند. بنابراین، در روشهای اخیر کشف بدافزارها از روشهای مبتنی بر نظارت ماشین مجازی در سطح ناظر ممتاز استفاده میشود که قادرند بدون دخالت بدافزارهای ماشین مجازی، وضعیت سیستم در حال اجرا را بررسی کنند. هدف از این پژوهش، ارائه روشی مبتنی بر درونبینی ماشین مجازی، بهمنظور کشف روتکیتهایی است که با استفاده از راهکار تغییر جریان کنترل سیستم سعی در مخفی نمودن خود و بدافزارهای جانبیشان در حافظه اصلی دارند. روش پیشنهادی سعی دارد با استفاده از درونبینی ماشین مجازی، اشارهگرهای تابع در نواحی حافظه هسته سیستمعامل که بیشترین هدف روتکیتها هستند را استخراج کرده و در سطح ناظر ممتاز، یکپارچگی آنها را بررسی کند. روش پیشنهادی با یک مجموعه از روتکیتهای شناخته شده که از روشهای پیشرفته قلاباندازی استفاده میکنند، ارزیابی شده و قادر است همه آنها را شناسایی کند.
ملخص الجهاز:
روش پیشنهادی سعی دارد با استفاده از درونبینی ماشین مجازی، اشارهگرهای تابع در نواحی حافظه هسته سیستمعامل که بیشترین هدف روتکیتها هستند را استخراج کرده و در سطح ناظر ممتاز، یکپارچگی آنها را بررسی کند.
برای غلبه بر محدودیتهای مطرحشده، در این پژوهش روشی ارائه شده است که یکپارچگی اشارهگرهای تابع ماندگار موجود در حافظه هسته سیستمعامل را بررسی میکند.
روشی مبتنی بر درونبینی ماشین مجازی برای کشف روتکیتها در [1] ارائه شده است که در آن نواحی مهم حافظه که بیشتر هدف حمله روتکیتها قرار دارند از قبیل جداول آدرس ورودی/خروجی مؤلفههای سطح هسته، جدول توصیفگر وقفه سیستم، جدول توصیفگر سرویس سیستم و ساختارهای داده سطح هسته، در سطح ناظر ممتاز محافظت میشود، هرگاه برنامهای سعی کند این نواحی را دستکاری کند، مانع آن میشود.
این روش در قالب 4 مرحله مختلف انجام میشود در مرحله اول مؤلفه استخراج یک لیست از اشارهگرهای تابع از منابع قابل اعتماد در حافظه فیزیکی ماشین مجازی ایجاد میکند که این لیست توسط مؤلفه جستجو برای پیدا کردن اشارهگرهای تابع کاندید در داده حافظه مخزن هسته استفاده میشود.
روش پیشنهادی، اشارهگرهای تابع موجود در منابع سیستمعامل از قبیل کد مؤلفههای هسته و ساختارهای داده سطح هسته و همچنین فضای مخزن هسته سیستمعامل را در سطح ناظر ممتاز با استفاده از درونبینی ماشین مجازی استخراج کرده و بهصورت مداوم آنها را نظارت میکند تا تغییرات غیرمجاز انجامشده در آنها توسط روتکیتها را شناسایی کند.