CyberSecBulletin
CVE-2023-53272NVD status: Modified

Linux: Out-of-bounds Read

CVE-2023-53272 is a high-severity out-of-bounds read vulnerability in Linux, with a CVSS 3.1 base score of 7.1 out of 10. It can be exploited with local access to the system by an attacker with a low-privileged account, without any action from a user. The record lists versions 1e760b2d18bf129b3da052c2946c02758e97d15e, 3e36cc94d6e60a27f27498adf1c71eeba769ab33, 90947ebf8794e3c229fb2e16e37f1bfea6877f14 as the first without the flaw, so updating Linux to one of those releases or later removes the exposure. There is no confirmed exploitation so far. EPSS estimates a 0.16% chance of exploitation within 30 days, which is low compared with other CVEs.

Next patch cycle

High severity with no evidence of exploitation so far.

What to do

  1. Update Linux to 1e760b2d18bf129b3da052c2946c02758e97d15e or 3e36cc94d6e60a27f27498adf1c71eeba769ab33 or 90947ebf8794e3c229fb2e16e37f1bfea6877f14 or 0939c264729d4a081ff88efce2ffdf85dc5331e0, whichever matches your release line, or a later version.
  2. Update Linux Kernel to 5.10.188 or 5.15.121 or 6.1.40 or 6.4.5, whichever matches your release line, or a later version.

Affected products and versions

VendorProductAffected versionsFixed in
LinuxLinux4bb7f4cf60e38a00965d22aa5979ab143193d41f up to, but not including, 1e760b2d18bf129b3da052c2946c02758e97d15e; 4bb7f4cf60e38a00965d22aa5979ab143193d41f up to, but not including, 3e36cc94d6e60a27f27498adf1c71eeba769ab33; 4bb7f4cf60e38a00965d22aa5979ab143193d41f up to, but not including, 90947ebf8794e3c229fb2e16e37f1bfea6877f14; 4bb7f4cf60e38a00965d22aa5979ab143193d41f up to, but not including, 0939c264729d4a081ff88efce2ffdf85dc5331e0; 4bb7f4cf60e38a00965d22aa5979ab143193d41f up to, but not including, 1e9cb763e9bacf0c932aa948f50dcfca6f519a26; 5.81e760b2d18bf129b3da052c2946c02758e97d15e, 3e36cc94d6e60a27f27498adf1c71eeba769ab33, 90947ebf8794e3c229fb2e16e37f1bfea6877f14, 0939c264729d4a081ff88efce2ffdf85dc5331e0, 1e9cb763e9bacf0c932aa948f50dcfca6f519a26
LinuxLinux Kernel5.8 up to, but not including, 5.10.188; 5.11 up to, but not including, 5.15.121; 5.16 up to, but not including, 6.1.40; 6.2 up to, but not including, 6.4.5; 6.55.10.188, 5.15.121, 6.1.40, 6.4.5

Version data comes from the organisation that assigned the CVE. Confirm against the vendor advisory before deciding you are unaffected.

How the severity score breaks down

Attack vector
LocalThe attacker needs local access or must trick a user into running something.
Attack complexity
LowNo special conditions are needed; the attack works reliably.
Privileges required
LowA basic user account is enough.
User interaction
NoneNo action by a victim is required.
Scope
UnchangedImpact stays within the vulnerable component.
Confidentiality
HighAll data handled by the component can be read.
Integrity
NoneNothing can be modified.
Availability
HighThe component can be taken down completely.

Vector: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:H. Scored by NVD.

Scoring systemScoreSeverityScored by
CVSS 3.17.1HighNVD
CVSS 3.17.1HighCISA (ADP)

Official description

In the Linux kernel, the following vulnerability has been resolved: net: ena: fix shift-out-of-bounds in exponential backoff The ENA adapters on our instances occasionally reset. Once recently logged a UBSAN failure to console in the process: UBSAN: shift-out-of-bounds in build/linux/drivers/net/ethernet/amazon/ena/ena_com.c:540:13 shift exponent 32 is too large for 32-bit type 'unsigned int' CPU: 28 PID: 70012 Comm: kworker/u72:2 Kdump: loaded not tainted 5.15.117 Hardware name: Amazon EC2 c5d.9xlarge/, BIOS 1.0 10/16/2017 Workqueue: ena ena_fw_reset_device [ena] Call Trace: <TASK> dump_stack_lvl+0x4a/0x63 dump_stack+0x10/0x16 ubsan_epilogue+0x9/0x36 __ubsan_handle_shift_out_of_bounds.cold+0x61/0x10e ? __const_udelay+0x43/0x50 ena_delay_exponential_backoff_us.cold+0x16/0x1e [ena] wait_for_reset_state+0x54/0xa0 [ena] ena_com_dev_reset+0xc8/0x110 [ena] ena_down+0x3fe/0x480 [ena] ena_destroy_device+0xeb/0xf0 [ena] ena_fw_reset_device+0x30/0x50 [ena] process_one_work+0x22b/0x3d0 worker_thread+0x4d/0x3f0 ? process_one_work+0x3d0/0x3d0 kthread+0x12a/0x150 ? set_kthread_struct+0x50/0x50 ret_from_fork+0x22/0x30 </TASK> Apparently, the reset delays are getting so large they can trigger a UBSAN panic. Looking at the code, the current timeout is capped at 5000us. Using a base value of 100us, the current code will overflow after (1<<29). Even at values before 32, this function wraps around, perhaps unintentionally. Cap the value of the exponent used for this backoff at (1<<16) which is larger than currently necessary, but large enough to support bigger values in the future.

Source: the CVE record as published by its numbering authority, via NVD and CVE.org.

The underlying weakness: Out-of-bounds Read

The product reads data past the end, or before the beginning, of the intended buffer.

How developers prevent this class of flaw

  • Use a language that provides appropriate memory abstractions.

More Out-of-bounds Read vulnerabilities (CWE-125)

Timeline

  1. CVE record published.
  2. CISA published its SSVC assessment (exploitation: none, automatable: no, technical impact: partial).
  3. Record last changed materially (score, affected products, status or references).

References

Recent Out-of-bounds Read vulnerabilities

Spotted an error? Tell us.