Sandboxing چیست و چگونه فایل‌های مشکوک را شناسایی می‌کند؟

تاریخ انتشار: 19 مهر 1405
آخرین بروزرسانی: 19 مهر 1405
Sandboxing (جعبه شنی) روشی برای اجرای فایل‌ها، برنامه‌ها یا کدهای مشکوک در یک محیط جدا و کنترل‌شده است تا رفتار واقعی آن‌ها بدون آسیب رساندن به سیستم یا شبکه اصلی بررسی شود. این فناوری به‌خصوص برای شناسایی بدافزارهای ناشناخته، باج‌افزارها و بخشی از تهدیدهای روز صفر کاربرد دارد.
sandboxing چیست؟
sandboxing چیست؟

محتوای مقاله

ایده واژه Sandbox از کجا آمده است؟

واژه Sandbox در معنی لغوی به همان «جعبه شنی» یا فضای بازی کودکان اشاره دارد؛ محیطی محدود که کودک می‌تواند داخل آن بازی، ساخت‌وساز و حتی خراب‌کاری کند، بدون اینکه محیط اطراف آسیب ببیند. همین ایده بعدها وارد دنیای کامپیوتر شد: برنامه یا فایل ناشناس داخل یک فضای محدود اجرا می‌شود تا هر اتفاقی که رخ می‌دهد، از محیط اصلی جدا بماند.

استفاده از مفهوم Sandbox در امنیت و ایزوله‌سازی نرم‌افزار از اوایل دهه ۱۹۹۰ به‌طور جدی در پژوهش‌های کامپیوتری دیده می‌شود. یک بررسی دانشگاهی درباره تاریخچه Sandboxing اشاره می‌کند که این اصطلاح حتی پیش از مقاله مشهور سال ۱۹۹۳ درباره Software Fault Isolation نیز استفاده شده بود، هرچند بسیاری از تحقیقات بعدی همان کار سال ۱۹۹۳ را یکی از پایه‌های مهم مفهوم مدرن ایزوله‌سازی نرم‌افزار می‌دانند.

ایده اصلی از همان ابتدا ساده بوده است: کد غیرقابل اعتماد را اجرا کن، اما اجازه نده از محدوده مشخص‌شده خارج شود.

Sandboxing چیست؟

Sandboxing (جعبه شنی) یک روش امنیتی است که در آن فایل، برنامه، Script یا کد مشکوک در یک محیط ایزوله اجرا می‌شود تا رفتار آن بدون دسترسی مستقیم به سیستم واقعی بررسی شود.

می‌توان Sandbox را مثل یک آزمایشگاه امنیتی تصور کرد.

به‌جای اینکه یک فایل ناشناس مستقیماً روی کامپیوتر کاربر اجرا شود، ابتدا در محیطی جدا قرار می‌گیرد. سیستم امنیتی فایل را اجرا می‌کند و بررسی می‌کند بعد از اجرا چه اتفاقی می‌افتد.

ممکن است فایل تلاش کند یک Process جدید بسازد، Registry را تغییر دهد، فایل دیگری دانلود کند، با یک IP ناشناس ارتباط برقرار کند یا تعداد زیادی فایل را رمزگذاری کند.

تمام این رفتارها برای سیستم امنیتی سرنخ هستند.

اصل Sandboxing بر Containment یا محدودسازی استوار است؛ یعنی کد مشکوک اجازه اجرا دارد، اما در محیطی کنترل‌شده که دسترسی آن به منابع واقعی سیستم محدود شده است.

به طور خلاصه
Sandbox خودِ محیط ایزوله و کنترل‌شده‌ای است که فایل مشکوک داخل آن اجرا می‌شود؛ اما Sandboxing به فرایند و روش اجرای فایل در این محیط و بررسی رفتار آن گفته می‌شود.

چرا به Sandboxing نیاز داریم؟

آنتی‌ویروس و بسیاری از ابزارهای امنیتی در شناسایی تهدیدهای شناخته‌شده عملکرد بسیار خوبی دارند. اما به شرطی که بدافزار مربوط قبلاً شناسایی شده باشد. بدافزار شناسایی شده معمولاً با مواردی مانند Signature، Hash، Reputation یا الگوهای شناخته‌شده قابل شناسایی است.

اما مشکل زمانی شروع می‌شود که فایل کاملاً جدید باشد.

