Kwesbaarheid in XFS wat dit moontlik maak om rou bloktoesteldata te lees

'n Kwesbaarheid (CVE-2021-4155) is ontdek in die XFS-lêerstelselkode wat 'n plaaslike onbevoorregte gebruiker toelaat om ongebruikte blokdata direk vanaf 'n bloktoestel te lees. Alle hoof weergawes van die Linux-kern ouer as 5.16 wat die XFS-bestuurder bevat, word deur hierdie probleem geraak. Die regstelling is ingesluit in weergawe 5.16, sowel as kernopdaterings 5.15.14, 5.10.91, 5.4.171, 4.19.225, ens. Die status van die generering van opdaterings met die uitskakeling van die probleem in verspreidings kan op hierdie bladsye opgespoor word: Debian, RHEL, SUSE, Fedora, Ubuntu, Arch.

Die kwesbaarheid word veroorsaak deur die verkeerde gedrag van twee XFS-spesifieke ioctl(XFS_IOC_ALLOCSP) en ioctl(XFS_IOC_FREESP), wat die funksionele analoog van die fallocate() kernwye stelseloproep is. Wanneer 'n lêergrootte vergroot word wat nie blokbelyn is nie, stel die XFS_IOC_ALLOCSP/XFS_IOC_FREESP ioctls nie die stertgrepe terug tot die volgende blokgrens nie. Dus, op 'n XFS met 'n standaard blokgrootte van 4096 grepe, kan 'n aanvaller tot 4095 grepe van vorige geskrewe data van elke blok lees. Hierdie gebiede kan data van geskrap lêers, gedefragmenteerde lêers en lêers met gededupliseerde blokke bevat.

U kan u stelsel nagaan vir 'n probleem met 'n eenvoudige ontginningsprototipe. As dit moontlik is om Shakespeare se teks te lees nadat die voorgestelde volgorde van opdragte uitgevoer is, dan is die FS-bestuurder kwesbaar. Die aanvanklike montering van die XFS-partisie vir die demonstrasie vereis supergebruikerregte.

Aangesien ioctl(XFS_IOC_ALLOCSP) en ioctl(XFS_IOC_FREESP) amper identies is in funksionaliteit aan die standaard fallocate(), en hul enigste verskil is datalekkasie, is hul teenwoordigheid soos 'n agterdeur. Ten spyte van die algemene beleid om nie bestaande koppelvlakke in die kern te verander nie, op voorstel van Linus, is die besluit geneem om hierdie ioctls in die volgende weergawe heeltemal te verwyder.

Bron: opennet.ru

Voeg 'n opmerking