CVE-2022-49267

7.8 HIGH

📋 TL;DR

This CVE describes a buffer overflow vulnerability in the Linux kernel's MMC core subsystem where sprintf() was used for sysfs output instead of the safer sysfs_emit(). This could allow local attackers to potentially execute arbitrary code or cause denial of service. Affected systems are those running vulnerable Linux kernel versions with MMC functionality.

💻 Affected Systems

Products:
  • Linux kernel
Versions: Specific vulnerable versions not explicitly stated in CVE, but patches exist for multiple stable branches.
Operating Systems: Linux distributions using affected kernel versions
Default Config Vulnerable: ⚠️ Yes
Notes: Requires MMC functionality to be present and sysfs interface accessible.

📦 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

Local privilege escalation to kernel-level code execution, potentially leading to full system compromise.

🟠

Likely Case

Kernel panic or system crash causing denial of service.

🟢

If Mitigated

Limited impact due to local-only access requirement and kernel hardening features like KASLR.

🌐 Internet-Facing: LOW - Requires local access to the system.
🏢 Internal Only: MEDIUM - Local users or compromised accounts could exploit this vulnerability.

🎯 Exploit Status

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

Requires local access and knowledge of kernel exploitation techniques. No public exploits known.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Patched in kernel commits: 0f55ac683b2722714016f16daae9cab3f7f7b9f9, 659ca56b5415c7a1d05e185c36fad80ba165d063, c4ab65738ab3e21fe519ee46b2051222bc8e32ef, f5d8a5fe77ce933f53eb8f2e22bb7a1a2019ea11

Vendor Advisory: https://git.kernel.org/stable/c/0f55ac683b2722714016f16daae9cab3f7f7b9f9

Restart Required: Yes

Instructions:

1. Update Linux kernel to patched version from your distribution vendor. 2. Reboot system to load new kernel.

🔧 Temporary Workarounds

Restrict sysfs access

all

Limit access to MMC sysfs interfaces to reduce attack surface.

chmod 600 /sys/class/mmc_host/*
chown root:root /sys/class/mmc_host/*

🧯 If You Can't Patch

  • Implement strict access controls to limit local user privileges
  • Disable MMC functionality if not required for system operation

🔍 How to Verify

Check if Vulnerable:

Check kernel version and compare with distribution's security advisories. Examine kernel source for sprintf() usage in mmc core sysfs code.

Check Version:

uname -r

Verify Fix Applied:

Verify kernel version includes the patched commits. Check that sysfs_emit() is used instead of sprintf() in mmc core sysfs handlers.

📡 Detection & Monitoring

Log Indicators:

  • Kernel panic logs
  • System crash dumps
  • Unexpected MMC-related errors

Network Indicators:

  • None - local vulnerability only

SIEM Query:

Search for kernel panic events or privilege escalation attempts from local users

🔗 References

📤 Share & Export