CVE-2022-48740

7.8 HIGH

📋 TL;DR

This CVE describes a double-free vulnerability in the SELinux subsystem of the Linux kernel. When error conditions occur in certain SELinux policy loading functions, the cond_list_destroy() function can be called twice on the same memory, leading to a NULL pointer dereference and potential kernel panic. This affects all Linux systems using SELinux with vulnerable kernel versions.

💻 Affected Systems

Products:
  • Linux kernel
Versions: Kernel versions containing the vulnerable SELinux code before the fix commits (specific versions vary by distribution)
Operating Systems: Linux distributions with SELinux enabled (RHEL, Fedora, CentOS, Ubuntu, Debian, etc.)
Default Config Vulnerable: ✅ No
Notes: Only vulnerable when SELinux is enabled and configured. Systems without SELinux or with SELinux disabled are not affected.

📦 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 →

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 →

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 allowing attackers to disrupt critical systems or create instability for privilege escalation attempts.

🟠

Likely Case

System crash or kernel panic when loading malformed SELinux policies, resulting in denial of service and requiring system reboot.

🟢

If Mitigated

No impact if SELinux is disabled or if proper policy validation prevents triggering the error path.

🌐 Internet-Facing: LOW - Requires local access or ability to load SELinux policies, which typically requires administrative privileges.
🏢 Internal Only: MEDIUM - Malicious local users or compromised accounts with SELinux policy modification privileges could trigger the vulnerability.

🎯 Exploit Status

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

Exploitation requires ability to trigger error conditions in SELinux policy loading, typically requiring administrative or SELinux policy modification privileges.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Kernel versions containing commits: 186edf7e368c40d06cf727a1ad14698ea67b74ad, 70caa32e6d81f45f0702070c0e4dfe945e92fbd7, 7ed9cbf7ac0d4ed86b356e1b944304ae9ee450d4, f446089a268c8fc6908488e991d28a9b936293db

Vendor Advisory: https://git.kernel.org/stable/c/186edf7e368c40d06cf727a1ad14698ea67b74ad

Restart Required: Yes

Instructions:

1. Update Linux kernel to patched version from your distribution vendor. 2. For RHEL/CentOS: 'yum update kernel'. 3. For Ubuntu/Debian: 'apt update && apt upgrade linux-image-*'. 4. Reboot system to load new kernel.

🔧 Temporary Workarounds

Disable SELinux

linux

Temporarily disable SELinux to prevent exploitation (not recommended for production security)

setenforce 0
echo 0 > /selinux/enforce

Restrict SELinux policy modifications

linux

Limit which users can modify SELinux policies to prevent triggering the vulnerability

chmod 600 /etc/selinux/*
setfacl -m u:root:rwx /etc/selinux/

🧯 If You Can't Patch

  • Disable SELinux enforcement mode temporarily
  • Restrict access to SELinux policy directories to root only
  • Monitor for SELinux policy modification attempts

🔍 How to Verify

Check if Vulnerable:

Check kernel version and if SELinux is enabled: 'uname -r' and 'getenforce'

Check Version:

uname -r

Verify Fix Applied:

Verify kernel version is patched and test SELinux policy loading functionality

📡 Detection & Monitoring

Log Indicators:

  • Kernel panic messages in /var/log/messages or dmesg
  • SELinux policy loading errors
  • System crash/reboot events

Network Indicators:

  • None - local vulnerability only

SIEM Query:

source="kernel" AND ("panic" OR "NULL pointer dereference" OR "SELinux error")

🔗 References

📤 Share & Export