Vulnerabiliteti në runc, që lejon daljen nga kontejnerët Docker dhe Kubernetes

Në mjetin për ekzekutimin e kontejnerëve të izoluar runc, i përdorur në Docker dhe Kubernetes, është gjetur një dobësi CVE-2024-21626, e cila lejon qasje në sistemin e skedarëve të ambientit host nga një kontejner i izoluar. Gjatë sulmit, një ndërhyrës mund të ri-shkruajë disa skedarë ekzekutivë në ambientin host dhe në këtë mënyrë të arrijë ekzekutimin e kodit të tij jashtë kontejnerit. Në runtime crun dhe youki, që përdorin runc, si dhe në LXC, problemi nuk shfaqet. Dobësia është riparuar në versionin runc 1.1.12.

Në rastin e përdorimit të mjeteve Docker ose Kubernetes, sulmi mund të kryhet përmes përgatitjes së një imazhi kontejneri të dizajnuar veçmas, pas instalimit dhe ekzekutimit të të cilit, nga kontejneri mund të adresohet sistemi i jashtëm të skedarëve. Në përdorimin e Docker, ekziston mundësia e eksploitimit përmes një Dockerfile të dizajnuar veçmas. Dobësia gjithashtu mund të eksplitohet në rastin e ekzekutimit të proceseve në kontejner me komandën "runc exec" përmes lidhjes së katalogut të punës në hapësirën e emrave të ambientit host.

Dobësia shkaktohet nga rrjedhja e descriptorëve të brendshëm të skedarëve. Para ekzekutimit të kodit brenda kontejnerit në runc, mbyllen të gjithë descriptorët e skedarëve me ndihmën e flagut O_CLOEXEC. Megjithatë, pas ekzekutimit të funksionit setcwd(), mbetet një descriptor skedari i hapur, që tregon në katalogun e punës dhe vazhdon të jetë i qasshëm pas ekzekutimit të kontejnerit. Janë propozuar disa skenarë bazë sulmi ndaj ambientit host, duke përdorur descriptorin e mbetur.

Për shembull, një sulmues mund të specifikojë në imazhin e kontejnerit parametrin process.cwd, i cili tregon në "\/proc\/self\/fd\/7\/", e cila do të çojë në lidhjen e katalogut të punës me procesin pid1 në kontejner, që ndodhet në hapësirën e montimit të ambientit host. Kështu, në imazhin e kontejnerit mund të konfigurohet ekzekutimi të "\/proc\/self\/fd\/7\/..\/..\/..\/bin\/bash" dhe përmes ekzekutimit të skriptit shell të ri-shkruhet përmbajtja e "\/proc\/self\/exe", e cila referon në kopjen host të \/bin\/bash.

NjĂ« variant tjetĂ«r sulmi lejon njĂ« sulmues i kufizuar brenda njĂ« kontejneri tĂ« ketĂ« akses nĂ« direktorinĂ« e ambientit host, nĂ«se nĂ« atĂ« kontejner ekzekutohen procese me privilegje pĂ«rmes komandĂ«s "runc exec" me opsionin "—cwd". Sulmuesi mund tĂ« zĂ«vendĂ«sojĂ« rrugĂ«n e procesit tĂ« ekzekutimit me njĂ« lidhje simbolike qĂ« tregon nĂ« "\/proc\/self\/fd\/7\/" dhe tĂ« arrijĂ« hapjen e "\/proc\/$exec_pid\/cwd" pĂ«r akses nĂ« FS-nĂ« nĂ« anĂ«n e hostit. Sulmuesi gjithashtu mund tĂ« arrijĂ« tĂ« riprodhojĂ« skedarĂ«t ekzekutues nĂ« anĂ«n e ambientit host pĂ«rmes organizimit tĂ« ekzekutimit tĂ« skedarit tĂ« ekzekutimit nga ambienti host ("\/proc\/self\/fd\/7\/..\/..\/..\/bin\/bash") me riprodhimin e skedarit "\/proc\/$pid\/exe" qĂ« tregon nĂ« skedarin e nisur.

Për më tepër, në komponentët e mjetit Docker janë zbuluar gjithsej pesë vulnerabilitete:

  • CVE-2024-23651 — njĂ« gjendje garancie nĂ« paketĂ«n BuildKit, e cila pĂ«rdoret nĂ« Docker pĂ«r tĂ« transformuar kodin burimor nĂ« artefakte ndĂ«rtimi. Vulnerabiliteti shkaktohet nga pĂ«rdorimi i njĂ« pike tĂ« pĂ«rbashkĂ«t montimi me cache nĂ« faza ndĂ«rtimi qĂ« ekzekutohen paralelisht ("—mount=type=cache,source=\
  • CVE-2024-23652 — njĂ« gabim gjatĂ« fshirjes sĂ« skedarĂ«ve tĂ« zbrazĂ«t tĂ« krijuar pĂ«r pikĂ«n e montimit kur pĂ«rdoret opsioni "—mount", lejon tĂ« arrihet fshirja e skedarit jashtĂ« kontejnerit gjatĂ« procesit tĂ« pĂ«rpunimit tĂ« njĂ« Dockerfile tĂ« formatuar nĂ« mĂ«nyrĂ« tĂ« veçantĂ«. Vulnerabiliteti Ă«shtĂ« tejkaluar nĂ« BuildKit 0.12.5.
  • CVE-2024-23653 — njĂ« gabim nĂ« implementimin e API nĂ« BuildKit lejon tĂ« arrihet ekzekutimi i kontejnerit me privilegje tĂ« rritura, pa marrĂ« parasysh gjendjen e konfigurimit security.insecure. Vulnerabiliteti Ă«shtĂ« tejkaluar nĂ« BuildKit 0.12.5.
  • CVE-2024-23650 — njĂ« klient ose front-end i keq tĂ« BuildKit mund tĂ« shkaktojĂ« dĂ«shtimin e procesit tĂ« prapavepruar BuildKit. Vulnerabiliteti Ă«shtĂ« tejkaluar nĂ« BuildKit 0.12.5.
  • CVE-2024-24557 — mundĂ«sia e helmimit tĂ« cache nĂ« Moby, njĂ« komponent pĂ«r ndĂ«rtimin e sistemeve tĂ« specializuara tĂ« izolimit tĂ« kontejnerĂ«ve. GjatĂ« pĂ«rpunimit tĂ« njĂ« imazhi kontejneri tĂ« formatuar nĂ« mĂ«nyrĂ« tĂ« veçantĂ«, mund tĂ« arrihet vendosja nĂ« cache tĂ« tĂ« dhĂ«nave qĂ« mund tĂ« pĂ«rdoren nĂ« fazat e ardhshme tĂ« ndĂ«rtimit. Vulnerabiliteti Ă«shtĂ« tejkaluar nĂ« Moby 25.0.2 dhe 24.0.9.

Burimi: opennet.ru

Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster