Chyby zabezpečenia v bezpečnostných skeneroch pre obrázky kontajnerov Docker

Publikovaný výsledky z testovacích nástrojov na identifikáciu neopravených zraniteľností a identifikáciu bezpečnostných problémov v izolovaných obrázkoch kontajnerov Docker. Audit ukázal, že 4 zo 6 známych obrazových skenerov Docker obsahovali kritické zraniteľnosti, ktoré umožňovali priamo napadnúť samotný skener a dosiahnuť spustenie jeho kódu v systéme, v niektorých prípadoch (napríklad pri použití Snyk) s právami root.

Na útok musí útočník jednoducho spustiť kontrolu svojho súboru Dockerfile alebo manifest.json, ktorý obsahuje špeciálne navrhnuté metadáta, alebo umiestniť súbory Podfile a gradlew do obrázka. Využite prototypy podarilo pripraviť pre systémy
WhiteSource, Snyk,
Fossa и
Kotva. Balík ukázal najlepšiu bezpečnosť Clair, pôvodne napísaný s ohľadom na bezpečnosť. Ani v balení neboli zistené žiadne problémy. Trivy. V dôsledku toho sa dospelo k záveru, že kontajnerové skenery Docker by sa mali spúšťať v izolovaných prostrediach alebo by sa mali používať iba na kontrolu vlastných obrázkov a že pri pripájaní takýchto nástrojov k automatizovaným systémom nepretržitej integrácie je potrebné postupovať opatrne.

Vo FOSSA, Snyk a WhiteSource bola zraniteľnosť spojená s volaním externého správcu balíkov na určenie závislostí a umožnila vám organizovať vykonávanie vášho kódu zadaním dotykových a systémových príkazov v súboroch. gradlew и Podfile.

Snyk a WhiteSource mali navyše nájdené zraniteľnosti, súvisiace s organizáciou spúšťania systémových príkazov pri parsovaní Dockerfile (napr. v Snyku cez Dockefile bolo možné nahradiť utilitu /bin/ls vyvolanú skenerom a vo WhiteSurce bolo možné nahradiť kód cez argumenty v vo forme „echo ';touch /tmp/hacked_whitesource_pip;=1.0 ′“).

Zraniteľnosť kotvy bol volaný pomocou pomôcky skopeo na prácu s obrázkami dockerov. Operácia sa zredukovala na pridanie parametrov ako '"os": "$(touch hacked_anchore)"' do súboru manifest.json, ktoré sú nahradené pri volaní skopeo bez správneho escapovania (boli vystrihnuté iba znaky ";&<>", ale konštrukcia "$( )").

Ten istý autor vykonal štúdiu účinnosti identifikácie neopravených zraniteľností pomocou bezpečnostných skenerov kontajnerov Docker a úrovne falošných poplachov (Časť 1, Časť 2, Časť 3). Nižšie sú uvedené výsledky testovania 73 obrázkov obsahujúcich známe zraniteľnosti a tiež vyhodnotenie účinnosti určovania prítomnosti typických aplikácií v obrázkoch (nginx, kocúr, haproxy, gunicorn, redis, ruby, node).

Chyby zabezpečenia v bezpečnostných skeneroch pre obrázky kontajnerov Docker

Chyby zabezpečenia v bezpečnostných skeneroch pre obrázky kontajnerov Docker

Zdroj: opennet.ru

Pridať komentár