Sårbarheter i sikkerhetsskannere for Docker-beholderbilder

Publisert resultater fra testverktøy for å identifisere uopprettede sårbarheter og identifisere sikkerhetsproblemer i isolerte Docker-beholderbilder. Tilsynet viste at 4 av 6 kjente Docker-bildeskannere inneholdt kritiske sårbarheter som gjorde det mulig å angripe selve skanneren direkte og oppnå utførelse av dens kode på systemet, i noen tilfeller (for eksempel ved bruk av Snyk) med root-rettigheter.

For å angripe må en angriper ganske enkelt starte en sjekk av Dockerfile eller manifest.json, som inkluderer spesialdesignede metadata, eller plassere Podfile og gradlew-filer inne i bildet. Utnytt prototyper klarte å forberede seg for systemer
WhiteSource, Snyk,
Fossa и
Anker. Pakken viste den beste sikkerheten Clear, opprinnelig skrevet med sikkerhet i tankene. Ingen problemer ble identifisert i pakken heller. Trivy. Som et resultat ble det konkludert med at Docker-beholderskannere skulle kjøres i isolerte miljøer eller kun brukes til å sjekke sine egne bilder, og at det bør utvises forsiktighet når slike verktøy kobles til automatiserte kontinuerlige integrasjonssystemer.

I FOSSA, Snyk og WhiteSource var sårbarheten assosiert med å ringe en ekstern pakkebehandler for å bestemme avhengigheter og tillot deg å organisere utførelsen av koden din ved å spesifisere berørings- og systemkommandoer i filer gradlew и Podfil.

Snyk og WhiteSource hadde i tillegg funnet sårbarheter, i slekt med organiseringen av å starte systemkommandoer når du analyserer Dockerfilen (for eksempel i Snyk, gjennom Dockefile, var det mulig å erstatte /bin/ls-verktøyet kalt av skanneren, og i WhiteSurce var det mulig å erstatte kode gjennom argumenter i skjemaet "echo ';touch /tmp/hacked_whitesource_pip;=1.0 "").

Anker sårbarhet ble kalt ved hjelp av verktøyet skopeo for arbeid med docker-bilder. Operasjonen kokte ned til å legge til parametere som '"os": "$(touch hacked_anchore)"' til manifest.json-filen, som erstattes når du kaller skopeo uten riktig escape (bare ";&<>"-tegnene ble kuttet ut, men konstruksjonen "$( )").

Den samme forfatteren gjennomførte en studie av effektiviteten av å identifisere uopprettede sårbarheter ved å bruke Docker-beholdersikkerhetsskannere og nivået av falske positiver (del 1, del 2, del 3). Nedenfor er resultatene av testing av 73 bilder som inneholder kjente sårbarheter, og evaluerer også effektiviteten av å bestemme tilstedeværelsen av typiske applikasjoner i bilder (nginx, tomcat, haproxy, gunicorn, redis, rubin, node).

Sårbarheter i sikkerhetsskannere for Docker-beholderbilder

Sårbarheter i sikkerhetsskannere for Docker-beholderbilder

Kilde: opennet.ru

Legg til en kommentar