Cloudanix VulnDB

CVE-2022-24448

Low · 3.3

CVSS

3.3

EPSS

0.4%

Published

Feb 4, 2022

CISA due date

—

Cloudanix analysis

Schedule a fix SSVC: Track

A mistake in how the Linux kernel handles certain file opens over network shares could let a program on the same computer accidentally see leftover pieces of memory that should have stayed private.

Exploitation
Local Privilege
Attacker needs
Low Privilege
Complexity
Low
Impact
Data Exposure
Component
OS kernel
Class
Information Disclosure
Remediation
Upgrade
Effort
Medium
Patch risk
Low

What it actually does

nfs_atomic_open returns uninitialized kernel data in the file descriptor instead of ENOTDIR when O_DIRECTORY is set on a regular file during NFS lookup.

Why it matters to the business

Local processes may receive leftover kernel memory contents, creating a minor risk of sensitive data exposure on systems using NFS; low urgency given age and limited scope.

How an attack unfolds

A local attacker writes or runs an application that opens a regular file on an NFS mount while forcing the O_DIRECTORY flag; nfs_atomic_open performs a lookup, the server fails to enforce the directory check, and uninitialized data leaks back into the returned file descriptor.

How to fix it

Update the Linux kernel to a version containing commit ab0fc21bc7105b54bafd85bd8b82742f9e68898a or later; rebuild and reboot affected systems; verify the NFS client code no longer returns uninitialized data on this code path.

How to confirm the fix worked

Confirm the running kernel contains commit ab0fc21bc7105b54bafd85bd8b82742f9e68898a; test by attempting to open a regular file with O_DIRECTORY on an NFS mount and verifying ENOTDIR is returned without data leakage.

Typical attack path

  1. Locate an NFS-mounted filesystem
  2. Craft or execute a local program that opens a regular file with O_DIRECTORY
  3. Trigger nfs_atomic_open via the VFS layer
  4. Read the returned file descriptor to obtain uninitialized kernel memory

How to detect it

Review application and system logs for unusual O_DIRECTORY usage on NFS paths; inspect kernel audit records or strace output for open calls returning unexpected data; no widespread exploitation indicators reported.

What your security team should do

  • Prioritize kernel updates on all systems mounting NFS exports
  • Audit local applications that set O_DIRECTORY when opening paths
  • Monitor for future Linux kernel NFS fixes and apply promptly

The record

An issue was discovered in fs/nfs/dir.c in the Linux kernel before 5.16.5. If an application sets the O_DIRECTORY flag, and tries to open a regular file, nfs_atomic_open() performs a regular lookup. If a regular file is found, ENOTDIR should occur, but the server instead returns uninitialized data in the file descriptor.

Affected packages

