---
id: CVE-2024-56638
title: 'netfilter: nft_inner: incorrect percpu area handling under softirq'
summary: |-
  In the Linux kernel, the following vulnerability has been resolved:

  netfilter: nft_inner: incorrect percpu area handling under softirq

  Softirq can interrupt ongoing packet from process context that is
  walking over the percpu area that …
severity: none
vendor: Linux
product: Linux
affected:
  - >-
    Linux >= 3a07327d10a09379315c844c63f27941f5081e0a <
    53c7314208c865086d78b4e88da53bc33da0b603
  - >-
    Linux >= 3a07327d10a09379315c844c63f27941f5081e0a <
    da5cc778e7bf78fe525bc90ec2043f41415c31d9
  - >-
    Linux >= 3a07327d10a09379315c844c63f27941f5081e0a <
    7b1d83da254be3bf054965c8f3b1ad976f460ae5
  - Linux 6.2
ssvc:
  exploitation: none
  automatable: 'no'
  technicalImpact: partial
  timestamp: '2026-11-05T20:29:37.886503Z'
published: '2024-12-27'
updated: '2026-11-05'
sourceUpdated: '2026-11-05T20:31:25.564Z'
source: CVEORG
sourceUrl: 'https://www.cve.org/CVERecord?id=CVE-2024-56638'
references:
  - url: 'https://git.kernel.org/stable/c/53c7314208c865086d78b4e88da53bc33da0b603'
  - url: 'https://git.kernel.org/stable/c/da5cc778e7bf78fe525bc90ec2043f41415c31d9'
  - url: 'https://git.kernel.org/stable/c/7b1d83da254be3bf054965c8f3b1ad976f460ae5'
tags:
  - cve.org
epss: 0.00227
epssPercentile: 0.13468
ingestedAt: '2026-11-05T22:38:31.836Z'
---

## Overview

In the Linux kernel, the following vulnerability has been resolved:

netfilter: nft_inner: incorrect percpu area handling under softirq

Softirq can interrupt ongoing packet from process context that is
walking over the percpu area that contains inner header offsets.

Disable bh and perform three checks before restoring the percpu inner
header offsets to validate that the percpu area is valid for this
skbuff:

1) If the NFT_PKTINFO_INNER_FULL flag is set on, then this skbuff
   has already been parsed before for inner header fetching to
   register.

2) Validate that the percpu area refers to this skbuff using the
   skbuff pointer as a cookie. If there is a cookie mismatch, then
   this skbuff needs to be parsed again.

3) Finally, validate if the percpu area refers to this tunnel type.

Only after these three checks the percpu area is restored to a on-stack
copy and bh is enabled again.

After inner header fetching, the on-stack copy is stored back to the
percpu area.

## Affected

- `Linux >= 3a07327d10a09379315c844c63f27941f5081e0a < 53c7314208c865086d78b4e88da53bc33da0b603`
- `Linux >= 3a07327d10a09379315c844c63f27941f5081e0a < da5cc778e7bf78fe525bc90ec2043f41415c31d9`
- `Linux >= 3a07327d10a09379315c844c63f27941f5081e0a < 7b1d83da254be3bf054965c8f3b1ad976f460ae5`
- `Linux 6.2`

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
