Sebezhetőségek a Docker-tárolóképek biztonsági szkennereiben

Közzétett A tesztelőeszközök eredményei a kijavítatlan sebezhetőségek azonosítására és a biztonsági problémák azonosítására az elszigetelt Docker-tárolóképekben. Az ellenőrzés kimutatta, hogy a 4 ismert Docker képszkennerből 6 olyan kritikus biztonsági rést tartalmazott, amelyek lehetővé tették magának a szkennernek a közvetlen megtámadását, és a kódjának végrehajtását a rendszeren, bizonyos esetekben (például Snyk használatakor) root jogokkal.

A támadónak egyszerűen el kell indítania a Dockerfile vagy manifest.json fájl ellenőrzését, amely speciálisan tervezett metaadatokat tartalmaz, vagy el kell helyeznie Podfile és gradlew fájlokat a képen belül. Használja ki a prototípusokat sikerült felkészülni rendszerek számára
WhiteSource, Snyk,
üreg и
Horgony. A csomag a legjobb biztonságot mutatta Clair, eredetileg a biztonságot szem előtt tartva írták. A csomagban sem észleltek problémát. Apróság. Ennek eredményeként arra a következtetésre jutottak, hogy a Docker konténerszkennereket elszigetelt környezetben kell futtatni, vagy csak saját képeik ellenőrzésére kell használni, és óvatosan kell eljárni, amikor az ilyen eszközöket automatizált folyamatos integrációs rendszerekhez csatlakoztatják.

A FOSSA-ban, a Snyk-ben és a WhiteSource-ban a sérülékenység egy külső csomagkezelő meghívásával volt összefüggésben a függőségek megállapítása céljából, és lehetővé tette a kód végrehajtásának megszervezését az érintési és rendszerparancsok fájlokban történő megadásával. gradlew и Podfile.

Snyk és WhiteSource ezen kívül volt megtalált sebezhetőségek, összefüggő a rendszerparancsok indításának megszervezésével a Dockerfile elemzésekor (például a Snyk-ben a Dockfile-n keresztül ki lehetett cserélni a szkenner által meghívott /bin/ls segédprogramot, a WhiteSurce-ben pedig argumentumokkal lehetett kódot helyettesíteni az "echo ';érintse meg a /tmp/hacked_whitesource_pip;=1.0" formátumot).

Horgonyzó sebezhetőség felhívták a segédprogram használatával skopeo docker képekkel való munkához. A művelet lényege az, hogy olyan paramétereket adunk a manifest.json fájlhoz, mint például az „os”: „$(touch hacked_anchore)””, amelyeket a skopeo megfelelő kihagyás nélküli meghívásakor helyettesítünk (csak a „;&<>” karakterek kerültek kivágásra, hanem a "$( )" konstrukció).

Ugyanez a szerző végzett egy tanulmányt a kijavítatlan sebezhetőségek azonosításának hatékonyságáról Docker konténerbiztonsági szkennerekkel és a hamis pozitív eredmények szintjéről (Part 1, Part 2, Part 3). Az alábbiakban 73, ismert sebezhetőséget tartalmazó kép tesztelésének eredményeit közöljük, valamint értékeljük a tipikus alkalmazások (nginx, tomcat, haproxy, gunicorn, redis, ruby, node) jelenlétének meghatározását a képekben.

Sebezhetőségek a Docker-tárolóképek biztonsági szkennereiben

Sebezhetőségek a Docker-tárolóképek biztonsági szkennereiben

Forrás: opennet.ru

Hozzászólás