Ecosystem Package Introduced Fixed
AlmaLinux:8 bpftool 0 4.18.0-425.3.1.el8
AlmaLinux:8 kernel 0 4.18.0-425.3.1.el8
AlmaLinux:8 kernel-abi-stablelists 0 4.18.0-425.3.1.el8
AlmaLinux:8 kernel-core 0 4.18.0-425.3.1.el8
AlmaLinux:8 kernel-cross-headers 0 4.18.0-425.3.1.el8
AlmaLinux:8 kernel-debug 0 4.18.0-425.3.1.el8
AlmaLinux:8 kernel-debug-core 0 4.18.0-425.3.1.el8
AlmaLinux:8 kernel-debug-devel 0 4.18.0-425.3.1.el8
AlmaLinux:8 kernel-debug-modules 0 4.18.0-425.3.1.el8
AlmaLinux:8 kernel-debug-modules-extra 0 4.18.0-425.3.1.el8
AlmaLinux:8 kernel-devel 0 4.18.0-425.3.1.el8
AlmaLinux:8 kernel-doc 0 4.18.0-425.3.1.el8
AlmaLinux:8 kernel-headers 0 4.18.0-425.3.1.el8
AlmaLinux:8 kernel-modules 0 4.18.0-425.3.1.el8
AlmaLinux:8 kernel-modules-extra 0 4.18.0-425.3.1.el8
AlmaLinux:8 kernel-rt 0 4.18.0-425.3.1.rt7.213.el8
AlmaLinux:8 kernel-rt-core 0 4.18.0-425.3.1.rt7.213.el8
AlmaLinux:8 kernel-rt-debug 0 4.18.0-425.3.1.rt7.213.el8
AlmaLinux:8 kernel-rt-debug-core 0 4.18.0-425.3.1.rt7.213.el8
AlmaLinux:8 kernel-rt-debug-devel 0 4.18.0-425.3.1.rt7.213.el8
AlmaLinux:8 kernel-rt-debug-kvm 0 4.18.0-425.3.1.rt7.213.el8
AlmaLinux:8 kernel-rt-debug-modules 0 4.18.0-425.3.1.rt7.213.el8
AlmaLinux:8 kernel-rt-debug-modules-extra 0 4.18.0-425.3.1.rt7.213.el8
AlmaLinux:8 kernel-rt-devel 0 4.18.0-425.3.1.rt7.213.el8
AlmaLinux:8 kernel-rt-kvm 0 4.18.0-425.3.1.rt7.213.el8
AlmaLinux:8 kernel-rt-modules 0 4.18.0-425.3.1.rt7.213.el8
AlmaLinux:8 kernel-rt-modules-extra 0 4.18.0-425.3.1.rt7.213.el8
AlmaLinux:8 kernel-tools 0 4.18.0-425.3.1.el8
AlmaLinux:8 kernel-tools-libs 0 4.18.0-425.3.1.el8
AlmaLinux:8 kernel-tools-libs-devel 0 4.18.0-425.3.1.el8
AlmaLinux:8 kernel-zfcpdump 0 4.18.0-425.3.1.el8
AlmaLinux:8 kernel-zfcpdump-core 0 4.18.0-425.3.1.el8
AlmaLinux:8 kernel-zfcpdump-devel 0 4.18.0-425.3.1.el8
AlmaLinux:8 kernel-zfcpdump-modules 0 4.18.0-425.3.1.el8
AlmaLinux:8 kernel-zfcpdump-modules-extra 0 4.18.0-425.3.1.el8
AlmaLinux:8 perf 0 4.18.0-425.3.1.el8
AlmaLinux:8 python3-perf 0 4.18.0-425.3.1.el8
AlmaLinux:9 bpftool 0 5.14.0-162.6.1.el9_1
AlmaLinux:9 kernel 0 5.14.0-162.6.1.el9_1
AlmaLinux:9 kernel-abi-stablelists 0 5.14.0-162.6.1.el9_1
AlmaLinux:9 kernel-core 0 5.14.0-162.6.1.el9_1
AlmaLinux:9 kernel-cross-headers 0 5.14.0-162.6.1.el9_1
AlmaLinux:9 kernel-debug 0 5.14.0-162.6.1.el9_1
AlmaLinux:9 kernel-debug-core 0 5.14.0-162.6.1.el9_1
AlmaLinux:9 kernel-debug-devel 0 5.14.0-162.6.1.el9_1
AlmaLinux:9 kernel-debug-devel-matched 0 5.14.0-162.6.1.el9_1
AlmaLinux:9 kernel-debug-modules 0 5.14.0-162.6.1.el9_1
AlmaLinux:9 kernel-debug-modules-extra 0 5.14.0-162.6.1.el9_1
AlmaLinux:9 kernel-devel 0 5.14.0-162.6.1.el9_1
AlmaLinux:9 kernel-devel-matched 0 5.14.0-162.6.1.el9_1
AlmaLinux:9 kernel-doc 0 5.14.0-162.6.1.el9_1
AlmaLinux:9 kernel-headers 0 5.14.0-162.6.1.el9_1
AlmaLinux:9 kernel-modules 0 5.14.0-162.6.1.el9_1
AlmaLinux:9 kernel-modules-extra 0 5.14.0-162.6.1.el9_1
AlmaLinux:9 kernel-rt 0 5.14.0-162.6.1.rt21.168.el9_1
AlmaLinux:9 kernel-rt-core 0 5.14.0-162.6.1.rt21.168.el9_1
AlmaLinux:9 kernel-rt-debug 0 5.14.0-162.6.1.rt21.168.el9_1
AlmaLinux:9 kernel-rt-debug-core 0 5.14.0-162.6.1.rt21.168.el9_1
AlmaLinux:9 kernel-rt-debug-devel 0 5.14.0-162.6.1.rt21.168.el9_1
AlmaLinux:9 kernel-rt-debug-kvm 0 5.14.0-162.6.1.rt21.168.el9_1
AlmaLinux:9 kernel-rt-debug-modules 0 5.14.0-162.6.1.rt21.168.el9_1
AlmaLinux:9 kernel-rt-debug-modules-extra 0 5.14.0-162.6.1.rt21.168.el9_1
AlmaLinux:9 kernel-rt-devel 0 5.14.0-162.6.1.rt21.168.el9_1
AlmaLinux:9 kernel-rt-kvm 0 5.14.0-162.6.1.rt21.168.el9_1
AlmaLinux:9 kernel-rt-modules 0 5.14.0-162.6.1.rt21.168.el9_1
AlmaLinux:9 kernel-rt-modules-extra 0 5.14.0-162.6.1.rt21.168.el9_1
AlmaLinux:9 kernel-tools 0 5.14.0-162.6.1.el9_1
AlmaLinux:9 kernel-tools-libs 0 5.14.0-162.6.1.el9_1
AlmaLinux:9 kernel-tools-libs-devel 0 5.14.0-162.6.1.el9_1
AlmaLinux:9 kernel-zfcpdump 0 5.14.0-162.6.1.el9_1
AlmaLinux:9 kernel-zfcpdump-core 0 5.14.0-162.6.1.el9_1
AlmaLinux:9 kernel-zfcpdump-devel 0 5.14.0-162.6.1.el9_1
AlmaLinux:9 kernel-zfcpdump-devel-matched 0 5.14.0-162.6.1.el9_1
AlmaLinux:9 kernel-zfcpdump-modules 0 5.14.0-162.6.1.el9_1
AlmaLinux:9 kernel-zfcpdump-modules-extra 0 5.14.0-162.6.1.el9_1
AlmaLinux:9 perf 0 5.14.0-162.6.1.el9_1
AlmaLinux:9 python3-perf 0 5.14.0-162.6.1.el9_1
Debian:10 linux 0 4.19.232-1
Debian:11 linux 0 5.10.92-2
Debian:12 linux 0 5.16.7-1
Debian:13 linux 0 5.16.7-1
Debian:14 linux 0 5.16.7-1
Debian:9 linux 0 4.9.303-1
Debian:9 linux-4.19 0 4.19.232-1~deb9u1
Mageia:8 kernel 0 5.15.23-1.mga8
Mageia:8 kernel-linus 0 5.15.23-1.mga8
Mageia:8 kmod-virtualbox 0 6.1.32-1.6.mga8
Mageia:8 kmod-xtables-addons 0 3.18-1.56.mga8
Red Hat:enterprise_linux:8::baseos bpftool 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::baseos bpftool-debuginfo 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::baseos kernel 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::baseos kernel-abi-stablelists 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::baseos kernel-core 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::baseos kernel-cross-headers 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::baseos kernel-debug 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::baseos kernel-debug-core 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::baseos kernel-debug-debuginfo 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::baseos kernel-debug-devel 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::baseos kernel-debug-modules 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::baseos kernel-debug-modules-extra 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::baseos kernel-debuginfo 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::baseos kernel-debuginfo-common-aarch64 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::baseos kernel-debuginfo-common-ppc64le 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::baseos kernel-debuginfo-common-s390x 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::baseos kernel-debuginfo-common-x86_64 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::baseos kernel-devel 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::baseos kernel-doc 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::baseos kernel-headers 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::baseos kernel-modules 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::baseos kernel-modules-extra 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::baseos kernel-tools 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::baseos kernel-tools-debuginfo 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::baseos kernel-tools-libs 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::baseos kernel-tools-libs-devel 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::baseos kernel-zfcpdump 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::baseos kernel-zfcpdump-core 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::baseos kernel-zfcpdump-debuginfo 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::baseos kernel-zfcpdump-devel 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::baseos kernel-zfcpdump-modules 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::baseos kernel-zfcpdump-modules-extra 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::baseos perf 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::baseos perf-debuginfo 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::baseos python3-perf 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::baseos python3-perf-debuginfo 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::crb bpftool 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::crb bpftool-debuginfo 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::crb kernel 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::crb kernel-abi-stablelists 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::crb kernel-core 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::crb kernel-cross-headers 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::crb kernel-debug 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::crb kernel-debug-core 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::crb kernel-debug-debuginfo 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::crb kernel-debug-devel 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::crb kernel-debug-modules 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::crb kernel-debug-modules-extra 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::crb kernel-debuginfo 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::crb kernel-debuginfo-common-aarch64 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::crb kernel-debuginfo-common-ppc64le 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::crb kernel-debuginfo-common-s390x 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::crb kernel-debuginfo-common-x86_64 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::crb kernel-devel 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::crb kernel-doc 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::crb kernel-headers 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::crb kernel-modules 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::crb kernel-modules-extra 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::crb kernel-tools 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::crb kernel-tools-debuginfo 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::crb kernel-tools-libs 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::crb kernel-tools-libs-devel 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::crb kernel-zfcpdump 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::crb kernel-zfcpdump-core 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::crb kernel-zfcpdump-debuginfo 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::crb kernel-zfcpdump-devel 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::crb kernel-zfcpdump-modules 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::crb kernel-zfcpdump-modules-extra 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::crb perf 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::crb perf-debuginfo 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::crb python3-perf 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::crb python3-perf-debuginfo 0 0:4.18.0-425.3.1.el8
Red Hat:enterprise_linux:8::nfv kernel-rt 0 0:4.18.0-425.3.1.rt7.213.el8
Red Hat:enterprise_linux:8::nfv kernel-rt-core 0 0:4.18.0-425.3.1.rt7.213.el8
Red Hat:enterprise_linux:8::nfv kernel-rt-debug 0 0:4.18.0-425.3.1.rt7.213.el8
Red Hat:enterprise_linux:8::nfv kernel-rt-debug-core 0 0:4.18.0-425.3.1.rt7.213.el8
Red Hat:enterprise_linux:8::nfv kernel-rt-debug-debuginfo 0 0:4.18.0-425.3.1.rt7.213.el8
Red Hat:enterprise_linux:8::nfv kernel-rt-debug-devel 0 0:4.18.0-425.3.1.rt7.213.el8
Red Hat:enterprise_linux:8::nfv kernel-rt-debug-kvm 0 0:4.18.0-425.3.1.rt7.213.el8
Red Hat:enterprise_linux:8::nfv kernel-rt-debug-modules 0 0:4.18.0-425.3.1.rt7.213.el8
Red Hat:enterprise_linux:8::nfv kernel-rt-debug-modules-extra 0 0:4.18.0-425.3.1.rt7.213.el8
Red Hat:enterprise_linux:8::nfv kernel-rt-debuginfo 0 0:4.18.0-425.3.1.rt7.213.el8
Red Hat:enterprise_linux:8::nfv kernel-rt-debuginfo-common-x86_64 0 0:4.18.0-425.3.1.rt7.213.el8
Red Hat:enterprise_linux:8::nfv kernel-rt-devel 0 0:4.18.0-425.3.1.rt7.213.el8
Red Hat:enterprise_linux:8::nfv kernel-rt-kvm 0 0:4.18.0-425.3.1.rt7.213.el8
Red Hat:enterprise_linux:8::nfv kernel-rt-modules 0 0:4.18.0-425.3.1.rt7.213.el8
Red Hat:enterprise_linux:8::nfv kernel-rt-modules-extra 0 0:4.18.0-425.3.1.rt7.213.el8
Red Hat:enterprise_linux:8::realtime kernel-rt 0 0:4.18.0-425.3.1.rt7.213.el8
Red Hat:enterprise_linux:8::realtime kernel-rt-core 0 0:4.18.0-425.3.1.rt7.213.el8
Red Hat:enterprise_linux:8::realtime kernel-rt-debug 0 0:4.18.0-425.3.1.rt7.213.el8
Red Hat:enterprise_linux:8::realtime kernel-rt-debug-core 0 0:4.18.0-425.3.1.rt7.213.el8
Red Hat:enterprise_linux:8::realtime kernel-rt-debug-debuginfo 0 0:4.18.0-425.3.1.rt7.213.el8
Red Hat:enterprise_linux:8::realtime kernel-rt-debug-devel 0 0:4.18.0-425.3.1.rt7.213.el8
Red Hat:enterprise_linux:8::realtime kernel-rt-debug-kvm 0 0:4.18.0-425.3.1.rt7.213.el8
Red Hat:enterprise_linux:8::realtime kernel-rt-debug-modules 0 0:4.18.0-425.3.1.rt7.213.el8
Red Hat:enterprise_linux:8::realtime kernel-rt-debug-modules-extra 0 0:4.18.0-425.3.1.rt7.213.el8
Red Hat:enterprise_linux:8::realtime kernel-rt-debuginfo 0 0:4.18.0-425.3.1.rt7.213.el8
Red Hat:enterprise_linux:8::realtime kernel-rt-debuginfo-common-x86_64 0 0:4.18.0-425.3.1.rt7.213.el8
Red Hat:enterprise_linux:8::realtime kernel-rt-devel 0 0:4.18.0-425.3.1.rt7.213.el8
Red Hat:enterprise_linux:8::realtime kernel-rt-kvm 0 0:4.18.0-425.3.1.rt7.213.el8
Red Hat:enterprise_linux:8::realtime kernel-rt-modules 0 0:4.18.0-425.3.1.rt7.213.el8
Red Hat:enterprise_linux:8::realtime kernel-rt-modules-extra 0 0:4.18.0-425.3.1.rt7.213.el8
Red Hat:enterprise_linux:9::appstream bpftool 0 0:5.14.0-162.6.1.el9_1
Red Hat:enterprise_linux:9::appstream bpftool-debuginfo 0 0:5.14.0-162.6.1.el9_1
Red Hat:enterprise_linux:9::appstream kernel 0 0:5.14.0-162.6.1.el9_1
Red Hat:enterprise_linux:9::appstream kernel-abi-stablelists 0 0:5.14.0-162.6.1.el9_1
Red Hat:enterprise_linux:9::appstream kernel-core 0 0:5.14.0-162.6.1.el9_1
Red Hat:enterprise_linux:9::appstream kernel-cross-headers 0 0:5.14.0-162.6.1.el9_1
Red Hat:enterprise_linux:9::appstream kernel-debug 0 0:5.14.0-162.6.1.el9_1
Red Hat:enterprise_linux:9::appstream kernel-debug-core 0 0:5.14.0-162.6.1.el9_1
Red Hat:enterprise_linux:9::appstream kernel-debug-debuginfo 0 0:5.14.0-162.6.1.el9_1
Red Hat:enterprise_linux:9::appstream kernel-debug-devel 0 0:5.14.0-162.6.1.el9_1

Related vulnerabilities