W implementacji interfejsu asynchronicznego wejścia/wyjścia io_uring, wchodzącego w skład jądra Linux od wersji 5.1, odkryto lukę (CVE-2022-3910), która pozwala nieuprzywilejowanemu użytkownikowi wykonać kod z uprawnieniami jądra. Problem występuje w wersjach 5.18 i 5.19, a naprawiono go w wersji 6.0. Debian, RHEL i SUSE używają wersji jądra poniżej 5.18, podczas gdy Fedora, Gentoo i Arch już oferują jądro 6.0. W Ubuntu 22.10 używane jest podatne jądro 5.19.
Luka jest spowodowana dostępem do już zwolnionego bloku pamięci (use-after-free) w subsystemie io_uring, związanym z nieprawidłową aktualizacją licznika referencji — przy wywołaniu io_msg_ring() z otwartym plikiem (ciągle znajdującym się w buforze okrężnym) wywoływana jest funkcja io_fput_file(), która błędnie zmniejsza licznik referencji.
Źródło: opennet.ru
