NULL Pointer Dereference Affecting kernel-coco_debug package, versions <6.4.0-15061.15.coco15sp6.1


Severity

Recommended
0.0
medium
0
10

Based on SUSE Linux Enterprise Server security rating.

Threat Intelligence

EPSS
0.03% (8th percentile)

Do your applications use this vulnerable package?

In a few clicks we can analyze your entire application and see what components are vulnerable in your application, and suggest you quick fixes.

Test your applications
  • Snyk IDSNYK-SLES156-KERNELCOCODEBUG-8731690
  • published18 Feb 2025
  • disclosed17 Feb 2025

Introduced: 17 Feb 2025

CVE-2024-49978  (opens in a new tab)
CWE-476  (opens in a new tab)

How to fix?

Upgrade SLES:15.6 kernel-coco_debug to version 6.4.0-15061.15.coco15sp6.1 or higher.

NVD Description

Note: Versions mentioned in the description apply only to the upstream kernel-coco_debug package and not the kernel-coco_debug package as distributed by SLES. See How to fix? for SLES:15.6 relevant fixed versions and status.

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

gso: fix udp gso fraglist segmentation after pull from frag_list

Detect gso fraglist skbs with corrupted geometry (see below) and pass these to skb_segment instead of skb_segment_list, as the first can segment them correctly.

Valid SKB_GSO_FRAGLIST skbs

  • consist of two or more segments
  • the head_skb holds the protocol headers plus first gso_size
  • one or more frag_list skbs hold exactly one segment
  • all but the last must be gso_size

Optional datapath hooks such as NAT and BPF (bpf_skb_pull_data) can modify these skbs, breaking these invariants.

In extreme cases they pull all data into skb linear. For UDP, this causes a NULL ptr deref in __udpv4_gso_segment_list_csum at udp_hdr(seg->next)->dest.

Detect invalid geometry due to pull, by checking head_skb size. Don't just drop, as this may blackhole a destination. Convert to be able to pass to regular skb_segment.

CVSS Base Scores

version 3.1