فرض کنید مهاجم یک بدافزار تازه ایجاد کرده که هنوز Hash آن در هیچ پایگاه اطلاعاتی ثبت نشده و Signature مشخصی هم برای آن وجود ندارد. در این شرایط، سیستم امنیتی نمی‌تواند فقط بر اساس سابقه فایل تصمیم بگیرد.

در اینجاست که Sandboxing وارد می شود و رویکرد کاملا متفاوتی را پیش میگیرد.

در واقع جعبه شنی به‌جای اینکه بپرسد:

«آیا این فایل را قبلاً دیده‌ایم؟»

می‌پرسد:

«اگر این فایل را اجرا کنیم، چه کاری انجام می‌دهد؟»

این تفاوت بسیار مهم است؛ زیرا رفتار یک فایل مخرب حتی زمانی که خود فایل کاملاً جدید باشد، می‌تواند نشانه‌های واضحی از حمله نشان دهد.

Sandboxing چگونه کار می‌کند؟

فرایند دقیق بین محصولات مختلف متفاوت است، اما به‌طور کلی می‌توان آن را در این مراحل خلاصه کرد:

  1. فایل یا محتوای جدید وارد شبکه می‌شود.
  2. موتورهای امنیتی اولیه فایل را بررسی می‌کنند.
  3. اگر فایل شناخته‌شده و سالم باشد، اجازه عبور می‌گیرد.
  4. اگر فایل مشخصاً مخرب باشد، همان‌جا مسدود می‌شود.
  5. اگر فایل ناشناخته یا مشکوک باشد، به Sandbox ارسال می‌شود.
  6. فایل در محیط ایزوله اجرا می‌شود.
  7. رفتار فایل، حافظه، Registry، فایل‌سیستم و ارتباطات شبکه بررسی می‌شود.
  8. سیستم در نهایت برای فایل یک Verdict صادر می‌کند.

نتیجه ممکن است چیزی مانند Clean، Suspicious یا Malicious باشد.

اگر فایل سالم باشد، می‌تواند به کاربر تحویل داده شود. اگر رفتار مخرب مشاهده شود، فایل مسدود می‌شود.

sandboxing چگونه کار میکند؟
sandboxing چگونه کار میکند؟

Sandbox هنگام اجرای فایل چه چیزهایی را بررسی می‌کند؟

Sandbox فقط به نام یا ظاهر فایل نگاه نمی‌کند؛ مهم‌ترین بخش تحلیل، مشاهده رفتار واقعی فایل در زمان اجرا است.

فعالیت فایل‌ها

سیستم بررسی می‌کند فایل مشکوک چه فایل‌هایی ایجاد، حذف یا تغییر می‌دهد. بعضی بدافزارها بعد از اجرا چند فایل دیگر روی سیستم ایجاد می‌کنند یا Payload خود را در مسیرهای مختلف کپی می‌کنند.

Registry Activity

در ویندوز، Registry یکی از بخش‌هایی است که بدافزارها اغلب برای ماندگاری یا تغییر رفتار سیستم از آن استفاده می‌کنند.

Sandbox بررسی می‌کند فایل چه تغییراتی در Registry ایجاد می‌کند.

Process Activity

ممکن است فایل بعد از اجرا Process دیگری بسازد یا یک ابزار داخلی ویندوز را اجرا کند. برای مثال، اجرای غیرعادی PowerShell، CMD یا Scriptهای دیگر می‌تواند نشانه فعالیت مشکوک باشد.

Memory Activity

برخی تهدیدهای پیشرفته تلاش می‌کنند بدون ایجاد فایل مشخص روی Disk، مستقیماً در حافظه اجرا شوند. Sandboxهای پیشرفته می‌توانند رفتارهای مرتبط با Memory Injection و اجرای کد در حافظه را نیز بررسی کنند.

Network Activity

یکی از مهم‌ترین بخش‌ها، بررسی ارتباط شبکه‌ای فایل است. مثلاً ممکن است فایل بعد از اجرا تلاش کند با یک Domain ناشناس یا سرور Command and Control ارتباط برقرار کند. همین رفتار می‌تواند نشانه جدی Malware باشد.

رفتارهای مرتبط با Ransomware

اگر یک فایل شروع به تغییر یا رمزگذاری تعداد زیادی فایل کند، ممکن است سیستم آن را به‌عنوان رفتار مشابه باج‌افزار شناسایی کند. در Zero-Day Protection سوفوس نیز فعالیت فایل، حافظه، Registry و شبکه در جریان تحلیل Sandbox بررسی می‌شود. Sophos Docs

تفاوت Static Analysis و Dynamic Analysis چیست؟

