در سال های اخیر استفاده از سندباکس ها (Sandbox) تبدیل به روندی معمول برای کارشناسان امنیت برای شناسایی فایل های مشکوک به بدافزارها شده است. در این پست به عنوان مقدمهای کوتاه در خصوص استفاده از سندباکسها و مختصری از روش کار خواهیم گفت و در پست بعد بصورت عمیقتر به تحلیل فایل با سندباکس میپردازیم.
در این پست نشان میدهیم که چگونه سندباکسها به کمک سازمانها آمدهاند تا در مقابل حجم انبوه و متفاوت بدافزارها به متخصصین امنیت یاری رسانند. قابل ذکر است سندباکسها بیشتر در مراکز CERT سازمانهای بزرگ مورد استفاده قرار میگیرند و در سازمانهای کوچکتر نیز میتوانند به یاری مدیران IT برسند تا از آلودگی به بدافزارها جلوگیری کنند.
در بررسی بدافزارها دو روش اصلی وجود دارد، بررسی استاتیک (Static) و بررسی داینامیک (Dynamic). در بررسی ایستا کارشناس تحلیل بدافزار بدون اجرای کد بدافزار اقدام به استخراج اطلاعات از فایل کرده و با استفاده از روشهای مهندسی معکوس عملکرد برنامه بدافزار را مورد بررسی قرار میدهد. این روش به بررسی کدهای بدافزار در سطح ماشین میپردازد که فرآیندی زمانبر است. اما در تحلیل داینامیک، کارشناس تحلیل بدافزار فایل مخرب را اجرا کرده و با استفاده از ابزارهای خاص شروع به نظارت کردن فعالیتهای بدافزار میکند. این فعالیتها شامل ایجاد و تغییر فایلها در سیستم عامل، ارتباط با اینترنت (C2 Servers)، تغییرات رجیستری و موارد مخرب دیگر میشود. با این مقدمه به بررسی سندباکسها خواهیم پرداخت که از تحلیل پویا برای بررسی بدافزار استفاده میکنند.
معرفی سندباکس
در سال ۲۰۱۰ با افزایش رو به رشد بدافزارها، امکان تحلیل بدافزارها از طریق بررسی ایستا به دلیل زمان بر بودن این روش و حجم بالای بدافزارها وجود نداشت. در نتیجه سندباکسهایی برای بررسی خودکار بدافزارها تولید شدند. آنها قادر بودند با دریافت URL یا فایلهای مختلف مانند فایل های Office، یا فایلهای باینری اقدام به بررسی بدافزارها در زمان کوتاه کرده و نتایج فعالیت آنها را در اختیار متخصصین تحلیل بدافزار یا کارشناسان IT قرار دهند. در نتیجه امروزه تنها در موارد خاص متخصصین بررسی ایستا را برای تحلیل بدافزار استفاده میکنند که این موارد شامل حملات APT و مواردی است که یک بدافزار به صورت گسترده اقدام به آلوده سازی سیستم ها میکند.
از اولین سندباکس ها می توان به Wepawet , Anubis و CWsandbox نام برد که در سالهای اول شروع به فعالیت کردند و امروزه این سندباکسها به صورت عمومی در دسترس نیستند یا پروژه آنها به اتمام رسیده است.
سندباکس های موجود در بازار محصولات امنیتی در جدول زیر قابل مشاهده هستند که بسته به نوع نیاز هر مجموعه و سازمان میتوان از ویژگی آنها استفاده کرد، دو سندباکس Hybrid Analyze و Any.run در حال حاضر به صورت رایگان و با محدودیتهای خاصی، فایلهای مشکوک را دریافت کرده در محیط سندباکس بررسی کرده و نتایج بررسی را به شما تحویل میدهند. در جدول زیر به چند نمونه محصول دیگر سندباکسها اشاره شده است که میتوان آن را داخل سازمان پیاده سازی کرد:
https://www.hybrid-analysis.com | Hybrid Analyze |
https://any.run | Any.Run |
https://www.joesecurity.org | JoeSandbox |
https://www.vipre.com/products/business-protection/analyzer | ThreatAnalyzer |
/https://cuckoosandbox.org | Cuckoo |
به عنوان مثال ورودی یک سندباکس میتوانند فایل های Excel , word با ماکروهای مخرب باشد. یا یک فایل PDF با کدهای جاوا اسکریپت، یک برنامه اندروید و یا در ساده ترین حالت یک فایل باینری (exe) قابل اجرا در ویندوز باشد و سندباکس پس از اجرا فایل و بررسی روند فعالیت بدافزار مانند ارتباط با اینترنت، تغییرات رجیستری، ساخت یا تغییر فایل و موراد بیشتری را به صورت یک گزارش تکمیلی در اختیار شما قرار دهد. نمونه ای از نتایج سند باکسها را می توانید در زیر مشاهده کنید.
نمونهای از بررسی یک فایل اندروید مخرب:
https://www.joesecurity.org/reports/report-78d97c9b50029da32ada8e16e1979b28.html
نمونهای از بررسی فایل Exe و بدافزار کنترل از راه دور Njrat:
https://www.joesecurity.org/reports/report-812d49be271e7d49274f94ccaca83a90.html
نمونهای از بدافزار سرقت کلمات عبور:
نمونهای از بدافزار فایل rtf و استفاده از ماکرو در فایل Word:
https://app.any.run/tasks/5ef06bba-ab30-4f45-8319-4b61c96a6a70
دور زدن سندباکس
البته تولید کنندگان بدافزار نیز روش هایی را برای دور زدن سندباکسها ایجاد کردهاند. دو روش ساده جهت دور زدن سندباکسها عبارتند از تشخیص محیطهای مجازی با استفاده از تکنیک هایی مانند معماری حافظه مجازی سازها مانند Vmware و یا تکنیک زمان که در آن بدافزار پس از اجرا زمانی حدود ۲۰ دقیقه یا بیشتر متوقف میماند و سپس شروع به فعالیت میکند بیشتر سندباکسهای رایگان تنها ۵ دقیقه را برای نظارت کردن بدافزار در نظر میگیرند و در نتیجه پس از اتمام این زمان نتیجه خاصی را گزارش نمیدهند.
هشدار امنیتی
نکته مهم در استفاده از سندباکسها این است که کارشناسان سازمان بسته به حساسیت قوانین درون سازمانی هر فایلی را به سندباکسهای رایگان ارسال نکنند. زیرا تولید کنندگان بدافزار یا حملات APT متوجه حساسیت سازمان هدف میشوند و رویه حمله خود را تغییر میدهند. یکی از بهترین روشها جهت آگاهی از احتمال آلودگی، استفاده از Hash فایل مشکوک به بدافزار میباشد شما می توانید به راحتی با استخراج Hash فایل مشکوک به صورت MD5 و SHA-256 ابتدا در موتور جستجوگر گوگل نتایج را بررسی کنید و در صورت پیدا کردن نتایج مثبت اقدام به استفاده از سندباکسها کنید. اما در صورتی که فایل Hash مورد نظر یافت نشد بهتر است از متخصصین تحلیل بدافزار کمک گرفته و یا در صورت داشتن سندباکس داخل سازمانی، فایل مشکوک خود را از این طریق مورد بررسی قرار دهید. این نکته در مورد آپلود کردن فایل های مشکوک به بدافزار به سرویس هایی مانند Virustotal نیز صدق میکند.
در صورتی که امکان خرید سندباکسها را ندارید می توانید از یکی از سندباکس های رایگان وکد باز به نام Cuckoo Sandbox نیز استفاده کنید اگرچه پیکربندی آن کمی زمان بر می باشد اما می تواند به خوبی بخشهای زیادی از بدافزارها را بررسی کند.