در امنیت رایانهای جعبهٔ شنی (به انگلیسی: Sandbox) یک سازوکار حفاظتی برای جدا نگاهداشتن بعضی نرمافزارهای در حال اجرا در آن واحد با دیگر نرمافزارهاست، و اغلب برای اجرای کدهای تست نشده یا برنامه یا تارنماهای غیرقابل اعتماد مورد استفاده قرار میگیرد تا خطرات احتمالی، سیستمعامل یا میزبان را تهدید نکند.
اصطلاح sandbox از ایده جعبه شنی کودک میآید، که در آن ماسه و اسباببازیها در یک محوطه کوچک قرار میگیرند تا کودکان بتوانند با خیال راحت بازی کنند. در واقع sandboxing یک محیط آزمایشی امن و مجزا برای اجرا و آزمایش کدهای کامپیوتری ایجاد میکند تا کاربران و محیطهای تولید را ایمن نگه دارد.
توسعه دهندگان نرم افزار از سندباکسها برای آزمایش کدهای برنامهنویسی جدید استفاده میکنند. متخصصان امنیت سایبری از سندباکس برای آزمایش نرمافزارهای مخرب بالقوه استفاده میکنند. بدون sandbox، نرم افزار یا برنامههای کاربردی میتوانند به طور بالقوه دسترسی نامحدودی به تمام دادههای کاربر و منابع سیستم در یک شبکه داشته باشند.
Sandboxing از زیرساختهای حیاتی سازمان در برابر کدهای مشکوک محافظت میکند زیرا در یک سیستم جداگانه اجرا میشود. همچنین به IT اجازه میدهد تا کدهای مخرب را در یک محیط ایزوله آزمایش کند تا نحوه عملکرد آن را درک کند و همچنین حملات بدافزار مشابه را با سرعت بیشتری شناسایی کند.
عملکرد
جعبهٔ شنی معمولاً منابعی را به صورت کنترل شده در اختیار برنامه مهمان قرار میدهد. مثلاً قطعهای از حافظه و دیسک به صورت چکنویس در اختیار برنامه مهمان قرار میگیرد. در جعبهٔ شنی دسترسی برنامه مهمان به منابع سیستم، ارتباط شبکه، سرکشی به سیستم میزبان و دستگاههای ورودی، معمولاً مسدود یا به شدت محدود و کنترل میشوند. در جعبهٔ شنی، حالتی نظیر مجازیسازی ایجاد میشود. معمولاً از جعبهٔ شنی، برای تست برنامههایی استفاده میشوند که ممکن است حاوی بدافزار باشند.
چنانچه برنامههایی نظیر رایانامهخوان و مرورگر اینترنت را در جعبهٔ شنی اجرا شوند، ریسک آلوده شدن از طریق پیوست و ابرپیوندها کاهش مییابد.
خطرات
استفاده از جعبهٔ شنی تضمینی در جلوگیری از آلودهشدن برنامهٔ میزبان را به دست نمیدهد. بسیاری از بدافزارها حاوی دستورالعملهای جهت دور زدن جعبههای شنی میباشند.
نمونههایی از استفاده از Sandbox
- محتوای پلاگین مرورگر اغلب به استفاده از sandbox برای نمایش محتوای بارگیری شده توسط پلاگینهای مرورگر، از جمله Microsoft Silverlight و Adobe Flash (که اکنون منسوخ شده است) بستگی دارد.
با این حال، حفظ امنیت این نوع محتوا بسیار دشوار است. درحالیکه اجرای یک بازی فلش در یک صفحه وب امنتر از دانلود و اجرای آن به عنوان یک برنامه استاندارد بود، ناشران محتوا به دلیل مزیت انتشار محتوای فعال با استفاده از HTML5، تا حد زیادی از چنین افزونههایی فاصله گرفتند زیرا شامل این ویژگی sandbox است که به مرورگر دستور میدهد هر ویژگی را که ممکن است خطرات امنیتی ایجاد کند غیرفعال کند.
- فایلهای PDF و سایر اسناد ممکن است شامل کدهای اجرایی باشند، بنابراین Adobe Reader Protected Mode فایلهای PDF را در sandbox اجرا میکند، که مانع از فراتر رفتن آنها ازPDF viewer و تداخل با بقیه رایانه میشود.
مایکروسافت آفیس نیز برای جلوگیری از دستکاری ماکروهای ناامن در سیستم دارای حالت سندباکس است. همچنین کاربران ویندوز میتوانند از Sandbox داخلی ویندوز استفاده کنند.
- برنامههای موبایل عموماً توسط پلتفرمهای موبایل در Sandboxها اجرا میشوند. برنامههای iOS، Android و Windows از انجام بسیاری از کارهایی که برنامههای دسکتاپ استاندارد میتوانند انجام دهند، منع شدهاند.
- مجازی سازی: VM در اصل نوعی sandbox است. این رویکرد از یک سندباکس مبتنی بر VM برای کنترل و بررسی برنامههای مشکوک استفاده میکند.
Sandboxie
Sandboxie از معروفترین و قدرتمندترین نرم افزارهای امنیتی جهت حفاظت مرورگرهای وب و یا اجرای نرم افزار در محیط مشکوک و غیر قابل اطمینان میباشد.