Sandboxing to technika bezpieczeństwa, która uruchamia program lub plik w odizolowanym środowisku. Dzięki temu kod może działać bez bezpośredniego dostępu do najważniejszych zasobów głównego systemu operacyjnego.

Czym jest sandboxing?
Nazwa „sandboxing” pochodzi od angielskiego słowa sandbox, czyli piaskownica. To trafna analogia: dziecko może bawić się w wydzielonym miejscu, a piasek nie rozsypuje się po całym otoczeniu. W informatyce taką piaskownicą jest specjalnie odseparowana przestrzeń dla programu, skryptu albo pliku.
Można ją potraktować jak ograniczone środowisko dla podejrzanego kodu. Aplikacja otrzymuje zasoby potrzebne do działania, ale nie powinna mieć swobodnego dostępu do plików użytkownika, ustawień systemowych ani innych procesów. Jeśli uruchomiony program okaże się złośliwy, izolacja utrudnia mu przeniknięcie do głównego systemu.
Jak działa sandboxing?
W tym modelu komputer można podzielić na dwa obszary. Host to główny system operacyjny, na którym znajdują się dokumenty, aplikacje i ustawienia użytkownika. Guest to środowisko uruchomione wewnątrz systemu, czyli właśnie sandbox. Guest może przypominać zwykły komputer, ale jego dostęp do hosta jest ograniczony.
Sandbox kontroluje między innymi dostęp do plików systemowych, rejestru, pamięci i procesora. W zależności od zastosowania korzysta z mechanizmów izolacji systemu operacyjnego, kontenerów lub wirtualizacji. Nie oznacza to zawsze pełnej, fizycznej separacji na osobnym komputerze. Najczęściej jest to programowo utworzone środowisko, które zarządza tym, jakie zasoby może zobaczyć i zmienić uruchomiony kod.
Istotna jest także tymczasowość. Pliki utworzone w sandboxie oraz zmiany wprowadzone w jego konfiguracji zwykle pozostają tylko w tej odizolowanej przestrzeni. Po jej zamknięciu środowisko może zostać usunięte lub zresetowane, a główny system wraca do wcześniejszego stanu. Dlatego sandbox przypomina jednorazowe stanowisko testowe, a nie dodatkowe miejsce do przechowywania danych.
Izolacja nie jest jednak absolutną gwarancją bezpieczeństwa. Podobnie jak inne mechanizmy ochronne, sandbox może mieć błędy. Istnieją ataki typu sandbox escape, których celem jest wydostanie się z odseparowanego środowiska do systemu gospodarza. Z tego powodu piaskownica powinna uzupełniać aktualizacje, ochronę antywirusową i ostrożność użytkownika, a nie całkowicie je zastępować. Jej uruchomienie zużywa też dodatkową pamięć i moc procesora.
Do czego wykorzystuje się sandboxing?
Technologia przydaje się wszędzie tam, gdzie trzeba uruchomić kod, któremu nie ufa się w pełni. Najczęstsze zastosowania obejmują:
- Otwieranie podejrzanych załączników – plik można sprawdzić w odseparowanym środowisku, zamiast od razu uruchamiać go na głównym systemie.
- Testowanie nieznanego oprogramowania – aplikacja może zostać uruchomiona bez trwałego wpływu na konfigurację komputera gospodarza.
- Ochronę przeglądarki – procesy przeglądarki i skrypty ze stron internetowych mogą działać z ograniczonym dostępem do systemu.
- Ograniczanie skutków błędów – awaria programu działającego w piaskownicy nie musi zawiesić całego systemu operacyjnego.
Przykładem narzędzia dostępnego w systemie Windows jest Windows Sandbox. Pozwala ono uruchomić tymczasowe środowisko do testowania aplikacji i plików. Podobne mechanizmy są używane przez przeglądarki internetowe, systemy antywirusowe oraz inne programy, które muszą wykonywać potencjalnie niebezpieczny kod.
Czy sandboxing jest dostępny dla każdego?
Tak. Użytkownik nie musi znać szczegółów działania jądra systemu ani samodzielnie budować mechanizmu izolacji. Nowoczesne systemy operacyjne, w tym Windows 10 i Windows 11, oferują narzędzia wykorzystujące sandboxing, a przeglądarki stosują podobne rozwiązania w tle.
Najważniejsza zasada jest prosta: program uruchomiony w piaskownicy działa w ograniczonym, tymczasowym środowisku, dzięki czemu jego wpływ na główny system jest mniejszy. To jeden z podstawowych sposobów ochrony komputera przed skutkami niepewnego kodu.