Bralci, kot ste vi, pomagajo podpirati MUO. Ko opravite nakup prek povezav na našem spletnem mestu, lahko zaslužimo partnersko provizijo. Preberi več.

Docker je ena najpogosteje uporabljanih platform za kontejnerizacijo in je zelo priljubljena med inženirji programske opreme. Prihaja z zmogljivim orodjem CLI za upravljanje vsebnikov Docker in drugih povezanih nalog.

Privzeto potrebujete korenske pravice za zagon vseh ukazov, povezanih z Dockerjem, v Linuxu. Seveda lahko to spremenite zaradi priročnosti in izvajate ukaze Docker brez korenskih pravic, vendar se morate zavedati varnostnih posledic.

Kaj je Docker Attack Surface?

Površina napada je število napadalnih točk, bolj podobno številu oken, ki jih zlonamerni uporabnik lahko uporabi za vstop v vaš sistem in povzroči opustošenje. Praviloma morajo imeti sistemi IT minimalno število napadalnih površin, da zmanjšajo varnostna tveganja.

Na splošno je Dockerjeva napadalna površina zelo majhna. Vsebniki delujejo v varnem izoliranem okolju in ne vplivajo na operacijski sistem gostitelja, razen če ni drugače. Poleg tega vsebniki Docker izvajajo le minimalne storitve, zaradi česar so varnejši.

instagram viewer

Svoj sistem Linux lahko konfigurirate za nadzor Dockerja brez privilegijev sudo. To je lahko priročno v razvojnih okoljih, vendar je lahko resna varnostna ranljivost v proizvodnih sistemih. In tukaj je razlog, zakaj nikoli ne smete zagnati Dockerja brez sudo.

1. Sposobnost nadzora vsebnikov Docker

Brez privilegijev sudo lahko vsak, ki ima dostop do vašega sistema ali strežnika, nadzoruje vse vidike Dockerja. Imajo dostop do vaših dnevniških datotek Docker in lahko ustavijo in izbrišejo vsebnike po želji ali po nesreči. Izgubite lahko tudi kritične podatke, ki so ključni za neprekinjeno poslovanje.

Če uporabljate vsebnike Docker v produkcijskih okoljih, izpadi povzročijo izgubo posla in zaupanja.

2. Pridobite nadzor nad imeniki gostiteljskega OS

Docker Volumes je zmogljiva storitev, ki vam omogoča skupno rabo in ohranitev podatkov vsebnika tako, da jih zapišete v določeno mapo v gostiteljskem OS.

Ena največjih groženj, ki jih predstavlja zagon Dockerja brez sudo, je, da lahko kdorkoli v vašem sistemu pridobi nadzor nad imeniki gostiteljskega OS, vključno s korenskim imenikom.

Vse kar morate storiti je, da zaženete sliko Linux Docker, na primer sliko Ubuntu, in jo namestite v korensko mapo z naslednjim ukazom:

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

In ker vsebniki Linux Docker delujejo kot korenski uporabnik, to v bistvu pomeni, da imate dostop do celotne korenske mape.

Zgoraj omenjeni ukaz bo prenesel in zagnal najnovejšo sliko Ubuntuja ter jo namestil v korenski imenik.

Na kontejnerskem terminalu Docker pojdite na /hostproot uporabo imenika ukaz cd:

cd /hostproot

Izpisovanje vsebine tega imenika z ukazom ls prikazuje vse datoteke gostiteljskega OS, ki so zdaj na voljo v vašem vsebniku. Zdaj lahko upravljate z datotekami, si ogledate skrivne datoteke, skrijete in razkrijete datoteke, spremenite dovoljenja itd.

3. Namestite zlonamerno programsko opremo

Dobro oblikovana slika Dockerja lahko deluje v ozadju in manipulira z vašim sistemom ali zbira občutljive podatke. Še huje, zlonamerni uporabnik lahko razširi zlonamerno kodo v vašem omrežju prek vsebnikov Docker.

obstajajo več praktičnih primerov uporabe vsebnikov Docker, z vsako aplikacijo pa prihaja drugačen nabor varnostnih groženj.

Zaščitite svoje vsebnike Docker v sistemu Linux

Docker je zmogljiva in varna platforma. Zagon Dockerja brez sudo poveča vašo površino napadov in naredi vaš sistem ranljiv. V produkcijskih okoljih je zelo priporočljivo, da uporabljate sudo z Dockerjem.

S toliko uporabniki v sistemu postane izjemno težko dodeliti dovoljenja vsakemu uporabniku. V takšnih primerih vam lahko upoštevanje najboljših praks nadzora dostopa pomaga ohraniti varnost vašega sistema.