Логотип exploitDog
Консоль
Логотип exploitDog

exploitDog

redhat логотип

CVE-2026-98239

Опубликовано: 06 окт. 2026
Источник: redhat
CVSS3: 7.5
EPSS Низкий

Описание

In the Linux kernel, the following vulnerability has been resolved: net: lan743x: fix RX checksum use-after-free lan743x_rx_process_buffer() adds each non-first receive buffer to the head skb's frag_list. On the last descriptor, lan743x_rx_trim_skb() linearizes the head and frees the fragment skb metadata. The checksum-success path then writes ip_summed through the local skb pointer, which still points to the final fragment. This causes a use-after-free write when a packet spans more than one receive buffer. Set ip_summed on the surviving head skb instead. Multi-buffer receive can occur after a live MTU increase because existing ring entries keep their old buffer size until they are replenished. A KUnit test invoking lan743x_rx_process_buffer() with a two-buffer packet produced a one-byte KASAN use-after-free write before this change. The same test passed after the change. The driver object also builds with W=1. This was not tested on physical LAN743x hardware.

A flaw was found in the Linux kernel's LAN743x network device driver. This vulnerability allows an attacker capable of transmitting network traffic to an affected system to cause a Denial of Service (DoS) or memory corruption. The issue occurs because the driver attempts to update checksum information on a packet buffer that has already been freed during multi-buffer receive handling, resulting in a use-after-free condition.

Отчет

A confirmed use-after-free write occurs in the LAN743x receive path when a packet spans multiple receive buffers. lan743x_rx_trim_skb linearizes the head skb and frees fragment skb metadata, but the local skb pointer can still reference the final freed fragment. The checksum success path then writes CHECKSUM_UNNECESSARY to the freed ip_summed field, producing a one-byte kernel heap write. A network sender can potentially reach this path with a suitable multi-buffer packet after a live MTU increase leaves existing receive ring entries with their previous buffer size. For the CVSS the PR:N value is used because the sender does not need an account or privileges on the target system, although an administrator normally creates the required MTU transition state. AV:A and AC:H reflect the need for access through an adjacent LAN743x network path and the additional interface state and timing conditions. Impact is at least denial of service through kernel memory corruption and a possible crash. The confirmed write after free also creates a plausible but unproven path to confidentiality or integrity impact if the freed skb storage is reused for another kernel object.

Меры по смягчению последствий

Mitigation for this issue is either not available or the currently available options don't meet the Red Hat Product Security criteria comprising ease of use and deployment, applicability to widespread installation base or stability.

Затронутые пакеты

ПлатформаПакетСостояниеРекомендацияРелиз
Red Hat Enterprise Linux 10kernelAffected
Red Hat Enterprise Linux 6kernelNot affected
Red Hat Enterprise Linux 7kernelNot affected
Red Hat Enterprise Linux 7kernel-rtNot affected
Red Hat Enterprise Linux 8kernelNot affected
Red Hat Enterprise Linux 8kernel-rtNot affected
Red Hat Enterprise Linux 9kernelNot affected
Red Hat Enterprise Linux 9kernel-rtNot affected
Red Hat OpenShift Container Platform 4openshift/ose-rhel-coreos-8Not affected
Red Hat OpenShift Container Platform 4openshift/ose-rhel-coreos-9Not affected

Показывать по

Дополнительная информация

Статус:

Moderate
Дефект:
CWE-416
https://bugzilla.redhat.com/show_bug.cgi?id=2546529kernel: net: lan743x: fix RX checksum use-after-free

EPSS

Процентиль: 38%
0.00435
Низкий

7.5 High

CVSS3

Связанные уязвимости

CVSS3: 8.1
ubuntu
около 1 месяца назад

In the Linux kernel, the following vulnerability has been resolved: net: lan743x: fix RX checksum use-after-free lan743x_rx_process_buffer() adds each non-first receive buffer to the head skb's frag_list. On the last descriptor, lan743x_rx_trim_skb() linearizes the head and frees the fragment skb metadata. The checksum-success path then writes ip_summed through the local skb pointer, which still points to the final fragment. This causes a use-after-free write when a packet spans more than one receive buffer. Set ip_summed on the surviving head skb instead. Multi-buffer receive can occur after a live MTU increase because existing ring entries keep their old buffer size until they are replenished. A KUnit test invoking lan743x_rx_process_buffer() with a two-buffer packet produced a one-byte KASAN use-after-free write before this change. The same test passed after the change. The driver object also builds with W=1. This was not tested on physical LAN743x hardware.

CVSS3: 8.1
nvd
около 1 месяца назад

In the Linux kernel, the following vulnerability has been resolved: net: lan743x: fix RX checksum use-after-free lan743x_rx_process_buffer() adds each non-first receive buffer to the head skb's frag_list. On the last descriptor, lan743x_rx_trim_skb() linearizes the head and frees the fragment skb metadata. The checksum-success path then writes ip_summed through the local skb pointer, which still points to the final fragment. This causes a use-after-free write when a packet spans more than one receive buffer. Set ip_summed on the surviving head skb instead. Multi-buffer receive can occur after a live MTU increase because existing ring entries keep their old buffer size until they are replenished. A KUnit test invoking lan743x_rx_process_buffer() with a two-buffer packet produced a one-byte KASAN use-after-free write before this change. The same test passed after the change. The driver object also builds with W=1. This was not tested on physical LAN743x hardware.

CVSS3: 7.1
msrc
18 дней назад

net: lan743x: fix RX checksum use-after-free

CVSS3: 8.1
debian
около 1 месяца назад

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

CVSS3: 8.1
github
около 1 месяца назад

In the Linux kernel, the following vulnerability has been resolved: net: lan743x: fix RX checksum use-after-free lan743x_rx_process_buffer() adds each non-first receive buffer to the head skb's frag_list. On the last descriptor, lan743x_rx_trim_skb() linearizes the head and frees the fragment skb metadata. The checksum-success path then writes ip_summed through the local skb pointer, which still points to the final fragment. This causes a use-after-free write when a packet spans more than one receive buffer. Set ip_summed on the surviving head skb instead. Multi-buffer receive can occur after a live MTU increase because existing ring entries keep their old buffer size until they are replenished. A KUnit test invoking lan743x_rx_process_buffer() with a two-buffer packet produced a one-byte KASAN use-after-free write before this change. The same test passed after the change. The driver object also builds with W=1. This was not tested on physical LAN743x hardware.

EPSS

Процентиль: 38%
0.00435
Низкий

7.5 High

CVSS3

Уязвимость CVE-2026-98239 в Red Hat CVE — exploitDog