CVE-2026-68277

Summary

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

drm/dp/mst: fix OOB reads on 2-byte fields in sideband reply parsers

Three sideband reply parsers read 16-bit fields as:

val = (raw->msg[idx] << 8) | (raw->msg[idx+1]);

and check bounds only after the fact. When idx == raw->curlen, raw->msg[idx+1] reads one byte past the received message data into the following struct fields (curchunk_len, curchunk_idx, curlen).

Affected functions:

  • drm_dp_sideband_parse_enum_path_resources_ack() full_payload_bw_number and avail_payload_bw_number fields
  • drm_dp_sideband_parse_allocate_payload_ack() allocated_pbn field
  • drm_dp_sideband_parse_query_payload_ack() allocated_pbn field

Fix by using a single combined check (idx + 2 > curlen) before each 2-byte read. Since the check is strictly tighter than idx > curlen, no separate step is needed.

[added fixes tag]

Affected Software

VendorProductVersion RangeStatus
LinuxLinuxad7f8a1f9ced7f049f9b66d588723f243a7034cd < c1f72a13d54ffd16647d3fa540d961f5deba8790affected
LinuxLinuxad7f8a1f9ced7f049f9b66d588723f243a7034cd < 192e146c2d57ad033b0d418ec64ee390f8dc074eaffected
LinuxLinuxad7f8a1f9ced7f049f9b66d588723f243a7034cd < 6e3107e6522109a07fc9bb0fc4ec463f1982e113affected
LinuxLinuxad7f8a1f9ced7f049f9b66d588723f243a7034cd < bdf0508b1e6785d4a8982c637e97e68d60b47d7baffected
LinuxLinuxad7f8a1f9ced7f049f9b66d588723f243a7034cd < 0bcd7675c69a2462a8531fcd9e4d096e9c7ec5dfaffected
LinuxLinuxad7f8a1f9ced7f049f9b66d588723f243a7034cd < d5c70523cafa26ad2c7a37b612849abe2683baa8affected
LinuxLinuxad7f8a1f9ced7f049f9b66d588723f243a7034cd < 68a624416d1dd481b3e5b7ea0e8a070a9b8a2c73affected
LinuxLinuxad7f8a1f9ced7f049f9b66d588723f243a7034cd < 6b89ba3dba2f583626fb693e47e951ffb8bf591faffected
LinuxLinux3.17affected
LinuxLinux0 < 3.17unaffected
LinuxLinux5.10.266 <= 5.10.*unaffected
LinuxLinux5.15.217 <= 5.15.*unaffected
LinuxLinux6.1.183 <= 6.1.*unaffected
LinuxLinux6.6.148 <= 6.6.*unaffected
LinuxLinux6.12.101 <= 6.12.*unaffected
LinuxLinux6.18.42 <= 6.18.*unaffected
LinuxLinux7.1.6 <= 7.1.*unaffected
LinuxLinux7.2 <= *unaffected

Weaknesses

References