RÄ«kkopÄ izolÄtu Linux Docker konteineru pÄrvaldÄ«bai ievainojamÄ«ba (), kas noteiktos apstÄkļos ļauj piekļūt resursdatora videi no konteinera, ja jums ir iespÄja palaist attÄlus sistÄmÄ vai ar piekļuvi esoÅ”am konteineram. ProblÄma parÄdÄs visÄs Docker versijÄs un joprojÄm nav novÄrsta (ierosinÄta, bet vÄl nav pieÅemta, , kas Ä«steno konteinera apturÄÅ”anu, veicot darbÄ«bas ar FS).
IevainojamÄ«ba ļauj izvilkt failus no konteinera uz patvaļīgu resursdatora sistÄmas failu sistÄmas daļu, izpildot komandu ādocker cpā. Failu izvilkÅ”ana tiek veikta ar root tiesÄ«bÄm, kas ļauj nolasÄ«t vai rakstÄ«t jebkurus failus resursdatora vidÄ, kas ir pietiekami, lai iegÅ«tu kontroli pÄr resursdatora sistÄmu (piemÄram, jÅ«s varat pÄrrakstÄ«t /etc/shadow).
Uzbrukumu var veikt tikai tad, kad administrators izpilda komandu ādocker cpā, lai kopÄtu failus uz konteineru vai no tÄ. TÄdÄjÄdi uzbrucÄjam kaut kÄdÄ veidÄ jÄpÄrliecina Docker administrators par nepiecieÅ”amÄ«bu veikt Å”o darbÄ«bu un paredzÄt kopÄÅ”anas ceļu. No otras puses, uzbrukums var tikt veikts, piemÄram, kad mÄkoÅpakalpojumi nodroÅ”ina rÄ«kus konfigurÄcijas failu kopÄÅ”anai konteinerÄ, kas izveidots, izmantojot komandu ādocker cpā.
ProblÄmu izraisa kļūdas funkcijas pielietojumÄ , kas aprÄÄ·ina absolÅ«to ceļu galvenajÄ failu sistÄmÄ, pamatojoties uz relatÄ«vo ceļu, Åemot vÄrÄ konteinera izvietojumu. Izpildot komandu "docker cp", Ä«stermiÅa , kurÄ ceļŔ jau ir pÄrbaudÄ«ts, bet operÄcija vÄl nav veikta. TÄ kÄ kopÄÅ”ana tiek veikta resursdatora sistÄmas galvenÄs failu sistÄmas kontekstÄ, noteiktÄ laika periodÄ varat nomainÄ«t saiti ar citu ceļu un uzsÄkt datu kopÄÅ”anu uz patvaļīgu vietu failu sistÄmÄ Ärpus konteiners.
TÄ kÄ laika logs sacÄ«kÅ”u apstÄklim ir ļoti ierobežots sagatavotajÄ Veicot kopÄÅ”anas darbÄ«bas no konteinera, veiksmÄ«gu uzbrukumu izdevÄs panÄkt mazÄk nekÄ 1% gadÄ«jumu, cikliski aizstÄjot simbolisko saiti kopÄÅ”anas operÄcijÄ izmantotajÄ ceÄ¼Ä (veiksmÄ«gais uzbrukums tika veikts pÄc aptuveni 10 sekunžu mÄÄ£inÄjumiem lai nepÄrtraukti kopÄtu failu ciklÄ ar komandu ādocker cpā).
Veicot kopÄÅ”anas darbÄ«bu konteinerÄ, jÅ«s varat panÄkt atkÄrtojamu failu pÄrrakstīŔanas uzbrukumu resursdatora sistÄmai tikai dažÄs iterÄcijÄs. Uzbrukuma iespÄja ir saistÄ«ta ar to, ka, kopÄjot konteinerÄ, tiek izmantots āchrootarchiveā jÄdziens, saskaÅÄ ar kuru archive.go process izvelk arhÄ«vu nevis konteinera saknes chroot, bet gan konteinera saknes chroot. mÄrÄ·a ceļa vecÄkdirektorijs, ko kontrolÄ uzbrucÄjs, un tas neaptur konteinera izpildi (chroot tiek izmantots kÄ zÄ«me, lai izmantotu sacensÄ«bu apstÄkļus).
Avots: opennet.ru
