Asünkroonse sisendi/väljundi io_uring implementatsioonis, mis on lisatud Linuxi kerneli alates versioonist 5.1, leiti haavatavus (CVE-2022-29582), mis võimaldab tavakasutajal saada süsteemis root-õigusi, sealhulgas, kui eksploiti käivitatakse konteinerist. Haavatavus tuleneb juurdepääsust juba vabastatud mälublokile ja esineb Linuxi kerneli versioonides alates harust 5.10, kuid kõrvaldati aprillis versioonide 5.10.111, 5.15.34 ja 5.17.3 värskendustega.
Juurdepääs vabastatud mälule toimub võistlusolukorra tõttu, mis tekib ajakäskude töötlemisel funktsioonis io_flush_timeouts(), mis eemaldab ajakäsku registreerimise loendist ja tühistab selle, ilma et kontrollitaks ajakäskude loomise ja eemaldamise seisundit sel hetkel.
Uurijad on koostanud töötava eksploidi, mis ei vaja töötamiseks kasutaja nimede ruumide (user namespaces) aktiveerimist ja suudab anda root-juurdepääsu põhihaldussüsteemis, kui eksploiti käivitatakse tavakasutajana eraldatud konteineris. Eksploit töötab ka isoleeritud keskkonnas nsjail Google COS jaotises, mis põhineb Chromium OS-l ja mida kasutatakse Google Cloud Platformis. virtuaalmasinatel Compute Engine. Eksploit on mõeldud töötama ydinavaradega versioonides 5.10 kuni 5.12.
Allikas: opennet.ru
