تشخیص Sandbox توسط بدافزارها ✅دقت در انتخاب سندباکس
نکاتی در زمینه این موضوع در ذیل بیان میکنم امید در انتخاب سند باکس مفید واقع شود. #تجربه
بدافزارهای پیشرفته برای فرار از تحلیل پویا در Sandbox، از مجموعهای از تکنیکهای Anti‑VM، Anti‑Sandbox و Anti‑Debug استفاده میکنند و با جمعآوری چندین شاخص تصمیم میگیرند که در محیط واقعی اجرا شدهاند یا در محیط تحلیل.
یکی از روشهای رایج، Fingerprinting سختافزار و هایپروایزر است. بدافزار با استفاده از دستوراتی مانند CPUID وجود Hypervisor را بررسی میکند یا مقادیر SMBIOS/DMI را برای یافتن نشانههایی مانند VMware و VirtualBox تحلیل میکند. همچنین بررسی MAC Address OUI، تعداد غیرعادی هستههای CPU، مدل دیسک و سایر Artifactهای ماشین مجازی میتواند نشانهای از Sandbox باشد.
دسته دیگر، حملات زمانی (Timing Attacks) است. بدافزار با اندازهگیری تأخیر اجرای دستورات از طریق RDTSC یا QueryPerformanceCounter به دنبال افزایش latency ناشی از VM‑exit یا Hookهای امنیتی میگردد.
در سطح Anti‑Debug، توابعی مانند IsDebuggerPresent یا بررسی ساختار PEB برای شناسایی دیباگر استفاده میشوند. برخی نمونهها همچنین وجود ابزارهای EDR یا Breakpointها را نیز بررسی میکنند.
در نهایت، بسیاری از بدافزارها از Behavioral Gating استفاده میکنند؛ یعنی تا زمانی که نشانههایی از تعامل واقعی کاربر، دادههای کاربری، یا شرایط شبکه معتبر مشاهده نشود، payload اصلی فعال نمیشود. این رویکرد چندعاملی باعث میشود تحلیل خودکار Sandbox دشوارتر شود.