Sandboxing معمولاً فقط به اجرای فایل محدود نیست و اغلب چند نوع تحلیل را با هم ترکیب می‌کند.

روش نحوه بررسی
Static Analysis بررسی فایل بدون اجرا
Dynamic Analysis اجرای فایل و مشاهده رفتار
Machine Learning Analysis بررسی ویژگی‌های فایل با مدل‌های یادگیری ماشین
Reputation Analysis بررسی سابقه و اعتبار فایل

Static Analysis

در Static Analysis فایل بدون اجرا شدن بررسی می‌شود. مواردی مانند ساختار فایل، Header، Hash، Metadata، رشته‌های داخل فایل، Libraryهای مورد استفاده و ویژگی‌های کد قابل تحلیل هستند.

مزیت اصلی این روش سرعت بالاست. اما فایل‌های Obfuscated یا Packed ممکن است بخشی از رفتار واقعی خود را پنهان کنند.

Dynamic Analysis

در Dynamic Analysis فایل واقعاً در Sandbox اجرا می‌شود. سیستم مشاهده می‌کند فایل پس از اجرا چه رفتاری دارد؛ مثلاً چه فایل‌هایی ایجاد می‌کند، با چه IPهایی ارتباط برقرار می‌کند یا چه Processهایی می‌سازد. ترکیب این دو روش معمولاً نتیجه دقیق‌تری نسبت به استفاده از یکی از آن‌ها به‌تنهایی ایجاد می‌کند. سوفوس نیز در Zero-Day Protection از ترکیبی از تحلیل ایستا و پویا استفاده می‌کند.

Sandboxing چگونه یک بدافزار ناشناخته را شناسایی می‌کند؟

فرض کنید یک تروجان جدید وارد شبکه شده است.

این فایل:

Hash شناخته‌شده ندارد، Signature ثبت‌شده‌ای ندارد و در Threat Intelligence نیز هنوز دیده نشده است. اگر فقط سیستم تشخیص مبتنی بر Signature وجود داشته باشد، ممکن است فایل ناشناخته باقی بماند.

اما بعد از اجرای فایل در Sandbox، رفتار زیر مشاهده می‌شود:

ایجاد Process جدید ← اجرای PowerShell ← اتصال به IP ناشناس ← دانلود فایل جدید ← تغییر Registry

حتی اگر خود فایل قبلاً دیده نشده باشد، این الگوی رفتاری بسیار مشکوک است. در نتیجه Sandbox می‌تواند فایل را بر اساس رفتار آن شناسایی کند، نه فقط بر اساس سابقه شناخته‌شده فایل.

ارتباط Sandboxing با Zero-Day Protection

Zero-Day Protection و Sandboxing ارتباط بسیار نزدیکی با یکدیگر دارند.

حملات روز صفر ممکن است از یک آسیب‌پذیری، فایل یا روش حمله‌ای استفاده کند که هنوز Signature مشخصی برای آن وجود ندارد. در چنین شرایطی رفتارشناسی اهمیت پیدا می‌کند. اگر فایل جدیدی داخل Sandbox اجرا شود و شروع به انجام رفتارهای خطرناک کند، سیستم می‌تواند آن را حتی بدون Signature قبلی مشکوک تشخیص دهد. به همین دلیل Sandboxing یکی از مهم‌ترین فناوری‌های مورد استفاده در Zero-Day Protection است. البته این موضوع به این معنا نیست که Sandbox می‌تواند تمام Zero-Dayها را صددرصد شناسایی کند؛ هیچ فناوری امنیتی چنین تضمینی ندارد.

ارتباط Sandboxing با آنتی‌ویروس

Sandbox و آنتی‌ویروس جایگزین یکدیگر نیستند. آنتی‌ویروس برای شناسایی سریع تهدیدهای شناخته‌شده بسیار مناسب است، درحالی‌که Sandbox بیشتر روی فایل‌های ناشناخته و مشکوک تمرکز دارد.

یک فرایند منطقی می‌تواند این‌طور باشد:

آنتی‌ویروس ← بررسی اعتبار (Reputation Check) ← تحلیل ایستا (Static Analysis) ← Sandbox

اگر فایل در همان مرحله اول به‌عنوان بدافزار (Malware) شناخته شود، نیازی نیست منابع Sandbox برای تحلیل آن مصرف شود. فقط فایل‌هایی که وضعیت آن‌ها مشخص نیست یا رفتار مشکوکی دارند، برای بررسی عمیق‌تر به Sandbox ارسال می‌شوند.

