Az ld.so OpenBSD-ben található sebezhetőség

Dinamikus betöltő ld.so, amely az OpenBSD része, bizonyos körülmények között képes lehet SUID/SGID-alkalmazásoknál megőrizni az LD_LIBRARY_PATH környezeti változót, ezáltal lehetővé téve harmadik fél kódjának betöltését magas privilégiumokkal futó folyamat kontextusában. A sebezhetőség javítására vonatkozó javítások elérhetők a kiadásokhoz 6.5 és 6.6. A bináris javítások (syspatch) amd64, i386 és arm64 platformok számára már gyártásba kerültek, és a hír közzétételének időpontjára elérhetővé kell válniuk a letöltésre.

A probléma lényege: ld.so futása során először kiolvassa a LD_LIBRARY_PATH környezeti változó értékét, és a _dl_split_path() függvény által karakterláncok tömbjévé alakítja azt – elérési utakként. Ha később kiderül, hogy a jelenlegi folyamat SUID/SGID-alkalmazásként fut, akkor a létrehozott tömb és magának a LD_LIBRARY_PATH változónak az értéke törlődik. Ezen kívül, ha a _dl_split_path() futtatása közben memóriahiány lép fel (ami nehéz, mivel a környezeti változók méretének explicit korlátja 256 kByte, de elméletileg lehetséges), akkor a _dl_libpath értéke NULL-t kap, és a következő ellenőrzés figyelmen kívül hagyja az _dl_unsetenv(«LD_LIBRARY_PATH») hívását.

A sebezhetőséget a Qualysszakértői fedezték fel, ahogyan több korábban nyilvánosságra hozott probléma is. A sebezhetőség felfedezői gyorsan reagáltak a problémára: a javítást előkészítették, és a frissítéseket három órán belül kiadta az OpenBSD projekt.

Kiegészítés: A problémának a következő azonosítója van CVE-2019-19726. Az oss-security levelezőlistán megjelent egy hivatalos bejelentés, amely tartalmaz egy prototípust is, amely az OpenBSD 6.6, 6.5, 6.2 és 6.1 rendszeren működik az
amd64 és i386 architektúrákon (a kihasználás más architektúrákra is alkalmazható).
A probléma alapértelmezett telepítés alatt kihasználható, és nem privilegizált helyi felhasználók számára lehetővé teszi, hogy root jogokkal kódot futtassanak a chpass vagy passwd SUID segédprogramok futtatása során. A kihasználáshoz szükséges memóriahiányt a RLIMIT_DATA korlátozás beállításával érik el a setrlimit által.

Forrás: opennet.ru

Megbízható hosting vásárlása weboldalak számára, DDoS védelemmel, VPS VDS szerverek. 🔥 Megbízható webtárhely vásárlása DDoS védelemmel, VPS VDS szerverek | ProHoster