Annonse

hva er en sandkasseTa en titt på applikasjonene du bruker mest på datamaskinen din. En god del av dem tilbyr mer enn sannsynlig funksjonalitet som er veldig koblet til, spesielt nettleseren din. Disse svært koblende programmene kan gjøre mye, men de er også en åpen invitasjon for dårlige hackere til å slå til.

For å forhindre at streik blir vellykket, må en utvikler få øye på og lukke hvert eneste hull i koden, noe som ganske enkelt ikke er mulig. I stedet må utviklere ta det faktum og planlegge koden deres med det i tankene. Den vanligste og effektive løsningen: en sandkasse.

Sand i en boks?

hva er en sandkasse
Nei, det er ikke den lokale parksandkassen jeg foretrekker, men programvaresandkasser. Disse sandkassene har ett sentralt formål: å forhindre spredning av et angrep. Som jeg nevnte ovenfor, vet smarte utviklere at koden ikke er perfekt, og at produktet til slutt vil bli hacket inn i eller på annen måte penetrert. For å beskytte brukeren implementerer de en sandkasse som isolerer deler av programmet. I hovedsak forblir alt som skjer i en sandkasse, i den sandkassen.

Sandkasser i aksjon

hva er en sandkasseapplikasjon
For å forklare sandkasser i handling, bruker jeg Google Chrome som det viktigste eksemplet. Chrome er et av de mest fremtredende produktene for implementering av sandboxing, som Google stolt viser frem som en unik sikkerhetsfunksjon blant nettlesere. Google tok Chrome og delte det i hovedsak opp i tre forskjellige kategorier: hovedprosessen som binder alt sammen, faneprosessen (e) som inneholder sidene og inkluderer rendereren, og pluginprosessen (e). Alle disse kategoriene har forskjellige tillatelsesnivåer slik at de er i stand til å løpe, men disse tillatelsene er bare et minimum, slik at alle av dem er ganske trange. I tillegg kan de forskjellige prosessene egentlig ikke snakke med hverandre, men bare sameksistere. Selv om Flash-innhold fra Flash-plugin-en for eksempel kan være til stede på en side, er prosessene fremdeles separate og snakker ikke med hverandre. Gjengivelsen etterlater bare et mellomrom på siden for den prosessen som skal vises. Denne manglende evnen til å kommunisere er viktig fordi hvis en fane krasjer eller blir kapret, kan den ikke påvirke de andre fanene eller selve systemet.

Firefox har det for, slags

hva er en sandkasseapplikasjon
Firefox har også en sandboksfunksjon, selv om den er begrenset, og skiller den fra tredjeparts plugins som Flash. Mens nettleseren, så vel som alle fanene, kombineres til en enkelt prosess, er det en egen prosess for alle plugins. I Firefox-tilnærming setter den mer tillit til sin egen kode enn Googles gjør med Chrome, og legger skylden for eventuelle nettlesingsproblemer på plugins. Derfor, hvis plugins krasjer på noen måte, påvirkes ikke nettleseren og fanene.

Tenke utenfor boksen

hva er en sandkasse
Selv om det er en god strategi å få sandboksingsteknikker implementert i programmets kode, er det mange andre programmer som ikke har noen sandboksing overhodet. I stedet vil du kjøre en virtuell sandkasse der du kan kjøre programmer som bare kan skape så mye ødeleggelse som mulig i sandkassen, slik at systemet ditt blir i takt. Selv om dette ofte er ment for testing av programvare, er det også et godt valg å kjøre en nettleser eller egentlig annen programvare der inne hvis du heller er paranoid (eller setter inn det andre favorittordet ditt her). Et veldig populært valg for dette er Sandboxie Slik isolerer og tester du usikre applikasjoner på din PC Les mer , men det er andre produkter, både gratis og betalt, som kan oppnå det samme.

Konklusjon

Sandboksing er for tiden et av de hotteste temaene når det gjelder sikkerhet, og det gjør definitivt jobben ganske bra. Selvfølgelig bør utviklere alltid konsentrere seg om å gjøre koden sin så god som mulig, men det hjelper definitivt ikke å ha noen handlingsplaner for når et problem oppstår. Vær oppmerksom på at sandkasser fremdeles ikke er perfekte, ettersom Chrome's sandkasse ble beseiret i Pwn2Own 2012 etter noen ekstremt vanskelige hacks, men de er definitivt et mye bedre valg enn ingen i det hele tatt.

Hva er din mening om sandboxing-applikasjonene? Hvilke forbedringer vil du se i sandboks-nettlesere, eller hvilke applikasjoner tror du trenger sandboksing? Gi oss beskjed i kommentarene!

Bildetillegg: Katie Gregory, Ernst Vikne

Danny er senior ved University of North Texas som liker alle aspekter av open source programvare og Linux.