چکیده:
تحلیلگران در گذشته جهت تشخیص بدافزار و تحلیل رفتار فایل اجرایی از مقایسه امضای فایل استفاده میکردند. نویسندگان بدافزارهای پیشرفته و جدید برای دور زدن بررسی امضا از روشهای مبهمسازی جهت پنهانسازی اطلاعات استفاده کردند که بیشترین، مهمترین و کارآمدترین روش مبهمسازی، بستهبندی کردن است. این روش بدون اینکه به رفتار فایل اجرایی اصلی صدمهای بزند، ترتیب کدهای آن را بههم ریخته، رمزگذاری کرده و حتی کد را فشرده میکند و کد اصلی تا زمانی که اجرا نشده مبهم میماند. روشهایی که هماکنون برای بازگشایی اینگونه فایلها استفاده میکنند اغلب روشهایی هستند که بهصورت خاص بهازای هر نوع بستهبندیکننده بازگشاییکننده مخصوص آن فایل را ایجاد میکنند. روشهای دیگری نیز همچون Renovo، OmniUnpack برای بازگشایی وجود دارند که بهعنوان بازگشاییکنندههای عمومی شناخته میشوند و در واقع ضعف روشهای قبلی در رابطه با نیاز به دانش از نوع بستهبندیکننده را پوشش میدهند، اما مشکل اصلی آنها یافتن نقطه ورود اصلی برنامه یا همان انتهای بخش بازگشایی است. در اینجا برای برطرف کردن این مشکل روشی ارائه شد که با استفاده از ردیابی صفحات حافظه و پیگیری صفحات نوشتهشده و سپس اجراشده این نقطه را شناسایی میکند و سپس از آن ناحیه فایل جدیدی که بازگشایی شده است ساخته میشود تا اولا نیازی به دانش از نوع بستهبندیکننده وجود نداشته باشد و دوما برای بستهبندیکنندههایی که در آینده ایجاد میشوند نیز بتواند مورد استفاده قرار گیرد. در نهایت در بخش ارزیابی نشان داده خواهد شد که درصد بسیار بالایی از بستهبندیکنندههای فعلی را میتوان با آن بازگشایی نمود (بالای ۹۰%) و در موتور ضد بدافزارها از آن استفاده نمود.
خلاصه ماشینی:
برای مثال تنها اولین نوشته صفحه مفید است (به درد ما میخورد)، نوشتههای بعدی در صفحات مشابه در نتایج الگوریتم خیلی مؤثر نیست و میتواند نادیده گرفته شود؛ بنابراین، این روش بازگشایی قصد دارد خیلی جامع باشد طوری که کدهای بستهبندیشده را با هر الگوریتم دلخواهی که به هر تعداد بار بهکار گرفته شده باشد، حمایت و پشتیبانی میکند ]2[.
با این تغییری که روی صفحات حافظه انجام داده شد، هر زمان که صفحهای که نوشتهشده و سپس قصد اجراشدن دارد، بهدلیل اینکه مجوز دستیابی وجود ندارد و این صفحه فقط بهصورت فقط خواندنی قابلدستیابی است و اعمال تغییر ممکن نیست این عمل باعث میشود الگوریتم به مرحله حالت استثنا 1 خواهد رفت و درواقع بخش مربوط به کنترل خطا اجرا خواهد شد که در این قسمت دقیقا ما در نقطهای قرار داریم که مکان شروع اجرای فایل اصلی است، دقیقا همان نقطه اصلی ورودی که قبل از بستهبندی شدن است.
)همانطور که مشاهده میشود، نتایج ارزیابی از کارایی بالای این روش دارد و در مواردی هم که ملاحظه میشود درصدی کمتر از ۹۰ برای برخی بسته کنندهها وجود دارد، به دلیل استفاده آن نوع از بسته کنندهها از روشهای مختلف و پیشرفته جهت ضد دیباگینگ و همچنین بهره بردن از نقاط ضعف این روش که قبلا اشاره شد و یا حتی در هنگام ساخت IAT 1 یا همان جدول آدرس ورودی، است ولی در حالت کلی و بهطور میانگین نسبت به سایر روشهایی که در موتورهای جستجوگر کنونی که در ردههای بالایی از تشخیصدهندههای بدافزار قرار دارند، عملکرد بهتری حداقل در نتیجه دارد.