Varnarleysi í Docker sem gerir þér kleift að flýja úr gámnum

Í verkfærakistu til að stjórna einangruðum Linux Docker gámum greind varnarleysi (CVE-2018-15664), sem, undir ákveðnum kringumstæðum, gerir þér kleift að fá aðgang að hýsilumhverfinu frá íláti ef þú hefur getu til að ræsa myndirnar þínar á kerfinu eða með aðgang að keyrandi íláti. Vandamálið birtist í öllum útgáfum af Docker og er enn óleyst (tillaga, en ekki enn samþykkt, plástur, sem útfærir stöðvun gámsins meðan á aðgerðum stendur með FS).

Varnarleysið gerir kleift að draga skrár úr íláti yfir í handahófskenndan hluta skráakerfis hýsingarkerfisins þegar „docker cp“ skipunin er keyrð. Skráaútdráttur er framkvæmdur með rótarréttindum, sem gerir það mögulegt að lesa eða skrifa hvaða skrár sem er í hýsilumhverfinu, sem er nóg til að ná stjórn á hýsilkerfinu (t.d. er hægt að skrifa yfir /etc/shadow).

Aðeins er hægt að framkvæma árásina þegar stjórnandinn framkvæmir „docker cp“ skipunina til að afrita skrár í eða úr gámnum. Þannig þarf árásarmaðurinn á einhvern hátt að sannfæra Docker stjórnanda um nauðsyn þess að framkvæma þessa aðgerð og spá fyrir um slóðina sem notuð er við afritun. Á hinn bóginn er hægt að framkvæma árás, til dæmis þegar skýjaþjónusta býður upp á verkfæri til að afrita stillingarskrár í gám, byggður með „docker cp“ skipuninni.

Vandamálið stafar af galla í beitingu aðgerðarinnar FollowSymlinkInScope, sem reiknar út algilda slóðina í aðalskráarkerfinu út frá hlutfallslegri slóð, að teknu tilliti til staðsetningu ílátsins. Þegar þú keyrir "docker cp" skipunina, skammtíma keppnisástand, þar sem leiðin hefur þegar verið staðfest, en aðgerðin hefur ekki enn verið framkvæmd. Þar sem afritunin fer fram í samhengi við aðalskráarkerfi hýsingarkerfisins, innan tiltekins tíma, geturðu tekist að skipta út hlekknum fyrir aðra slóð og hefja afritun gagna á handahófskenndan stað í skráarkerfinu utan gáminn.

Þar sem tíminn fyrir keppnisástand að eiga sér stað er mjög takmarkaður í tilbúnum nýta frumgerð Þegar afritunaraðgerðir voru framkvæmdar úr gámi var hægt að ná árangursríkri árás í innan við 1% tilvika þegar skipt var um táknrænan hlekk á slóðinni sem notaður var í afritunaraðgerðinni (heppnaðar árás var framkvæmd eftir um það bil 10 sekúndna tilraunir) til að afrita skrána stöðugt í lykkju með „docker cp“ skipuninni).

Með því að framkvæma afritunaraðgerð í gám geturðu náð endurtekinni skrá yfirskriftarárás á hýsingarkerfið í örfáum endurtekningum. Möguleikinn á árás er vegna þess að þegar afritað er inn í gám er hugtakið „chrootarchive“ notað, samkvæmt því sem archive.go ferlið dregur skjalasafnið ekki út í chroot gámarótarinnar, heldur í chroot gámarótarinnar. móðurskrá markslóðarinnar, stjórnað af árásarmanninum, og stöðvar ekki framkvæmd ílátsins (chroot er notað sem merki til að nýta keppnisaðstæður).

Heimild: opennet.ru

Bæta við athugasemd