این روش باعث می‌شود تهدیدهای شناخته‌شده سریع‌تر شناسایی شوند و منابع Sandbox فقط برای فایل‌هایی مصرف شود که واقعاً به تحلیل بیشتری نیاز دارند؛ در نتیجه تأخیر و مصرف منابع نیز کاهش پیدا می‌کند.

ارتباط Sandboxing با اطلاعات تهدید

Sandbox علاوه بر استفاده از Threat Intelligence می‌تواند خودش Threat Intelligence جدید تولید کند. فرض کنید فایل ناشناخته‌ای داخل Sandbox اجرا می‌شود و بعد از اجرا به یک Domain ناشناس متصل می‌شود. در جریان تحلیل ممکن است اطلاعاتی مانند این‌ها استخراج شوند:

IP مخرب، Domain، URL، Hash و C2 Server

این اطلاعات می‌توانند به‌عنوان Indicator of Compromise – IoC ثبت شوند. سپس همین IoCها می‌توانند در فایروال، Endpoint، SIEM یا سایر ابزارهای امنیتی استفاده شوند.

در نتیجه:

Sandbox Analysis ← کشف رفتار ← استخراج IoC ← استفاده در Threat Intelligence

یعنی تحلیل یک فایل می‌تواند به شناسایی همان تهدید در سیستم‌های دیگر نیز کمک کند.

ارتباط Sandboxing با DPI

Deep Packet Inspection یا DPI به فایروال کمک می‌کند محتوای ترافیک را دقیق‌تر بررسی کند.

DPI ممکن است تشخیص دهد یک فایل از طریق Connection در حال انتقال است. بعد از استخراج فایل، Antivirus و Reputation آن را بررسی می‌کنند. اگر فایل ناشناخته باقی بماند، می‌تواند برای Sandbox ارسال شود.

به این ترتیب:

DPI ← شناسایی فایل ← بررسی اولیه ← Sandbox ← تحلیل رفتاری

این زنجیره نمونه خوبی از نحوه همکاری فناوری‌های مختلف در NGFW است.

ارتباط Sandboxing با SSL/TLS Inspection

امروزه بخش بزرگی از فایل‌ها از طریق HTTPS منتقل می‌شوند. بنابراین اگر یک فایل مشکوک داخل ترافیک رمزگذاری‌شده باشد، فایروال باید ابتدا بتواند آن را مشاهده کند.

در صورت فعال بودن سیاست مناسب:

TLS Inspection ← رمزگشایی ← استخراج فایل ← اسکن امنیتی ← Sandbox

اگر SSL/TLS Inspection فعال نباشد، در بعضی سناریوها دید فایروال نسبت به فایل‌های موجود داخل ارتباط رمزگذاری‌شده محدود می‌شود.

نقش Sandboxing در فایروال نسل جدید

Sandboxingدر یک Next-Generation Firewall – NGFW معمولاً یکی از چند لایه امنیتی است. فایل ممکن است از چندین مرحله عبور کند:

Firewall Rule ← TLS Inspection ← DPI ← Antivirus ← Threat Intelligence ← Sandboxing

هر مرحله بخشی از خطر را بررسی می‌کند. این طراحی باعث می‌شود فایل‌های ساده و شناخته‌شده سریع پردازش شوند و فقط موارد ناشناخته برای تحلیل سنگین‌تر به Sandbox ارسال شوند.

Cloud Sandbox چیست؟

در Cloud Sandbox محیط تحلیل در زیرساخت Cloud قرار دارد. فایروال یا ابزار امنیتی فایل مشکوک را برای سرویس Cloud ارسال می‌کند. فایل آنجا تحلیل و اجرا می‌شود و Verdict نهایی به فایروال برگردانده می‌شود.

Cloud Sandbox مزایایی مانند قدرت پردازشی بیشتر، به‌روزرسانی متمرکز، مقیاس‌پذیری بهتر و اشتراک سریع‌تر Threat Intelligence دارد. در بسیاری از محصولات امنیتی مدرن، این روش رایج‌تر است.

On-Premise Sandbox چیست؟

در On-Premise Sandbox محیط تحلیل داخل زیرساخت خود سازمان قرار دارد. این روش برای سازمان‌هایی مناسب است که نمی‌خواهند فایل‌هایشان برای تحلیل به Cloud ارسال شود.

مثلاً سازمان‌هایی با:

