Bad Epoll: en sårbarhed til at opnå root-adgang er blevet fundet i Linux og Android


1

En sårbarhed er blevet afsløret i Linux-kernen. Bad Epoll, registreret som CVE-2026-46242. Det gør det muligt for en almindelig lokal bruger uden særlige rettigheder at hæve privilegierne til root. Ifølge forskeren Jayon Chon berører problemet ikke kun Linux-desktops og servere, men også nogle Android-enheder med nye kerneversioner — dette fremhæves særskilt i beskrivelsen af Bad Epoll.

Fejlen findes i subsystemet epoll — den standardmetode, som Linux bruger til at spore mange filbeskrivelser, netværksforbindelser og input-output-hændelser. Sådanne mekanismer bruges aktivt af servere, browsere og netværkstjenester, derfor kan man ikke bare deaktivere epoll. I den tekniske analyse er sårbarheden beskrevet som en race, der fører til use-after-free: når relaterede epoll-objekter lukkes samtidigt, frigiver én tråd de interne strukturer, mens en anden fortsætter med at få adgang til dem.

Med mere præcision opstår problemet i situationen, hvor én epoll-beskrivelse overvåger en anden, og begge beskrivelser lukkes parallelt. Efter kaldet til __ep_remove() nulstilles feltet file->f_ep midlertidigt, og den konkurrerende __fput() kan beslutte, at yderligere rensning ikke længere er nødvendig. Som et resultat frigives objektet struct eventpoll eller den tilknyttede struct file for tidligt, men koden fortsætter med at arbejde med pegepinde til allerede frigivet hukommelse. Dette giver angriberen et redskab til at skade kernehukommelsen.

Der kræves ingen ekstra capabilities, og der er ikke brug for bruger namespaces — det er tilstrækkeligt at have CONFIG_EPOLL, hvilket gør problemet særlig ubehageligt for almindelige Linux-systemer. Ifølge den primære rapport fra forskeren, blev fejlen registreret i kernen med commit 58c9b016e128 i 2023, og rettet med commit a6dc643c693.

På trods af det meget snævre racevindue har forskeren forberedt et fungerende exploit til Google kernelCTF. I beskrivelsen af udnyttelsen vises det, hvordan fejlen transformeres til en 8-byte post i den frigivne struktur, derefter til en hukommelseslækage fra kernen via /proc/self/fdinfo, opsnapning af file->f_op->poll og en ROP-kæde for at opnå root. For målet lts-6.12.67 angives pålideligheden til at være omkring 99%, for COS — omkring 98%; Android-exploit, ifølge forfatteren, er stadig under arbejde.

Under angreb er kerner baseret på grenen 6.4 og nyere, hvis de ikke har fået rettelsen overført. Gamle Android-enheder med kerner 6.1, herunder Pixel 8 og lignende modeller, vurderer forfatteren som værende sårbare. Brugere og administratorer har kun én normal beskyttelsesmulighed — at installere kernelopdateringen fra deres distribution eller enhedsudbyder.

Kilde: linux.org.ru

Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere 🔥 Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere | ProHoster