CVE-2026-53043

Summary

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

ocfs2/dlm: validate qr_numregions in dlm_match_regions()

Patch series "ocfs2/dlm: fix two bugs in dlm_match_regions()".

In dlm_match_regions(), the qr_numregions field from a DLM_QUERY_REGION network message is used to drive loops over the qr_regions buffer without sufficient validation. This series fixes two issues:

  • Patch 1 adds a bounds check to reject messages where qr_numregions exceeds O2NM_MAX_REGIONS. The o2net layer only validates message byte length; it does not constrain field values, so a crafted message can set qr_numregions up to 255 and trigger out-of-bounds reads past the 1024-byte qr_regions buffer.

  • Patch 2 fixes an off-by-one in the local-vs-remote comparison loop, which uses '<=' instead of '<', reading one entry past the valid range even when qr_numregions is within bounds.

This patch (of 2):

The qr_numregions field from a DLM_QUERY_REGION network message is used directly as loop bounds in dlm_match_regions() without checking against O2NM_MAX_REGIONS. Since qr_regions is sized for at most O2NM_MAX_REGIONS (32) entries, a crafted message with qr_numregions > 32 causes out-of-bounds reads past the qr_regions buffer.

Add a bounds check for qr_numregions before entering the loops.

Affected Software

VendorProductVersion RangeStatus
LinuxLinuxea2034416b54700e30371f2ad6517cbb94674083 < d3d5efade0c79dac1cac98c0cb1115432f804439affected
LinuxLinuxea2034416b54700e30371f2ad6517cbb94674083 < f69551139caf6d24242a0ad049ee46b264e3aee0affected
LinuxLinuxea2034416b54700e30371f2ad6517cbb94674083 < 1f8b91275912cd428289c1fb424bebd7ff5302bdaffected
LinuxLinuxea2034416b54700e30371f2ad6517cbb94674083 < f37de46149db49abd2b24f4f0c5a88cf4dfb5f47affected
LinuxLinuxea2034416b54700e30371f2ad6517cbb94674083 < 6c6e8fc3c007319981647b410c29bb5775048551affected
LinuxLinuxea2034416b54700e30371f2ad6517cbb94674083 < 3f474c33ebc2e2ca3fcb587d7de4375348f13373affected
LinuxLinuxea2034416b54700e30371f2ad6517cbb94674083 < 3c2d0de23ae4be22b6c18e8f0915be74d3b5fb21affected
LinuxLinuxea2034416b54700e30371f2ad6517cbb94674083 < 7ab3fbb01bc6d79091bc375e5235d360cd9b78beaffected
LinuxLinux2.6.37affected
LinuxLinux0 < 2.6.37unaffected
LinuxLinux5.10.258 <= 5.10.*unaffected
LinuxLinux5.15.209 <= 5.15.*unaffected
LinuxLinux6.1.175 <= 6.1.*unaffected
LinuxLinux6.6.141 <= 6.6.*unaffected
LinuxLinux6.12.91 <= 6.12.*unaffected
LinuxLinux6.18.33 <= 6.18.*unaffected
LinuxLinux7.0.10 <= 7.0.*unaffected
LinuxLinux7.1 <= *unaffected

Weaknesses

References