قوانین سخت‌گیرانه Data Residency، اطلاعات بسیار محرمانه یا شبکه‌های جدا از اینترنت. در مقابل، راه‌اندازی این مدل نیازمند سخت‌افزار، نگهداری، منابع پردازشی و مدیریت تخصصی بیشتری است.

تفاوت Cloud Sandbox و On-Premise Sandbox

ویژگی Cloud Sandbox On-Premise Sandbox
محل تحلیل Cloud داخل سازمان
نیاز به سخت‌افزار کم بیشتر
نگهداری ساده‌تر پیچیده‌تر
مقیاس‌پذیری بالا وابسته به سخت‌افزار
کنترل روی داده کمتر بیشتر
مناسب اطلاعات بسیار حساس نیازمند بررسی سیاست مناسب‌تر
به‌روزرسانی متمرکز توسط سازمان

انتخاب بین این دو مدل باید بر اساس نیاز امنیتی، حریم خصوصی، هزینه و ساختار شبکه انجام شود.

Sandbox Evasion چیست؟

بدافزارهای پیشرفته همیشه به شکل ساده عمل نمی‌کنند. بعضی از آن‌ها تلاش می‌کنند ابتدا تشخیص دهند که آیا داخل یک محیط جعبه شنی اجرا شده‌اند یا روی یک سیستم واقعی.

به این تکنیک Sandbox Evasion گفته می‌شود.

بدافزار ممکن است مواردی مانند تعداد پردازنده‌ها، نوع سخت‌افزار، فعالیت کاربر، فرایندهای در حال اجرا یا وجود ماشین مجازی را بررسی کند. اگر متوجه شود در یک محیط آزمایشی قرار دارد، ممکن است رفتار مخرب خود را اجرا نکند یا آن را برای مدتی به تأخیر بیندازد.

در چنین شرایطی، ممکن است جعبه شنی فایل را سالم تشخیص دهد، درحالی‌که فایل در یک سیستم واقعی رفتار مخرب خود را فعال می‌کند.

راهکارهای پیشرفته تلاش می‌کنند محیطی شبیه سیستم واقعی ایجاد کنند تا شناسایی محیط آزمایشی برای بدافزار دشوارتر شود و تکنیک‌های Sandbox Evasion نیز شناسایی شوند.

قابلیت محافظت در برابر تهدیدهای روز صفر سوفوس نیز در جریان تحلیل، تکنیک‌های Sandbox Evasion را بررسی می‌کند.

Time Bomb در بدافزار چیست؟

یکی دیگر از روش‌های فرار از Sandbox این است که بدافزار رفتار مخرب خود را با تأخیر اجرا کند.

مثلاً ممکن است فایل:

۳۰ دقیقه صبر کند، بعد از راه‌اندازی مجدد سیستم فعال شود یا فقط در زمان خاصی Payload خود را اجرا کند.

اگر Sandbox فایل را فقط چند دقیقه بررسی کند، ممکن است رفتار اصلی آن را مشاهده نکند.

به چنین روش‌هایی گاهی Time Bomb یا اجرای تأخیری گفته می‌شود.

Sandboxهای پیشرفته برای مقابله با این رفتار از روش‌هایی مانند تحلیل کد، شبیه‌سازی زمان و تسریع اجرای برنامه استفاده می‌کنند.

Sandboxing چه مزایایی دارد؟

یکی از مهم‌ترین مزایا، توانایی بررسی تهدیدهای ناشناخته است. Sandbox لزوماً به Signature قبلی نیاز ندارد و می‌تواند فایل را بر اساس رفتارش ارزیابی کند.

مزیت دیگر، ایزوله بودن محیط تحلیل است؛ یعنی حتی اگر فایل واقعاً مخرب باشد، اجرای آن نباید سیستم اصلی را تحت تأثیر قرار دهد.

Sandbox همچنین اطلاعات ارزشمندی برای Incident Response تولید می‌کند. تیم امنیتی می‌تواند بفهمد فایل چه Processهایی ساخته، به چه IPهایی وصل شده و چه تغییراتی در سیستم انجام داده است.

علاوه بر این، IoCهای کشف‌شده در جریان تحلیل می‌توانند برای بهبود Threat Intelligence استفاده شوند.

محدودیت‌های Sandboxing

Sandboxing بدون محدودیت نیست. تحلیل پویا زمان‌بر است و ممکن است باعث افزایش زمان دریافت فایل شود.

برخی بدافزارها نیز از تکنیک‌های فرار و پنهان‌سازی استفاده می‌کنند تا رفتار واقعی خود را در محیط جعبه شنی نشان ندهند.

