Kwetsberens yn XFS wêrtroch rauwe blokapparaatgegevens lêze kinne

In kwetsberens (CVE-2021-4155) is identifisearre yn 'e XFS-bestânsysteemkoade wêrmei in lokale net-befoarrjochte brûker net brûkte blokgegevens direkt kin lêze fan in blokapparaat. Alle wichtige ferzjes fan 'e Linux-kernel âlder dan 5.16 dy't de XFS-bestjoerder befetsje binne beynfloede troch dit probleem. De fix waard opnommen yn ferzje 5.16, lykas yn kernel updates 5.15.14, 5.10.91, 5.4.171, 4.19.225, ensfh. De status fan fernijings dy't generearre wurde om it probleem op te lossen yn distribúsjes kinne wurde folge op dizze siden: Debian, RHEL, SUSE, Fedora, Ubuntu, Arch.

De kwetsberens wurdt feroarsake troch it ferkearde gedrach fan twa XFS-spesifike ioctl (XFS_IOC_ALLOCSP) en ioctl (XFS_IOC_FREESP), dy't in funksjonele analoog binne fan 'e kernel-wide fallocate () systeemoprop. By it fergrutsjen fan in triemgrutte dy't net blokkearre is, sette ioctls XFS_IOC_ALLOCSP / XFS_IOC_FREESP de sturtbytes net werom nei nul oant de folgjende blokgrins. Sa kin op XFS mei in standert blokgrutte fan 4096 bytes in oanfaller oant 4095 bytes fan eardere skreaune gegevens fan elk blok lêze. Dizze gebieten kinne gegevens befetsje fan ferwidere bestannen, defragmenteare bestannen en bestannen mei deduplikearre blokken.

Jo kinne jo systeem testen foar it probleem mei in ienfâldich eksploitaasjeprototype. As, nei it útfieren fan de foarstelde folchoarder fan kommando's, it mooglik is om Shakespeare's tekst te lêzen, dan is de FS-bestjoerder kwetsber. Yn earste ynstânsje montearje in XFS-partysje foar demonstraasje fereasket root-privileges.

Sûnt ioctl (XFS_IOC_ALLOCSP) en ioctl (XFS_IOC_FREESP) binne praktysk itselde yn funksjonaliteit as de standert fallocate (), en harren ienige ferskil is gegevens leakage, harren oanwêzigens is fergelykber mei in efterdoar. Nettsjinsteande it algemiene belied om besteande ynterfaces yn 'e kernel net te feroarjen, op suggestje fan Linus, waard besletten om dizze ioctls folslein te ferwiderjen yn' e folgjende ferzje.

Boarne: opennet.ru

Add a comment