CVE-2024-47685

9.1 CRITICAL

📋 TL;DR

This CVE-2024-47685 is a Linux kernel vulnerability in the netfilter IPv6 rejection module where uninitialized memory from TCP header reserved bits could be leaked in reset packets. This affects systems using nftables reject rules with IPv6 traffic. The vulnerability allows information disclosure of kernel memory contents.

💻 Affected Systems

Products:
  • Linux kernel
Versions: Specific affected kernel versions not specified in CVE, but fix commits indicate recent kernels before patches were applied
Operating Systems: Linux distributions using affected kernel versions
Default Config Vulnerable: ✅ No
Notes: Only vulnerable when using nftables with reject rules for IPv6 traffic. Systems not using IPv6 or not using netfilter reject rules 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 →

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 memory disclosure could reveal sensitive information including cryptographic keys, process memory, or other privileged data to network attackers.

🟠

Likely Case

Limited information disclosure of kernel stack memory in TCP reset packets sent by netfilter reject rules.

🟢

If Mitigated

With proper network segmentation and firewall rules limiting IPv6 traffic, impact is minimal as attackers need to trigger netfilter reject rules.

🌐 Internet-Facing: MEDIUM - Attackers can trigger this remotely if they can send IPv6 packets that trigger netfilter reject rules.
🏢 Internal Only: LOW - Requires internal network access and ability to trigger specific netfilter reject rules.

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: UNKNOWN
Unauthenticated Exploit: ⚠️ Yes
Complexity: MEDIUM

Exploitation requires ability to send IPv6 packets that trigger netfilter reject rules. The vulnerability was found by syzbot fuzzing.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Kernel versions with commits 10210658f827ad45061581cbfc05924b723e8922, 7a7b5a27c53b55e91eecf646d1b204e73fa4af93, 7bcbc4cda777d26c88500d973fad0d497fc8a82e, 7ea2bcfd9bf4c3dbbf22546162226fd1c14d8ad2, or 872eca64c3267dbc5836b715716fc6c03a18eda7

Vendor Advisory: https://git.kernel.org/stable/c/10210658f827ad45061581cbfc05924b723e8922

Restart Required: Yes

Instructions:

1. Update Linux kernel to patched version from your distribution. 2. Reboot system to load new kernel. 3. Verify kernel version after reboot.

🔧 Temporary Workarounds

Disable IPv6 netfilter reject rules

linux

Remove or disable nftables rules that use reject action for IPv6 traffic

nft list ruleset | grep reject
nft delete rule [family] [table] [chain] [handle X]

Disable IPv6 entirely

linux

Completely disable IPv6 if not needed

sysctl -w net.ipv6.conf.all.disable_ipv6=1
sysctl -w net.ipv6.conf.default.disable_ipv6=1

🧯 If You Can't Patch

  • Implement network segmentation to limit IPv6 traffic to trusted sources only
  • Use external firewalls to filter IPv6 traffic before it reaches vulnerable systems

🔍 How to Verify

Check if Vulnerable:

Check if system uses nftables with reject rules for IPv6 and has unpatched kernel. Command: nft list ruleset | grep -i reject && uname -r

Check Version:

uname -r

Verify Fix Applied:

Verify kernel version includes fix commits and test that IPv6 reject rules no longer leak uninitialized memory

📡 Detection & Monitoring

Log Indicators:

  • Kernel logs showing KMSAN warnings about uninit-value in nf_reject_ip6_tcphdr_put

Network Indicators:

  • TCP reset packets with unusual values in reserved bits field from netfilter systems

SIEM Query:

source="kernel" AND "uninit-value" AND "nf_reject_ip6_tcphdr_put"

🔗 References

📤 Share & Export