همچنین احتمال مثبت کاذب و منفی کاذب همچنان وجود دارد؛ یعنی ممکن است یک فایل سالم به‌اشتباه مخرب تشخیص داده شود یا یک فایل مخرب از شناسایی عبور کند.

از طرف دیگر، اگر از جعبه شنی ابری (Cloud Sandbox) استفاده شود، ارسال فایل‌ها به یک زیرساخت خارجی باید از نظر حریم خصوصی، محرمانگی اطلاعات و محل نگهداری داده‌ها بررسی شود.

به همین دلیل، Sandboxing باید بخشی از یک معماری دفاعی چندلایه باشد و نباید به‌عنوان تنها ابزار امنیتی سازمان در نظر گرفته شود.

Sandboxing در فایروال سوفوس

در نسخه‌های جدید فایروال سوفوس، فناوری Sandboxing در قابلیت Zero-Day Protection قرار گرفته است.

نام قدیمی این قابلیت Sandstorm Protection بود و در مستندات رسمی سوفوس نیز Zero-Day Protection به‌عنوان قابلیت جایگزین Sandstorm معرفی شده است.

Zero-Day Protection از سرویس SophosLabs Intelix برای بررسی فایل‌های ناشناخته و مشکوک استفاده می‌کند. زمانی که یک فایل ناشناخته وارد شبکه می‌شود، فایروال سوفوس می‌تواند آن را برای بررسی و تحلیل بیشتر به Intelix ارسال کند.

این سرویس برای تشخیص فایل‌های مخرب از چندین لایه تحلیل استفاده می‌کند، از جمله:

  • یادگیری ماشین (Machine Learning)
  • تحلیل ایستا (Static Analysis)
  • تحلیل پویا (Dynamic Analysis)
  • تحلیل در جعبه شنی (Sandbox Analysis)

ترکیب این روش‌ها کمک می‌کند فایل‌هایی که هنوز امضا یا سابقه شناخته‌شده‌ای ندارند نیز بر اساس ساختار و رفتارشان بررسی شوند.

Sophos Zero-Day Protection فایل را چگونه بررسی می‌کند؟

SophosLabs Intelix فایل جدید را ابتدا از نظر ویژگی‌ها، ساختار و اعتبار (Reputation) بررسی می‌کند. مدل‌های یادگیری ماشین (Machine Learning) نیز مشخصات فایل را با تعداد زیادی نمونه سالم و مخرب مقایسه می‌کنند تا نشانه‌های احتمالی تهدید شناسایی شود. اگر بررسی‌های اولیه برای تعیین وضعیت فایل کافی نباشد، فایل می‌تواند وارد Sandbox شود تا رفتار واقعی آن در یک محیط ایزوله بررسی شود. در جریان تحلیل پویا (Dynamic Analysis) مواردی مانند فعالیت فایل‌ها، فعالیت حافظه، تغییرات رجیستری، ارتباطات شبکه، رفتارهای مرتبط با سوءاستفاده از آسیب‌پذیری‌ها و رفتارهای مشابه باج‌افزار بررسی می‌شوند.

قابلیت CryptoGuard نیز می‌تواند رفتارهای مرتبط با رمزگذاری مخرب فایل‌ها را شناسایی کند.

فایل تا زمان دریافت نتیجه چه می‌شود؟

در برخی سناریوها، فایل تا مشخص شدن نتیجه نهایی در وضعیت در انتظار (Pending) قرار می‌گیرد و تا پایان بررسی به کاربر تحویل داده نمی‌شود. اگر همان فایل قبلاً بررسی شده باشد، ممکن است نتیجه آن در حافظه موقت (Cache) موجود باشد. در این حالت نیازی نیست فایل دوباره از ابتدا تحلیل شود.

در گزارش‌های Sophos Firewall ممکن است وضعیت‌هایی مانند موارد زیر برای فایل مشاهده شود:

  • Pending: بررسی فایل هنوز تکمیل نشده است.
  • Cached Clean: فایل قبلاً بررسی شده و نتیجه سالم آن در حافظه موقت وجود دارد.
  • Cloud Clean: فایل در سرویس ابری بررسی شده و سالم تشخیص داده شده است.
  • Cloud Malicious: فایل در تحلیل ابری مخرب تشخیص داده شده است.

این روش باعث می‌شود فایل‌های تکراری سریع‌تر پردازش شوند و بیشتر منابع تحلیل برای فایل‌های جدید و ناشناخته مصرف شود.

یک مثال ساده از عملکرد Sandboxing

