runc-i haavatavus, mis vÔimaldab pÀÀseda vÀlja Docker ja Kubernetes konteineritest

Runc'i tööriistakomplektis, mida kasutatakse isoleeritud konteinerite kĂ€itamiseks Dockeris ja Kuberneteses, leiti haavatavus CVE-2024-21626, mis vĂ”imaldab pÀÀseda juurde host-ökosĂŒsteemi failisĂŒsteemile isoleeritud konteinerist. RĂŒnnaku kĂ€igus saab rĂŒndaja ĂŒle kirjutada mĂ”ned kĂ€ivitatavad failid host-ökosĂŒsteemis ja seelĂ€bi saavutada oma koodi tĂ€itmine konteinerist vĂ€ljaspool. Runci, cruni ja youki tööfailide kĂ€ideldamisel, samuti LXC-s, probleemi ei esine. Haavatavus on kĂ”rvaldatud runc'i versioonis 1.1.12.

Kui kasutatakse tööriistu Docker vĂ”i Kubernetes, vĂ”ib rĂŒnnak toimuda spetsiaalselt kujundatud konteineri pildi ettevalmistamise kaudu, mille paigaldamisel ja kĂ€ivitamisel on vĂ”imalik konteinerist vĂ€lisele FS-ile juurde pÀÀseda. Dockerit kasutades on vĂ”imalik Ă€ra kasutada spetsiaalselt koostatud Dockerfile'i. Haavatavust saab kasutada ka juhul, kui konteineris kĂ€ivitatakse protsesse kĂ€suga „runc exec”, sidudes töökausta hosti keskkonna nimede ruumiga.

Haavatavus on pĂ”hjustatud sise-failide deskriptorite lekkimisest. Koodi kĂ€ivitamiseks konteineri sees runc'is suletakse kĂ”ik failide deskriptorid O_CLOEXEC lipu abil. Sellegipoolest jÀÀb pĂ€rast funktsiooni setcwd() kĂ€ivitamist avatuks failide deskriptor, mis viitab töökataloogile ning jÀÀb kergesti kĂ€ttesaadavaks pĂ€rast konteineri kĂ€ivitamist. On ettepanekuid mitmete pĂ”hirĂŒnnakute stsenaariumide kohta host-ökosĂŒsteemi, kasutades avatud failide deskriptorit.

NĂ€iteks vĂ”ib rĂŒndaja konteineripildis sĂ€testada parameetri process.cwd, mis osutab „/proc/self/fd/7/”, mis tulemuseks viib töökausta sidumise konteineris oleva protsessi pid1-ga, mis asub host-keskkonna montaaĆŸiruumi. Seega on konteineripildis vĂ”imalik seadistada kĂ€ivitamine „/proc/self/fd/7/../../../bin/bash” ja shell-skripti kĂ€ivitamise kaudu kirjutada ĂŒle „/proc/self/exe”, mis osutab hosti koopiale /bin/bash.

Teine rĂŒnnaku variant vĂ”imaldab kurjategijal, kes on konteineris piiratud, pÀÀseda juurde host-keskkonna kataloogile, kui antud konteineris kĂ€ivitatakse privileeritud protsesse kĂ€suga „runc exec” koos valikuga „—cwd”. RĂŒndaja vĂ”ib muuta kĂ€ivitatava protsessi teed sĂŒmboolseks lingiks, mis osutab „/proc/self/fd/7/” ja saavutada „/proc/$exec_pid/cwd” avamise, et pÀÀseda juurde hosti FS-ile. RĂŒndaja saab ka saavutada kĂ€ivitatavate failide ĂŒlekirjutamise host-keskkonna poole, korraldades kĂ€ivitatava faili kĂ€ivitamise host-keskkonnast („/proc/self/fd/7/../../../bin/bash”) ja jĂ€rgnevaga faili „/proc/$pid/exe” ĂŒle kirjutamise, mis osutab kĂ€ivitatavale failile.

Lisaks on Docker'i tööriistade komponentides leitud veel viis haavatavust:

  • CVE-2024-23651 — vĂ”idusĂ”iduring BuildKiti paketis, mida kasutatakse Dockeris lĂ€htekoodi ehitusartefaktideks muutmiseks. Haavatavus on pĂ”hjustatud paralleelselt kĂ€ivitatavates ehitusetappides ĂŒhe ĂŒhise monteerimispunktiga koos vahemĂ€lu („—mount=type=cache,source=”), mis vĂ”imaldab BuildKiti töötlemisel spetsiaalselt kujundatud Dockerfile'i kaudu saada ehitus konteinerist ligipÀÀsu failidele host-keskkonnas. Haavatavus on kĂ”rvaldatud BuildKitis 0.12.5.
  • CVE-2024-23652 — viga tĂŒhjade failide eemaldamisel, mis on loodud monteerimispunkti jaoks koos valikuga „—mount”, vĂ”imaldab eemaldada faili konteinerist vĂ€lja töötlemisel spetsiaalselt kujundatud Dockerfile'i. Haavatavus on kĂ”rvaldatud BuildKitis 0.12.5.
  • CVE-2024-23653 — API rakendamise viga BuildKitis vĂ”imaldab saavutada konteineri kĂ€ivitamist suurenenud privileegidega, vaatamata security.insecure seadistusele. Haavatavus on kĂ”rvaldatud BuildKitis 0.12.5.
  • CVE-2024-23650 — pahatahtlik klient vĂ”i BuildKiti front-end vĂ”ib pĂ”hjustada BuildKiti taustaprotsessi kokkuvarisemise. Haavatavus on kĂ”rvaldatud BuildKitis 0.12.5.
  • CVE-2024-24557 — vĂ”imalus Moby kassi rĂŒnnata, konteinerite isoleerimise spetsialiseeritud sĂŒsteemide koostamise komponendi kaudu. Spetsiaalselt kujundatud konteineripildi töötlemisel on vĂ”imalik salvestada vahemĂ€lusse andmeid, mida saab kasutada jĂ€rgmistel ehitusetappidel. Haavatavus on kĂ”rvaldatud Moby 25.0.2 ja 24.0.9.

Allikas: opennet.ru

Osta usaldusvÀÀrne veebihosting DDoS kaitsega, VPS VDS serverid đŸ”„ Osta usaldusvÀÀrne veebihosting DDoS kaitsega, VPS VDS serverid | ProHoster