Kevin Backhouse (biztonsági kutató) megosztva néhány nappal ezelőtt a GitHub blogon vegye figyelembe, hogy hibát észlelt a polkit szolgáltatásban társítva a systemd-hez (egy általános Linux rendszer- és szolgáltatáskezelő-komponens), amellyel a hétéves biztonsági rés lehetővé tette a kiváltságok fokozását amely a különféle Linux disztribúciókban lapult, és amelyet a múlt héten foltoztak egy összehangolt kiadásban.
A Polkit egy alkalmazásszintű eszközkészlet a házirend meghatározásához és kezeléséhez amely lehetővé teszi a kiváltságtalan folyamatok Beszéljen a privilegizált folyamatokkal, alapértelmezés szerint telepíti a különféle Linux disztribúciókra. A biztonsági rést hét évvel ezelőtt vezették be a 0.113 verzióba (kövesse el a bfa5036), és június 3-án javították, miután Kevin Backhouse biztonsági kutató nemrégiben nyilvánosságra hozta.
A GitHub Security Lab tagjaként az a feladatom, hogy a sérülékenységek felkutatásával és jelentésével segítsem a nyílt forráskódú szoftverek biztonságának javítását. Néhány héttel ezelőtt egy privilégium-fokozódási sebezhetőséget találtam a polkitben. Összehangolt biztonsági rés nyilvánosságra hozatala a polkit fenntartókkal és a Red Hat biztonsági csapatával. Nyilvánosságra hozták, a javítást 3. június 2021-án tették közzé és a CVE-2021-3560 nevet kapta
"Minden olyan Linux rendszer, amely a polkit sérülékeny verzióját használja, potenciálisan ki van téve a CVE-2021-3560 hibát kihasználó támadásoknak" - kommentálja Backhouse. szerint a hibát meglepően könnyű kihasználni, mivel csak néhány parancsra van szükség olyan szabványos termináleszközök használatával, mint a bash, kill és a dbus-send.
"A sérülékenységet egy dbus-send parancs elindításával váltják ki, de megölik, miközben a polkit még feldolgozza a kérést" - magyarázta Backhouse.
Backhouse közzétett egy videót A támadás PoC-je, amely kihasználja ezt a biztonsági rést, megmutatva, hogy könnyen aktiválható.
„A biztonsági rés lehetővé teszi egy kiváltságtalan helyi felhasználó számára, hogy root rendszerhéjat szerezzen a rendszeren. Könnyen kihasználható néhány szabványos parancssori eszközzel, amint az ebben a rövid videóban látható "- írta a szakember egy blogbejegyzésben.
A dbus-send megölésekor (kommunikációs parancs a folyamatok között), egy hitelesítési kérelem közepén hibát okoz Ami abból származik, hogy a polkit egy már nem létező kapcsolat UID-jét kéri (mert a kapcsolat megszakadt).
"Valójában a polkit különösen sajnálatos módon kezeli rosszul a hibát: ahelyett, hogy elutasítaná a kérést, úgy kezeli, mintha egy UID 0-as folyamatból származna" - magyarázza Backhouse. "Más szavakkal, azonnal engedélyezi a kérést, mert úgy gondolja, hogy a kérelem gyökérfolyamatból származik."
Ez nem mindig történik meg, mert a polkit UID lekérdezése a dbus-daemon felé többször is előfordul, különböző kódúton. Általában ezek a kódutak helyesen kezelik a hibát, mondta Backhouse, de a kód elérési útja sérülékeny, és ha a bontás akkor történik, amikor az a kódút aktív, akkor a jogosultság megemelkedik. Mindez idő kérdése, amely kiszámíthatatlan módon változik, mivel több folyamat is érintett.
Ezen túlmenően, a kutató a következő táblázatot tette közzé amely a jelenleg veszélyeztetett terjesztések listáját tartalmazza:
TERJESZTÉS | SEBEZHETŐ? |
---|---|
rhel 7 | Nem |
rhel 8 | igen |
Fedora 20 (vagy korábbi) | Nem |
Fedora 21 (vagy újabb) | igen |
Debian 10 ("buster") | Nem |
Debian tesztelés | igen |
Ubuntu 18.04 | Nem |
Ubuntu 20.04 | igen |
Azok a Linux-disztribúciók, amelyekre a polkit 0.113 vagy újabb verziója van telepítve, például a Debian (instabil elágazás), az RHEL 8, a Fedora 21 és újabb és az Ubuntu 20.04.
A hiba szakaszos jellege - vélekedik Backhouse - az oka annak, hogy hét évig észrevétlen maradt.
"A CVE-2021-3560 lehetővé teszi, hogy egy kiváltságtalan helyi támadó gyökérjogosultságokat szerezzen" - mondta Backhouse. "Nagyon egyszerű és gyorsan kihasználható, ezért fontos, hogy a lehető leghamarabb frissítse a Linux telepítéseit."
Végül Ha érdekel, hogy többet tudjon meg róla, ellenőrizheti a részleteket A következő linken.