Læsere som dig hjælper med at støtte MUO. Når du foretager et køb ved hjælp af links på vores websted, kan vi optjene en affiliate-kommission. Læs mere.

Docker er en af ​​de mest brugte containeriseringsplatforme og er meget elsket blandt softwareingeniører. Den leveres med et kraftfuldt CLI-værktøj til styring af Docker-containere og andre relaterede opgaver.

Som standard har du brug for root-privilegier for at køre alle Docker-relaterede kommandoer på Linux. Selvfølgelig kan du ændre dette for nemheds skyld og køre Docker-kommandoer uden root-privilegier, men du skal være opmærksom på sikkerhedsimplikationerne.

Hvad er Docker Attack Surface?

En angrebsflade er antallet af angrebspunkter, mere som antallet af vinduer, som en ondsindet bruger kan bruge til at få adgang til dit system og forårsage kaos. Som en tommelfingerregel bør it-systemer have minimale angrebsflader for at reducere sikkerhedsrisici.

Generelt er Dockers angrebsoverflade meget minimal. Containere kører i et sikkert, isoleret miljø og påvirker ikke værtsoperativsystemet, medmindre andet. Derudover kører Docker-containere kun minimale tjenester, hvilket gør det mere sikkert.

instagram viewer

Du kan konfigurere dit Linux-system til at styre Docker uden sudo-privilegier. Dette kan være praktisk i udviklingsmiljøer, men kan være en alvorlig sikkerhedssårbarhed i produktionssystemer. Og her er grunden til, at du aldrig bør køre Docker uden sudo.

1. Evne til at kontrollere Docker-containere

Uden sudo-rettighederne kan enhver, der har adgang til dit system eller server, kontrollere alle aspekter af Docker. De har adgang til dine Docker-logfiler og kan stoppe og slette containere efter eget ønske eller ved et uheld. Du kan også miste kritiske data, som er afgørende for virksomhedens kontinuitet.

Hvis du bruger Docker-containere i produktionsmiljøer, resulterer nedetid i tab af forretning og tillid.

2. Få kontrol over værts-OS-katalogerne

Docker Volumes er en kraftfuld tjeneste, der giver dig mulighed for at dele og bevare containerdata ved at skrive dem til en specificeret mappe på værtsoperativsystemet.

En af de største trusler, som kørsel af Docker uden sudo præsenterer, er, at enhver på dit system kan få kontrol over værtsoperativsystemets mapper, inklusive rodmappen.

Alt du skal gøre er at køre et Linux Docker-billede, for eksempel Ubuntu-billedet, og montere det på rodmappen ved hjælp af følgende kommando:

docker run -ti -v /:/hostproot ubuntu bash

Og da Linux Docker-containere kører som rodbrugeren, betyder det i det væsentlige, at du har adgang til hele rodmappen.

Den førnævnte kommando vil downloade og køre det seneste Ubuntu-billede og montere det på rodmappen.

På Docker containerterminalen skal du gå til /hostproot mappe ved hjælp af cd kommandoen:

cd /hostproot

Visning af indholdet af denne mappe ved hjælp af ls-kommandoen viser alle filer fra værts-OS, som nu er tilgængelige i din container. Nu kan du manipulere filer, se hemmelige filer, skjule og fjerne filer, ændre tilladelser osv.

3. Installer skadelig software

Et veludformet Docker-billede kan køre i baggrunden og manipulere dit system eller indsamle følsomme data. Endnu værre kan en ondsindet bruger sprede ondsindet kode på dit netværk via Docker-containere.

Der er flere praktiske brugssager af Docker-containere, og med hver applikation følger et andet sæt sikkerhedstrusler.

Sikre dine Docker-containere på Linux

Docker er en kraftfuld og sikker platform. At køre Docker uden sudo øger din angrebsflade og gør dit system sårbart. I produktionsmiljøer anbefales det stærkt, at du bruger sudo med Docker.

Med så mange brugere på et system, bliver det ekstremt svært at tildele tilladelser til hver bruger. I sådanne tilfælde kan det at følge den bedste adgangskontrolpraksis hjælpe dig med at opretholde dit systems sikkerhed.