Čitatelji poput vas podržavaju MUO. Kada kupite putem poveznica na našoj stranici, možemo zaraditi partnersku proviziju. Čitaj više.

Docker je jedna od najčešće korištenih platformi za kontejnerizaciju i jako je voljena među softverskim inženjerima. Dolazi s moćnim CLI alatom za upravljanje Docker spremnicima i drugim srodnim zadacima.

Prema zadanim postavkama potrebne su vam root privilegije za pokretanje bilo koje naredbe vezane uz Docker na Linuxu. Naravno, možete to promijeniti radi praktičnosti i pokretati Docker naredbe bez root privilegija, ali trebali biste biti svjesni sigurnosnih implikacija.

Što je Docker Attack Surface?

Površina napada je broj točaka napada, više kao broj prozora, koje zlonamjerni korisnik može upotrijebiti za ulazak u vaš sustav i izazvati pustoš. Kao pravilo, IT sustavi trebaju imati minimalne površine za napad kako bi se smanjili sigurnosni rizici.

Općenito, Dockerova površina za napad vrlo je minimalna. Spremnici rade u sigurnom izoliranom okruženju i ne utječu na operativni sustav glavnog računala osim ako nije drugačije. Osim toga, Docker spremnici pokreću samo minimalne usluge što ga čini sigurnijim.

instagram viewer

Možete konfigurirati svoj Linux sustav da kontrolira Docker bez sudo privilegija. To može biti zgodno u razvojnim okruženjima, ali može biti ozbiljna sigurnosna ranjivost u proizvodnim sustavima. A evo zašto nikada ne biste trebali pokretati Docker bez sudoa.

1. Sposobnost kontrole Docker kontejnera

Bez sudo privilegija, svatko tko ima pristup vašem sustavu ili poslužitelju može kontrolirati svaki aspekt Dockera. Oni imaju pristup vašim Docker log datotekama i mogu zaustaviti i izbrisati spremnike po želji ili slučajno. Također možete izgubiti kritične podatke koji su vitalni za kontinuitet poslovanja.

Ako koristite Docker spremnike u proizvodnim okruženjima, zastoj rezultira gubitkom posla i povjerenja.

2. Osvojite kontrolu nad imenicima OS-a domaćina

Docker Volumes moćna je usluga koja vam omogućuje dijeljenje i zadržavanje podataka spremnika njihovim pisanjem u određenu mapu na glavnom OS-u.

Jedna od najvećih prijetnji koju predstavlja pokretanje Dockera bez sudoa je ta da bilo tko na vašem sustavu može preuzeti kontrolu nad direktorijima glavnog OS-a, uključujući korijenski direktorij.

Sve što trebate učiniti je pokrenuti Linux Docker sliku, na primjer, Ubuntu sliku, i montirati je u korijensku mapu pomoću sljedeće naredbe:

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

A budući da Linux Docker spremnici rade kao root korisnik, to u biti znači da imate pristup cijeloj root mapi.

Gore navedena naredba će preuzeti i pokrenuti najnoviju Ubuntu sliku i montirati je u korijenski direktorij.

Na kontejnerskom terminalu Docker idite na /hostproot korištenje imenika naredba cd:

CD /hostproot

Ispisivanje sadržaja ovog direktorija pomoću naredbe ls prikazuje sve datoteke OS-a domaćina koje su sada dostupne u vašem spremniku. Sada možete manipulirati datotekama, pregledavati tajne datoteke, skrivati ​​i otkrivati ​​datoteke, mijenjati dopuštenja itd.

3. Instalirajte zlonamjerni softver

Dobro izrađena Docker slika može raditi u pozadini i manipulirati vašim sustavom ili prikupljati osjetljive podatke. Što je još gore, zlonamjerni korisnik može širiti zlonamjerni kod na vašoj mreži putem Docker spremnika.

Tamo su nekoliko praktičnih slučajeva uporabe Docker spremnika, a sa svakom aplikacijom dolazi drugačiji skup sigurnosnih prijetnji.

Osigurajte svoje Docker kontejnere na Linuxu

Docker je moćna i sigurna platforma. Pokretanje Dockera bez sudoa povećava vašu površinu za napad i čini vaš sustav ranjivim. U proizvodnim okruženjima, toplo se preporučuje da koristite sudo s Dockerom.

S toliko mnogo korisnika u sustavu, postaje iznimno teško dodijeliti dopuštenja svakom korisniku. U takvim slučajevima, pridržavanje najboljih praksi kontrole pristupa može vam pomoći u održavanju sigurnosti vašeg sustava.