Az Elszigetelt Linux Docker-tárolók kezelésére szolgáló eszközkészletben sebezhetőség (), amely bizonyos körülmények között lehetővé teszi a gazdagép környezet elérését egy tárolóból, ha képes a rendszeren vagy egy futó tárolóhoz való hozzáféréssel elindítani a képfájlokat. A probléma a Docker összes verziójában megjelenik, és továbbra is megoldatlan (javasolt, de még nem fogadták el, , amely megvalósítja a tartály felfüggesztését az FS-sel végzett műveletek során).
A sérülékenység lehetővé teszi, hogy a „docker cp” parancs végrehajtásakor a tárolóból a gazdarendszer fájlrendszerének tetszőleges részébe kerüljenek a fájlok. A fájlok kibontása root jogokkal történik, ami lehetővé teszi a gazdagép környezetében lévő fájlok olvasását vagy írását, ami elegendő a gazdarendszer irányításához (például felülírhatja az /etc/shadow fájlt).
A támadás csak akkor hajtható végre, ha a rendszergazda végrehajtja a „docker cp” parancsot, hogy fájlokat másoljon a tárolóba vagy onnan. Így a támadónak valamilyen módon meg kell győznie a Docker-rendszergazdát a művelet végrehajtásának szükségességéről, és meg kell jósolnia a másolás során használt útvonalat. Másrészt támadás hajtható végre, például amikor a felhőszolgáltatások eszközöket biztosítanak a konfigurációs fájlok egy tárolóba másolásához, amely a „docker cp” paranccsal épül fel.
A problémát a funkció alkalmazásának hibája okozza , amely a relatív elérési út alapján számítja ki az abszolút elérési utat a fő fájlrendszerben, figyelembe véve a tároló elhelyezését. A "docker cp" parancs végrehajtása közben egy rövid távú , amelyben az elérési utat már ellenőrizték, de a műveletet még nem hajtották végre. Mivel a másolás a gazdarendszer fő fájlrendszerének kontextusában történik, meghatározott időn belül, a hivatkozást egy másik elérési útra cserélheti, és elindíthatja az adatok másolását a fájlrendszer tetszőleges helyére a fájlrendszeren kívül. tartály.
Mivel a versenyhelyzet bekövetkezésének időablakja erősen korlátozott a felkészültben Tárolóból történő másolási műveletek végrehajtása során az esetek kevesebb mint 1%-ában lehetett sikeres támadást elérni a másolási művelet során használt útvonal szimbolikus hivatkozásának ciklikus cseréjével (a sikeres támadás körülbelül 10 másodperces próbálkozás után történt a fájl folyamatos hurokban történő másolásához a „docker cp” paranccsal).
Ha egy tárolóba másolási műveletet hajt végre, néhány iterációval megismételhető fájlfelülírási támadást érhet el a gazdagépen. A támadás lehetősége abból adódik, hogy konténerbe másoláskor a „chrootarchive” koncepciót alkalmazzák, amely szerint az archive.go folyamat az archívumot nem a konténer gyökér chrootjába, hanem a konténer gyökér chrootjába bontja ki. a támadó által vezérelt célútvonal szülőkönyvtára, és nem állítja le a tároló végrehajtását (a chroot a versenyfeltételek kihasználásának jele).
Forrás: opennet.ru
