CVE-2022-50277

5.5 MEDIUM

📋 TL;DR

A vulnerability in the Linux kernel's ext4 filesystem allows a NULL pointer dereference when mounting a filesystem with a journal inode marked for encryption and using the 'inlinecrypt' mount option. This causes a kernel crash (denial of service) affecting Linux systems using ext4 with encryption features. Attackers with local access can trigger this by mounting specially crafted filesystems.

💻 Affected Systems

Products:
  • Linux kernel
Versions: Linux kernel versions with ext4 encryption support and fscrypt_limit_io_blocks() function (introduced in specific commits). The fix applies to stable versions backported from mainline.
Operating Systems: All Linux distributions using affected kernel versions with ext4 filesystem support
Default Config Vulnerable: ✅ No
Notes: Only vulnerable when using ext4 filesystem with encryption features and 'inlinecrypt' mount option. Journal inode must have encrypt flag set (not default).

📦 What is this software?

Linux Kernel by Linux

The Linux Kernel is the core component of the Linux operating system, serving as the critical interface between computer hardware and software processes. As the heart of millions of servers, cloud infrastructure, embedded systems, Android devices, and IoT deployments worldwide, the Linux Kernel mana...

Learn more about Linux Kernel →

Linux Kernel by Linux

The Linux Kernel is the core component of the Linux operating system, serving as the critical interface between computer hardware and software processes. As the heart of millions of servers, cloud infrastructure, embedded systems, Android devices, and IoT deployments worldwide, the Linux Kernel mana...

Learn more about Linux Kernel →

⚠️ Risk & Real-World Impact

🔴

Worst Case

Kernel panic leading to system crash and denial of service, potentially requiring physical or remote console access to reboot.

🟠

Likely Case

Local denial of service through kernel crash when mounting malicious filesystems, requiring reboot to restore service.

🟢

If Mitigated

No impact if systems don't use ext4 encryption or inlinecrypt mount option, or if journal inodes aren't maliciously modified.

🌐 Internet-Facing: LOW - Requires local filesystem access and specific mount operations, not directly exploitable over network.
🏢 Internal Only: MEDIUM - Local attackers or malicious insiders could crash systems by mounting crafted filesystems.

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: UNKNOWN
Unauthenticated Exploit: ✅ No
Complexity: MEDIUM

Requires local access to mount filesystems and ability to modify journal inode flags. Not remotely exploitable. Proof of concept requires debugfs access and specific mount options.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Linux kernel patches in stable trees: 105c78e12468413e426625831faa7db4284e1fec, 1f7a6626f611aa06d7907aa45b484708dd5ac8bc, bcc5057e1781a3ee889225480d995c3b5cbde555

Vendor Advisory: https://git.kernel.org/stable/c/105c78e12468413e426625831faa7db4284e1fec

Restart Required: Yes

Instructions:

1. Update Linux kernel to patched version from your distribution. 2. Check kernel version with 'uname -r'. 3. Reboot system after kernel update. 4. Verify patch applied with 'dmesg | grep -i ext4' or check kernel source.

🔧 Temporary Workarounds

Avoid inlinecrypt mount option

all

Do not use 'inlinecrypt' mount option for ext4 filesystems, especially with untrusted filesystems.

mount /dev/device /mountpoint (without -o inlinecrypt)
Remove 'inlinecrypt' from /etc/fstab entries

Restrict debugfs access

all

Limit access to debugfs utility that can modify inode flags.

chmod 700 /sbin/debugfs
setfacl or sudoers restrictions on debugfs

🧯 If You Can't Patch

  • Avoid mounting untrusted ext4 filesystems, especially with inlinecrypt option
  • Implement strict access controls on filesystem mounting operations and debugfs utility

🔍 How to Verify

Check if Vulnerable:

Check kernel version and if ext4 with encryption is used: 'uname -r', 'mount | grep ext4', check for inlinecrypt in mount options.

Check Version:

uname -r

Verify Fix Applied:

Verify kernel version is patched: check if commit 105c78e12468413e426625831faa7db4284e1fec or related patches are in kernel source. Test mount with inlinecrypt on test filesystem.

📡 Detection & Monitoring

Log Indicators:

  • Kernel panic messages in /var/log/messages or dmesg
  • NULL pointer dereference errors mentioning fscrypt_limit_io_blocks() or ext4_iomap_begin()
  • System crash/reboot logs after mount operations

Network Indicators:

  • None - local exploit only

SIEM Query:

source="kernel" AND ("NULL pointer dereference" OR "fscrypt_limit_io_blocks" OR "ext4_iomap_begin")

🔗 References

📤 Share & Export