فرض کنید کاربر یک فایل Word را از اینترنت دانلود می‌کند. آنتی‌ویروس فایل را به‌عنوان یک بدافزار شناخته‌شده تشخیص نمی‌دهد، اما فایل دارای یک ماکروی مشکوک است. به همین دلیل فایل برای بررسی بیشتر به Sandbox ارسال می‌شود.

پس از اجرا در محیط جعبه شنی، رفتار زیر مشاهده می‌شود:

باز شدن فایل Word ← اجرای ماکرو ← اجرای PowerShell ← اتصال به یک IP ناشناس ← دانلود فایل مخرب

این مجموعه رفتارها می‌تواند نشان‌دهنده فعالیت مخرب باشد. در نتیجه سیستم فایل را مخرب تشخیص می‌دهد، آن را مسدود می‌کند و رویداد مربوطه را در گزارش‌ها ثبت می‌کند.

در نهایت فایل خطرناک به کاربر تحویل داده نمی‌شود.

مثال از عملکرد Sandboxing
مثال از عملکرد Sandboxing

آیا Sandboxing جایگزین آنتی‌ویروس است؟

خیر. Sandboxing و آنتی‌ویروس مکمل یکدیگر هستند. آنتی‌ویروس برای شناسایی سریع تهدیدهای شناخته‌شده مناسب‌تر است، درحالی‌که Sandbox بیشتر برای بررسی فایل‌های ناشناخته و مشکوک استفاده می‌شود. از آنجا که تحلیل در Sandbox منابع بیشتری مصرف می‌کند و معمولاً زمان‌برتر است، منطقی نیست تمام فایل‌ها مستقیماً وارد جعبه شنی شوند.

یک فرایند مناسب می‌تواند به این شکل باشد:

آنتی‌ویروس ← بررسی اعتبار ← تحلیل ایستا ← Sandbox

در این مدل، تهدیدهای شناخته‌شده در مراحل اولیه شناسایی و مسدود می‌شوند و فقط فایل‌هایی که وضعیت آن‌ها مشخص نیست برای تحلیل عمیق‌تر به Sandbox فرستاده می‌شوند.

آیا Sandboxing جایگزین IPS است؟

خیر.

IPS بیشتر روی ترافیک شبکه و شناسایی الگوهای حمله یا تلاش برای سوءاستفاده از آسیب‌پذیری‌ها تمرکز دارد، درحالی‌که Sandboxing بیشتر رفتار فایل، اسکریپت یا کد مشکوک را بعد از اجرا بررسی می‌کند.

برای مثال، IPS ممکن است یک تلاش برای سوءاستفاده از یک آسیب‌پذیری را در ترافیک شبکه شناسایی کند، اما Sandbox یک فایل ناشناخته را در محیط جعبه شنی اجرا می‌کند تا مشخص شود پس از اجرا چه رفتاری دارد.

بنابراین این دو فناوری جایگزین یکدیگر نیستند و در یک معماری امنیتی مناسب در کنار هم استفاده می‌شوند.

Sandboxing در کنار سایر فناوری‌های فایروال

در یک فایروال نسل جدید (NGFW) هر فناوری بخش متفاوتی از تهدید را بررسی می‌کند.

  • DPI محتوای ترافیک را با جزئیات بیشتری بررسی می‌کند.
  • IPS الگوهای حمله و تلاش برای سوءاستفاده از آسیب‌پذیری‌ها را شناسایی می‌کند.
  • کنترل برنامه‌ها (Application Control) مشخص می‌کند چه برنامه یا سرویسی ترافیک را ایجاد کرده است.
  • بازرسی SSL/TLS امکان بررسی بخشی از ترافیک رمزگذاری‌شده را فراهم می‌کند.
  • Threat Intelligence اطلاعات و سابقه شناخته‌شده درباره IPها، دامنه‌ها، URLها و سایر تهدیدها را در اختیار فایروال قرار می‌دهد.
  • Sandboxing فایل ناشناخته یا مشکوک را در یک محیط ایزوله اجرا می‌کند تا رفتار واقعی آن مشخص شود.

قدرت واقعی یک NGFW زمانی بیشتر می‌شود که این فناوری‌ها به‌صورت هماهنگ و در قالب یک دفاع چندلایه در کنار یکدیگر استفاده شوند.

جمع‌بندی

Sandboxing یکی از فناوری‌های مهم برای تحلیل فایل‌ها و کدهای مشکوک است. در این روش، فایل در یک محیط ایزوله یا جعبه شنی اجرا می‌شود تا رفتار واقعی آن بدون به خطر انداختن سیستم اصلی بررسی شود.

