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

exploitDog

redhat логотип

CVE-2026-89633

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

Описание

In the Linux kernel, the following vulnerability has been resolved: smb: client: fix OOB read/write from unvalidated DataOffset in coalesce_t2() coalesce_t2() computes data pointers directly from server-supplied DataOffset fields with no validation against buffer bounds: data_area_of_tgt = (char *)&pSMBt->hdr.Protocol + get_unaligned_le16(&pSMBt->t2_rsp.DataOffset); data_area_of_src = (char *)&pSMBs->hdr.Protocol + get_unaligned_le16(&pSMBs->t2_rsp.DataOffset); data_area_of_tgt += total_in_tgt; ... memcpy(data_area_of_tgt, data_area_of_src, total_in_src); A small DataOffset can push a pointer below the actual byte area, overwriting header fields; a large one can push it past the buffer end, causing out-of-bounds heap reads (source) or writes (target). The BCC overflow guard does not prevent this: BCC reflects how much data is present, while DataOffset controls where in the buffer it starts. The "validate target area" comment present since the function was first written in 2005 was a placeholder that was never implemented. Add lower- and upper-bound checks for both data pointers before the memcpy, and before any target header fields are modified.

A flaw was found in the Linux kernel's Server Message Block (SMB) client. The coalesce_t2() function processes server-supplied DataOffset fields without proper validation against buffer boundaries. A remote attacker could exploit this by crafting malicious SMB responses. This could lead to out-of-bounds read and write operations, potentially resulting in information disclosure or arbitrary code execution.

Отчет

This vulnerability is rated as Important because an attacker controlling an SMB server can trigger kernel heap corruption on a client system, though exploitation requires an active connection to an untrusted or compromised file share. Under default configurations in Red Hat Enterprise Linux, the kernel CIFS client negotiates modern SMB dialects rather than the legacy SMBv1 protocol where this transaction reassembly logic resides. Consequently, systems are only exposed when administrators explicitly configure mounts using deprecated SMBv1 or establish connections to untrusted endpoints.

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

Prevent the cifs kernel module from loading if mounting SMB network file shares is not required.

  1. Create a configuration file to blacklist the module:
echo "install cifs /bin/true" >> /etc/modprobe.d/disable-cifs.conf echo "blacklist cifs" >> /etc/modprobe.d/disable-cifs.conf
  1. If the module is currently loaded into memory, unload it:
modprobe -r cifs

Caveats: Disabling this module prevents the system from mounting remote CIFS and SMB file systems. If active SMB shares are in use, all shares must be unmounted before unloading the module, or a system restart is required to apply the changes.

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

ПлатформаПакетСостояниеРекомендацияРелиз
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 10kernelFixedRHSA-2026:8532119.10.2026
Red Hat Enterprise Linux 9kernelFixedRHSA-2026:8603320.10.2026
Red Hat Enterprise Linux 9kernelFixedRHSA-2026:8603320.10.2026
Shadow Migration Toolkit for Virtualization for RHEL 10kernelFixedRHSA-2026:8532119.10.2026

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

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

Статус:

Important
Дефект:
CWE-125
https://bugzilla.redhat.com/show_bug.cgi?id=2532230kernel: smb: client: fix OOB read/write from unvalidated DataOffset in coalesce_t2()

EPSS

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

8 High

CVSS3

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

CVSS3: 9.8
ubuntu
около 2 месяцев назад

In the Linux kernel, the following vulnerability has been resolved: smb: client: fix OOB read/write from unvalidated DataOffset in coalesce_t2() coalesce_t2() computes data pointers directly from server-supplied DataOffset fields with no validation against buffer bounds: data_area_of_tgt = (char *)&pSMBt->hdr.Protocol + get_unaligned_le16(&pSMBt->t2_rsp.DataOffset); data_area_of_src = (char *)&pSMBs->hdr.Protocol + get_unaligned_le16(&pSMBs->t2_rsp.DataOffset); data_area_of_tgt += total_in_tgt; ... memcpy(data_area_of_tgt, data_area_of_src, total_in_src); A small DataOffset can push a pointer below the actual byte area, overwriting header fields; a large one can push it past the buffer end, causing out-of-bounds heap reads (source) or writes (target). The BCC overflow guard does not prevent this: BCC reflects how much data is present, while DataOffset controls where in the buffer it starts. The "validate target area" comment present since the function was first written in 2005 was a...

CVSS3: 9.8
nvd
около 2 месяцев назад

In the Linux kernel, the following vulnerability has been resolved: smb: client: fix OOB read/write from unvalidated DataOffset in coalesce_t2() coalesce_t2() computes data pointers directly from server-supplied DataOffset fields with no validation against buffer bounds: data_area_of_tgt = (char *)&pSMBt->hdr.Protocol + get_unaligned_le16(&pSMBt->t2_rsp.DataOffset); data_area_of_src = (char *)&pSMBs->hdr.Protocol + get_unaligned_le16(&pSMBs->t2_rsp.DataOffset); data_area_of_tgt += total_in_tgt; ... memcpy(data_area_of_tgt, data_area_of_src, total_in_src); A small DataOffset can push a pointer below the actual byte area, overwriting header fields; a large one can push it past the buffer end, causing out-of-bounds heap reads (source) or writes (target). The BCC overflow guard does not prevent this: BCC reflects how much data is present, while DataOffset controls where in the buffer it starts. The "validate target area" comment pres

CVSS3: 9.8
debian
около 2 месяцев назад

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

CVSS3: 9.8
github
около 2 месяцев назад

In the Linux kernel, the following vulnerability has been resolved: smb: client: fix OOB read/write from unvalidated DataOffset in coalesce_t2() coalesce_t2() computes data pointers directly from server-supplied DataOffset fields with no validation against buffer bounds: data_area_of_tgt = (char *)&pSMBt->hdr.Protocol + get_unaligned_le16(&pSMBt->t2_rsp.DataOffset); data_area_of_src = (char *)&pSMBs->hdr.Protocol + get_unaligned_le16(&pSMBs->t2_rsp.DataOffset); data_area_of_tgt += total_in_tgt; ... memcpy(data_area_of_tgt, data_area_of_src, total_in_src); A small DataOffset can push a pointer below the actual byte area, overwriting header fields; a large one can push it past the buffer end, causing out-of-bounds heap reads (source) or writes (target). The BCC overflow guard does not prevent this: BCC reflects how much data is present, while DataOffset controls where in the buffer it starts. The "validate target area" comment p...

oracle-oval
20 дней назад

ELSA-2026-86033: kernel security, bug fix, and enhancement update (IMPORTANT)

EPSS

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

8 High

CVSS3