Sårbarhet i OverlayFS som tillåter eskalering av rättigheter

En sårbarhet har identifierats i Linux-kärnan i implementeringen av filsystemet OverlayFS (CVE-2023-0386), som kan användas för att få root-åtkomst på system som har FUSE-delsystemet installerat och tillåter montering av OverlayFS-partitioner av en oprivilegierad användare (som börjar med Linux 5.11-kärnan med inkludering av oprivilegierat användarnamnutrymme). Problemet har åtgärdats i 6.2-kärngrenen. Publiceringen av paketuppdateringar i distributioner kan spåras på sidorna: Debian, Ubuntu, Gentoo, RHEL, SUSE, Fedora, Arch.

Attacken utförs genom att kopiera filer med setgid/setuid-flaggor från en partition monterad i nosuid-läge till en OverlayFS-partition som har ett lager associerat med partitionen som tillåter suid-filer att exekvera. Sårbarheten liknar CVE-2021-3847-problemet som identifierades 2021, men skiljer sig i lägre utnyttjandekrav - det gamla problemet krävde manipulation med xattrs, som är begränsade till att använda användarnamnutrymmen (användarnamnutrymme), och det nya problemet använder bitar setgid /setuid som inte hanteras specifikt i användarnamnutrymmet.

Attackalgoritm:

  • Med hjälp av FUSE-undersystemet monteras ett filsystem, i vilket det finns en körbar fil som ägs av rotanvändaren med setuid /setgid-flaggorna, tillgänglig för alla användare för skrivning. Vid montering ställer FUSE in läget på "nosuid".
  • Ta bort användarnamnutrymmen och monteringspunkter (användare/montera namnutrymme).
  • OverlayFS monteras med FS som tidigare skapats i FUSE som bottenskiktet och det översta lagret baserat på den skrivbara katalogen. Det översta lagrets katalog måste finnas i ett filsystem som inte använder flaggan "nosuid" när den är monterad.
  • För en suid-fil i FUSE-partitionen ändrar pekverktyget ändringstiden, vilket leder till att den kopieras till det översta lagret av OverlayFS.
  • Vid kopiering tar inte kärnan bort setgid/setuid-flaggorna, vilket gör att filen visas på en partition som kan bearbetas av setgid/setuid.
  • För att erhålla roträttigheter räcker det att köra filen med setgid/setuid-flaggorna från katalogen kopplad till det översta lagret av OverlayFS.

Dessutom kan vi notera avslöjandet av forskare från Google Project Zero-teamet av information om tre sårbarheter som fixades i huvudgrenen av Linux 5.15-kärnan, men som inte portades till kärnpaket från RHEL 8.x/9.x och CentOS Stream 9.

  • CVE-2023-1252 - Åtkomst till ett redan frigjort minnesområde i strukturen ovl_aio_req samtidigt som man utför flera operationer samtidigt i OverlayFS som är utplacerat ovanpå Ext4-filsystemet. Potentiellt tillåter sårbarheten dig att öka dina privilegier i systemet.
  • CVE-2023-0590 - Refererar till ett redan frigjort minnesområde i qdisc_graft()-funktionen. Operationen antas vara begränsad till att avbryta.
  • CVE-2023-1249 - Tillgång till ett redan frigjort minnesområde i coredump-inmatningskoden på grund av saknat mmap_lock-anrop i file_files_note. Operationen antas vara begränsad till att avbryta.

Källa: opennet.ru

Lägg en kommentar