برخلاف روش‌هایی که فقط به امضا، Hash یا سابقه فایل متکی هستند، Sandbox می‌تواند رفتارهایی مانند اجرای فرایندهای جدید، تغییر رجیستری، ارتباط با سرور فرماندهی و کنترل (C2)، دانلود فایل‌های دیگر یا رمزگذاری فایل‌های کاربر را مشاهده کند.

به همین دلیل Sandboxing می‌تواند در شناسایی بدافزارهای جدید، باج‌افزارها و بخشی از تهدیدهای روز صفر نقش مهمی داشته باشد.

با این حال، Sandboxing جایگزین آنتی‌ویروس، IPS، DPI یا Threat Intelligence نیست. بهترین نتیجه زمانی به دست می‌آید که این فناوری در کنار سایر لایه‌های امنیتی استفاده شود.

در فایروال سوفوس (Sophos Firewall) نیز قابلیت Zero-Day Protection که پیش‌تر با نام Sandstorm Protection شناخته می‌شد، با استفاده از SophosLabs Intelix، یادگیری ماشین، تحلیل ایستا، تحلیل پویا و Sandbox Analysis فایل‌های ناشناخته و مشکوک را پیش از ورود به شبکه بررسی می‌کند.

‫0/5 ‫(0 نظر)

سوالات متداول درباره Sandboxing

Sandboxing روشی است که فایل یا برنامه مشکوک را در یک محیط جدا و کنترل‌شده اجرا می‌کند تا رفتار آن بدون آسیب رساندن به سیستم واقعی بررسی شود.

نام Sandbox از «جعبه شنی» کودکان گرفته شده است؛ فضایی محدود که اتفاقات داخل آن به محیط اطراف آسیب نمی‌زند. در دنیای کامپیوتر هم کد مشکوک در یک محیط محدود و جدا اجرا می‌شود.

فایل در محیط Sandbox اجرا می‌شود و فعالیت‌هایی مانند ایجاد فایل، تغییر Registry، اجرای Process جدید، ارتباط با اینترنت و رفتارهای غیرعادی بررسی می‌شوند.

آنتی ویروس معمولاً برای شناسایی سریع بدافزارهای شناخته‌شده استفاده می‌شود، اما Sandbox برای تحلیل عمیق فایل‌های ناشناخته و مشکوک کاربرد دارد.

Sandbox می‌تواند بعضی تهدیدات روز صفر را از روی رفتار غیرعادی شناسایی کند، اما هیچ فناوری نمی‌تواند شناسایی همه حملات روز صفر را تضمین کند.

در Cloud Sandbox فایل مشکوک برای تحلیل به یک محیط ایزوله در Cloud ارسال می‌شود و نتیجه پس از بررسی به فایروال یا سیستم امنیتی برگردانده می‌شود.

Sandbox Evasion روشی است که بدافزارها تلاش می‌کند محیط Sandbox را تشخیص دهد و در صورت شناسایی آن، رفتار مخرب خود را پنهان کند.

اگر فایل نیاز به تحلیل جدید داشته باشد، ممکن است کاربر مدتی منتظر نتیجه بماند. فایل‌هایی که قبلاً تحلیل شده‌اند معمولاً سریع‌تر پردازش می‌شوند.

Sophos Sandstorm نام قدیمی قابلیت Sandboxing در محصولات سوفوس بود. در فایروال سوفوس امروزی این قابلیت با نام Zero-Day Protection شناخته می‌شود.

سوفوس فایل‌های ناشناخته را برای تحلیل به SophosLabs Intelix ارسال می‌کند. Intelix با استفاده از Machine Learning، Static Analysis و Dynamic Sandbox Analysis مشخص می‌کند فایل سالم یا مخرب است.

نویسنده مقاله

تصویر تیم فنی sophosfirewall.ir
تیم فنی sophosfirewall.ir

این مقاله توسط تیم فنی SophosFirewall.ir تهیه و توسط کارشناسان امنیت شبکه بازبینی شده است. تیم ما در زمینه مشاوره، خرید، تمدید، فعال‌سازی و پشتیبانی لایسنس فایروال‌های Sophos فعالیت می‌کند و محتوای سایت بر اساس تجربه عملی، مستندات فنی و نیازهای رایج سازمان‌ها تدوین می‌شود.

مطالعه سیاست محتوای سایت

محتوای مقاله

آخرین اخبار و مقالات