Zraniteľnosti v skeneroch bezpečnosti Docker kontajnerov

Boli zverejnené výsledky testovania nástrojov na identifikáciu neopraviteľných zraniteľností a odhaľovanie bezpečnostných problémov v obrazích izolovaných kontajnerov Docker. Kontrola ukázala, že 4 z 6 známych skenerov obrazov Docker mali kritické zraniteľnosti, ktoré umožňovali priamy útok na samotný skener a spustenie vlastného kódu v systéme, v niektorých prípadoch (napríklad pri použití Snyk) s právami root.

Na útok stačí, aby útočník inicioval kontrolu svojho Dockerfile alebo manifest.json, ktorý obsahuje špeciálne formulované metadáta, alebo umiestnil do obrazu súbory Podfile a gradlew. Prototypy exploitov sa podarilo pripraviť pre systémy
WhiteSource, Snyk,
Fossa a
Anchore. Najlepšiu bezpečnosť preukázal balík Clair, pôvodne napísaný s ohľadom na zabezpečenie. Problémy neboli zistené ani v balíku Trivy. V konečnom dôsledku sa dospelo k záveru, že skenery Docker kontajnerov by sa mali spúšťať v izolovaných prostrediach alebo používať iba na kontrolu vlastných obrazov, a tiež byť opatrný pri pripojení podobných nástrojov k automatizovaným systémom kontinuálnej integrácie.

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žňovala organizovať vykonanie vlastného kódu prostredníctvom zadaní príkazov touch a system v súboroch gradlew a Podfile.

V Snyk a WhiteSource navyše boli nájdené zraniteľnosti, s organizáciou spúšťania systémových príkazov pri analýze Dockerfile (napríklad v Snyk sa mohla prostredníctvom Dockerfile nahradiť utilita /bin/ls, ktorá bola volaná skenerom, a v WhiteSource sa mohol vložiť kód pomocou argumentov vo forme „echo ‘;touch /tmp/hacked_whitesource_pip;=1.0′“). V Anchore bola zraniteľnosť

vyvolaná používaním utilit skopeo na prácu s docker obrazmi. Explotácia sa sústreďovala na pridávanie parametrov typu ‚”os”: „$(touch hacked_anchore)”‘ do súboru manifest.json, ktoré sú vložené pri volaní skopeo bez riadneho escaping (odstraňovali sa len znaky „;&“, ale konštrukcia „$()“ bola povolená). Tým istým autorom bolo vykonané skúmanie účinnosti identifikácie neopraviteľných zraniteľností skenerami bezpečnosti docker kontajnerov a úroveň falošných poplachov (

časť 3časť 1, časť 2, časť 3). Nižšie sú uvedené výsledky testovania 73 obrazov, ktoré obsahujú známe zraniteľnosti, ako aj hodnotenie efektivity detekcie prítomnosti typických aplikácií v obrazov (nginx, tomcat, haproxy, gunicorn, redis, ruby, node).

Zraniteľnosti v skeneroch bezpečnosti Docker kontajnerov

Zraniteľnosti v skeneroch bezpečnosti Docker kontajnerov

Zdroj: opennet.ru

Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster