Hvad er en Chroot?
En chroot er et isoleret område i et computersystem, hvor brugere kan teste utroede programmer og deltage i andre operationer, som de ikke ønsker at påvirke resten af computeren. Det bruges i Unix og lignende systemer og kræver, at brugeren udfører en række kommandoer, der forkaster rodkataloget, der bruges som reference af programmet. Chroot-kommandoen skal bruges med forsigtighed, fordi systemet stadig kan være sårbart, hvis det ikke er konfigureret korrekt, eller hvis brugeren ikke udøver forsigtighed, når den fungerer inde i den.
Når en bruger opretter et chroot-miljø, behandler programmerne, der kører inden for det miljø, det specificerede bibliotek som roden. Disse programmer antager, at der ikke er nogen højere mapper, og at de derfor ikke kan få adgang til det rigtige rodmappe øverst i filsystemet. Dette gør det vanskeligt at foretage ændringer, der kan bringe resten af systemet i fare. Andre programmer kan heller ikke få adgang til og ændre oplysningerne i chroot; det fungerer som en isolationsenhed.
Chroot kan brydes ved hjælp af forskellige teknikker. En af de mest basale involverer at lade brugeren være i chroot med rodrettigheder, som giver mulighed for omfattende ændringer af systemet. Programmer kan drage fordel af dette for at bryde ud af deres digitale fængsel og få adgang til resten af systemet. Af denne grund er det vigtigt at ændre brugertilladelser så hurtigt som muligt, en standardforanstaltning inden for computersikkerhed. At lade brugere indstilles til de mindst privilegerede roller som en generel regel kan reducere risikoen for et sikkerhedsproblem.
Den falske rodkatalog skal også være passende udfyldt med ressourcer, programmerne skal bruge. Hvis det ikke er tilfældet, kører de muligvis ikke korrekt. Brugere holder typisk alt, som ikke er strengt nødvendigt, ud af chroot, men behøver at sikre sig, at nogle oplysninger er tilgængelige. Når brugerne navigerer i miljøet, kan de notere sig specifikke problemer eller bekymringer, der opstår, så de er opmærksomme på, før de prøver de samme processer i computersystemet som helhed.
Dette kan være et nyttigt testmiljø, hvor en bruger ønsker at udforske kode eller programmer med en reduceret risiko for resten af systemet. Det kan også være værdifuldt til håndtering af ukendte eller ikke-betroede materialer. I stedet for at indlæse disse direkte på systemet, kan brugeren bruge chroot til at undersøge og evaluere dem for at afgøre, om de er sikre.