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

exploitDog

redhat логотип

CVE-2026-80584

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

Описание

In the Linux kernel, the following vulnerability has been resolved: s390/qeth: validate user buffer length in SNMP and ARP query ioctls qeth_snmp_command() and qeth_l3_arp_query() allocate a buffer sized by a user-supplied length (udata_len) without checking a lower bound, then set udata_offset to a fixed non-zero value and pass both to a reply callback. The callback bounds-checks the copy with if ((udata_len - udata_offset) < len) Both fields are u32, so a udata_len smaller than udata_offset makes the subtraction wrap and the check pass, and the following memcpy() writes past the allocation. A udata_len of 0 also yields ZERO_SIZE_PTR from kzalloc(), which the existing NULL check does not catch. Reject buffers smaller than udata_offset before allocating, so the callback subtraction can no longer underflow.

A flaw was found in the Linux kernel's s390/qeth component. This vulnerability allows a local attacker to trigger an integer underflow when handling user-supplied buffer lengths in the qeth_snmp_command() and qeth_l3_arp_query() functions. This can lead to an out-of-bounds write, potentially causing memory corruption and system instability or a denial of service.

Отчет

A kernel heap out of bounds write is possible in the s390 qeth SNMP and ARP query ioctl paths because qeth_snmp_command() and qeth_l3_arp_query() accept a user supplied udata_len that can be smaller than the fixed reply offset. The later bounds check subtracts udata_offset from udata_len using u32 arithmetic, so a too small length can underflow and make the check pass before memcpy writes past the allocated buffer. For the CVSS the PR:L is used because a local user or process can reach the ioctl interface in plausible deployments, while full administrator privileges are not clearly required by the bug class. The issue is not directly network reachable because the trigger is a local ioctl rather than packet traffic. Impact is at least a local denial of service via kernel crash and in the paranoid case may allow confidentiality and integrity impact due to kernel heap memory corruption.

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

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 9kernel-rtAffected
Red Hat Enterprise Linux 9kernelFixedRHSA-2026:9537005.11.2026
Red Hat Enterprise Linux 9kernelFixedRHSA-2026:9537005.11.2026

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

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

Статус:

Moderate
Дефект:
CWE-787
https://bugzilla.redhat.com/show_bug.cgi?id=2524475kernel: s390/qeth: validate user buffer length in SNMP and ARP query ioctls

EPSS

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

7.8 High

CVSS3

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

CVSS3: 8.4
ubuntu
2 месяца назад

In the Linux kernel, the following vulnerability has been resolved: s390/qeth: validate user buffer length in SNMP and ARP query ioctls qeth_snmp_command() and qeth_l3_arp_query() allocate a buffer sized by a user-supplied length (udata_len) without checking a lower bound, then set udata_offset to a fixed non-zero value and pass both to a reply callback. The callback bounds-checks the copy with if ((udata_len - udata_offset) < len) Both fields are u32, so a udata_len smaller than udata_offset makes the subtraction wrap and the check pass, and the following memcpy() writes past the allocation. A udata_len of 0 also yields ZERO_SIZE_PTR from kzalloc(), which the existing NULL check does not catch. Reject buffers smaller than udata_offset before allocating, so the callback subtraction can no longer underflow.

CVSS3: 8.4
nvd
2 месяца назад

In the Linux kernel, the following vulnerability has been resolved: s390/qeth: validate user buffer length in SNMP and ARP query ioctls qeth_snmp_command() and qeth_l3_arp_query() allocate a buffer sized by a user-supplied length (udata_len) without checking a lower bound, then set udata_offset to a fixed non-zero value and pass both to a reply callback. The callback bounds-checks the copy with if ((udata_len - udata_offset) < len) Both fields are u32, so a udata_len smaller than udata_offset makes the subtraction wrap and the check pass, and the following memcpy() writes past the allocation. A udata_len of 0 also yields ZERO_SIZE_PTR from kzalloc(), which the existing NULL check does not catch. Reject buffers smaller than udata_offset before allocating, so the callback subtraction can no longer underflow.

CVSS3: 5.5
msrc
около 1 месяца назад

s390/qeth: validate user buffer length in SNMP and ARP query ioctls

CVSS3: 8.4
debian
2 месяца назад

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

CVSS3: 8.4
github
2 месяца назад

In the Linux kernel, the following vulnerability has been resolved: s390/qeth: validate user buffer length in SNMP and ARP query ioctls qeth_snmp_command() and qeth_l3_arp_query() allocate a buffer sized by a user-supplied length (udata_len) without checking a lower bound, then set udata_offset to a fixed non-zero value and pass both to a reply callback. The callback bounds-checks the copy with if ((udata_len - udata_offset) < len) Both fields are u32, so a udata_len smaller than udata_offset makes the subtraction wrap and the check pass, and the following memcpy() writes past the allocation. A udata_len of 0 also yields ZERO_SIZE_PTR from kzalloc(), which the existing NULL check does not catch. Reject buffers smaller than udata_offset before allocating, so the callback subtraction can no longer underflow.

EPSS

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

7.8 High

CVSS3