Sandboxing to ważna technika bezpieczeństwa, która izoluje programy, zapobiegając szkodliwym lub nieprawidłowo działającym programom przed uszkodzeniem lub podsłuchiwaniem na pozostałej części komputera. Oprogramowanie, z którego korzystasz, już działa w piaskownicy na wiele kodów uruchamianych każdego dnia.
Możesz także tworzyć własne piaskownice, aby testować lub analizować oprogramowanie w chronionym środowisku, w którym nie będzie ono mogło uszkodzić reszty systemu.
Jak piaskownice są niezbędne dla bezpieczeństwa
Piaskownica to ściśle kontrolowane środowisko, w którym można uruchamiać programy. Piaskownice ograniczają to, co może zrobić fragment kodu, dając mu tyle samo uprawnień, ile potrzeba, bez dodawania dodatkowych uprawnień, które mogłyby zostać nadużywane.
Na przykład Twoja przeglądarka zasadniczo obsługuje strony internetowe odwiedzane w piaskownicy. Są one ograniczone do uruchamiania w przeglądarce i uzyskiwania dostępu do ograniczonego zestawu zasobów - nie mogą wyświetlać kamery internetowej bez pozwolenia lub odczytać lokalnych plików komputera. Jeśli odwiedzane witryny nie byłyby izolowane od piaskownicy i izolowane od reszty systemu, odwiedzenie złośliwej witryny byłoby tak samo złe jak instalacja wirusa.
Inne programy na twoim komputerze również są piaskowane. Na przykład przeglądarki Google Chrome i Internet Explorer działają w piaskownicy. Te przeglądarki to programy uruchomione na komputerze, ale nie mają one dostępu do całego komputera. Działają w trybie niskiego poziomu uprawnień. Nawet jeśli strona wykryje lukę w zabezpieczeniach i uda jej się przejąć kontrolę nad przeglądarką, będzie musiała uciec z piaskownicy przeglądarki, aby wyrządzić prawdziwe szkody. Uruchamiając przeglądarkę z mniejszymi uprawnieniami, zyskujemy bezpieczeństwo. Niestety, Mozilla Firefox nadal nie działa w piaskownicy.
Co już jest piaskownicą
Większość kodu, który Twoje urządzenia uruchamiają każdego dnia, jest już bezpieczna dla piaskownicy:
- Strony internetowe: Twoja przeglądarka zasadniczo śledzi strony internetowe, które ładuje. Strony internetowe mogą uruchamiać kod JavaScript, ale ten kod nie może zrobić niczego, czego chce - jeśli kod JavaScript próbuje uzyskać dostęp do lokalnego pliku na komputerze, żądanie nie powiedzie się.
- Zawartość wtyczki przeglądarki: Treści ładowane przez wtyczki przeglądarki - takie jak Adobe Flash lub Microsoft Silverlight - są również uruchamiane w piaskownicy. Granie w grę flash na stronie internetowej jest bezpieczniejsze niż pobieranie gry i uruchamianie jej jako standardowego programu, ponieważ Flash izoluje grę od reszty systemu i ogranicza możliwości jej działania. Wtyczki do przeglądarek, w szczególności Java, są częstym celem ataków, które wykorzystują luki w zabezpieczeniach, aby uciec przed tą piaskownicą i wyrządzić szkody.
- Pliki PDF i inne dokumenty: Adobe Reader uruchamia teraz pliki PDF w piaskownicy, uniemożliwiając im ucieczkę przed przeglądarką plików PDF i manipulowanie resztą komputera. Pakiet Microsoft Office ma również tryb piaskownicy, aby zapobiec niebezpiecznym zagrożeniom dla systemu.
- Przeglądarki i inne potencjalnie podatne aplikacje: Przeglądarki internetowe działają w trybie niskiego poziomu uprawnień, w trybie piaskownicy, aby zapewnić, że nie mogą wyrządzić dużych szkód, jeśli zostaną przejęte:
- Aplikacje mobilne: Platformy mobilne uruchamiają swoje aplikacje w piaskownicy. Aplikacje na iOS, Androida i Windows 8 są ograniczone do robienia wielu rzeczy, które mogą zrobić standardowe aplikacje komputerowe. Muszą zadeklarować uprawnienia, jeśli chcą zrobić coś w rodzaju dostępu do Twojej lokalizacji. W zamian zyskujemy pewne zabezpieczenia - piaskownica izoluje aplikacje od siebie nawzajem, dzięki czemu nie mogą się wzajemnie ingerować.
- Programy systemu Windows: Kontrola konta użytkownika działa jak piaskownica, zasadniczo ograniczając aplikacje pulpitu systemu Windows przed modyfikacją plików systemowych bez uprzedniego pytania użytkownika o pozwolenie. Zauważ, że jest to bardzo minimalna ochrona - każdy program pulpitu systemu Windows może zdecydować się usiąść w tle i zalogować wszystkie klawisze, na przykład. Kontrola konta użytkownika ogranicza dostęp do plików systemowych i ustawień ogólnosystemowych.
Jak Sandbox Dowolny program
Programy komputerowe nie są domyślnie piaskownicą. Oczywiście, jest UAC - ale jak wspomniano powyżej, jest to bardzo minimalne sandboxing. Jeśli chcesz przetestować program i uruchomić go bez przeszkadzania reszcie systemu, możesz uruchomić dowolny program w piaskownicy.
- Wirtualne maszyny: Program maszyny wirtualnej, taki jak VirtualBox lub VMware, tworzy wirtualne urządzenia sprzętowe, których używa do uruchamiania systemu operacyjnego. Drugi system operacyjny działa w oknie na pulpicie. Cały ten system operacyjny jest w istocie piaskownicy, ponieważ nie ma dostępu do niczego poza maszyną wirtualną. Można zainstalować oprogramowanie w zwirtualizowanym systemie operacyjnym i uruchomić to oprogramowanie tak, jakby działało na standardowym komputerze. To pozwoli na przykład zainstalować złośliwe oprogramowanie i przeanalizować je - lub po prostu zainstalować program i sprawdzić, czy robi coś złego. Programy maszyn wirtualnych zawierają również funkcje migawek, dzięki czemu można "przywrócić" system operacyjny gościa do stanu, w którym był, zanim zainstalowano złe oprogramowanie.
- Sandboxie: Sandboxie to program systemu Windows, który tworzy piaskownice dla aplikacji Windows. Tworzy izolowane środowiska wirtualne dla programów, uniemożliwiając im dokonywanie trwałych zmian na komputerze. Może to być przydatne do testowania oprogramowania. Zapoznaj się z naszym wprowadzeniem do Sandboxie, aby uzyskać więcej informacji.
Sandboxing nie jest czymś, o czym przeciętny użytkownik musi się martwić. Programy, których używasz, działają w tle, aby zapewnić Ci bezpieczeństwo. Należy jednak pamiętać o tym, co jest piaskowane, a co nie - dlatego bezpieczniej jest załadować dowolną stronę internetową niż uruchomić dowolny program.
Jeśli jednak chcesz piaskować standardowy program komputerowy, który normalnie nie byłby piaskownicą, możesz to zrobić za pomocą jednego z powyższych narzędzi.