CVE Database›Document archive›CVE-2021-4155

CVE-2021-4155

kernel: xfs: raw block device data leak in XFS_IOC_ALLOCSP IOCTL

Loading…

Severity

Important

Red Hat Product Security

5.5

CVSS 3.1

Review impact separately from score.

Published · January 10, 2022

Updated · August 7, 2026

Description

A data leak flaw was found in the way XFS_IOC_ALLOCSP IOCTL in the XFS filesystem allowed for size increase of files with unaligned size. A local attacker could use this flaw to leak data on the XFS filesystem otherwise not accessible to them.

CVSS score applicability

The CVSS score(s) listed for this vulnerability do not reflect the associated product's status, and are included for informational purposes to better understand the severity of this vulnerability.

Mitigation

This issue can be mitigated by ensuring xfs_alloc_file_space is not called with "0" as an argument.

This can be done with a SystemTap script (which resets "0" with XFS_BMAPI_PREALLOC), below are the steps:

  1. Save the following script in a 'CVE-2021-4155.stp' file

--- On Red Hat Enterprise Linux 6 --- probe module("xfs").function("xfs_alloc_file_space") { if ($alloc_type == 0) $alloc_type = 0x40; # XFS_BMAPI_PREALLOC } --- On Red Hat Enterprise Linux 6 ---

--- On Red Hat Enterprise Linux 7 onwards --- probe module("xfs").function("xfs_alloc_file_space") { if ($alloc_type == 0) $alloc_type = 0x8; # XFS_BMAPI_PREALLOC } --- On Red Hat Enterprise Linux 7 onwards ---

  1. Install systemtap package and its dependencies

    yum install -y systemtap systemtap-runtime

    yum install -y kernel-devel kernel-debuginfo

  2. Build the mitigation kernel module as root.

    stap -r uname -r -m cve_2021_4155.ko -g CVE-2021-4155.stp -p4

  3. Load the mitigation module as root

    staprun -L cve_2021_4155.ko

What is SystemTap and how to use it? https://access.redhat.com/solutions/5441

CVSS / CWE

CVSS 3.1 · 5.5
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N

CWE-131 · Incorrect Calculation of Buffer Size