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

exploitDog

redhat логотип

CVE-2026-98318

Опубликовано: 06 окт. 2026
Источник: redhat
CVSS3: 7

Описание

In the Linux kernel, the following vulnerability has been resolved: smb: client: validate absolute native symlink targets before NT fixups With symlinkroot unset, an absolute target is copied without conversion to an NT drive path. Later code still assumes an NT prefix is present when modifying the target and calculating the print name length. For "/ab", this causes two failures: sym[5] and path[5] are written past their allocations, and plen -= 2 * poff subtracts an assumed 8-byte prefix from a 6-byte UTF-16 target, wrapping u16 plen to 65534. That underflow causes another overflow: memcpy() copies 65534 bytes into a 24-byte buffer. A user with write access to a mounted share can trigger these bugs with default settings. Validate the NT drive prefix, including an ASCII drive letter, before accessing fixed offsets or subtracting the prefix length.

A flaw was found in the Linux kernel's SMB (Server Message Block) client. When handling absolute symbolic links on mounted shares, the client fails to validate the link target format before applying Windows NT path adjustments. A user with write access to a mounted share can exploit this vulnerability by creating a specially crafted symbolic link, triggering out-of-bounds memory writes and a buffer overflow. This flaw can result in a Denial of Service (DoS) by crashing the system or potentially allow arbitrary code execution.

Отчет

Red Hat rates this Linux kernel flaw as Important. A flaw was found in the Linux kernel's SMB client: when the symlinkroot mount option is unset, an absolute symbolic link target created on a mounted SMB share is copied without conversion to an NT drive path, while later code still assumes an NT prefix is present when modifying the target and calculating its print name length. This results in out-of-bounds writes past the allocated buffers and an integer underflow that causes a large buffer overflow (a 65534-byte memcpy into a 24-byte buffer). A local user with write access to a mounted SMB share can trigger this flaw using default settings, resulting in a kernel crash (denial of service) or potentially arbitrary code execution. Red Hat Enterprise Linux 9 and 10 streams and Red Hat In-Vehicle OS 2 are affected, and a fix is being pursued for those products. Earlier Red Hat Enterprise Linux 6, 7, and 8 releases, the RHEL 9.2/9.4/9.6 and RHEL 10.0 maintenance streams, and the OpenShift Container Platform RHEL CoreOS 8 and 9 images are not affected because the vulnerable code is not present in them. Red Hat's CVSS score of 7.0 (AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H) differs from the upstream CVEORG score of 7.8 mainly in the assessed attack complexity.

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

Mitigation for this issue is either not available or the currently available options do not 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 9kernelAffected
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-9Affected

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

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

Статус:

Important
Дефект:
CWE-787
https://bugzilla.redhat.com/show_bug.cgi?id=2546374kernel: smb: client: validate absolute native symlink targets before NT fixups

7 High

CVSS3

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

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

In the Linux kernel, the following vulnerability has been resolved: smb: client: validate absolute native symlink targets before NT fixups With symlinkroot unset, an absolute target is copied without conversion to an NT drive path. Later code still assumes an NT prefix is present when modifying the target and calculating the print name length. For "/ab", this causes two failures: sym[5] and path[5] are written past their allocations, and plen -= 2 * poff subtracts an assumed 8-byte prefix from a 6-byte UTF-16 target, wrapping u16 plen to 65534. That underflow causes another overflow: memcpy() copies 65534 bytes into a 24-byte buffer. A user with write access to a mounted share can trigger these bugs with default settings. Validate the NT drive prefix, including an ASCII drive letter, before accessing fixed offsets or subtracting the prefix length.

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

In the Linux kernel, the following vulnerability has been resolved: smb: client: validate absolute native symlink targets before NT fixups With symlinkroot unset, an absolute target is copied without conversion to an NT drive path. Later code still assumes an NT prefix is present when modifying the target and calculating the print name length. For "/ab", this causes two failures: sym[5] and path[5] are written past their allocations, and plen -= 2 * poff subtracts an assumed 8-byte prefix from a 6-byte UTF-16 target, wrapping u16 plen to 65534. That underflow causes another overflow: memcpy() copies 65534 bytes into a 24-byte buffer. A user with write access to a mounted share can trigger these bugs with default settings. Validate the NT drive prefix, including an ASCII drive letter, before accessing fixed offsets or subtracting the prefix length.

msrc
23 дня назад

smb: client: validate absolute native symlink targets before NT fixups

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

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

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

In the Linux kernel, the following vulnerability has been resolved: smb: client: validate absolute native symlink targets before NT fixups With symlinkroot unset, an absolute target is copied without conversion to an NT drive path. Later code still assumes an NT prefix is present when modifying the target and calculating the print name length. For "/ab", this causes two failures: sym[5] and path[5] are written past their allocations, and plen -= 2 * poff subtracts an assumed 8-byte prefix from a 6-byte UTF-16 target, wrapping u16 plen to 65534. That underflow causes another overflow: memcpy() copies 65534 bytes into a 24-byte buffer. A user with write access to a mounted share can trigger these bugs with default settings. Validate the NT drive prefix, including an ASCII drive letter, before accessing fixed offsets or subtracting the prefix length.

7 High

CVSS3