CVE-2023-52603 json
UBSAN: array-index-out-of-bounds in dtSplitRoot
published 2024-03-06 2 y ago modified 2026-08-05 3 mo ago also EUVD-2023-57227
- cvss
- 7.8
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.3%
- EPSS 0.3% chance of exploitation in 30 days, percentile 21%
- public exploits
- 0
- none known
Summary
In the Linux kernel, the following vulnerability has been resolved:
UBSAN: array-index-out-of-bounds in dtSplitRoot
Syzkaller reported the following issue:
oop0: detected capacity change from 0 to 32768
UBSAN: array-index-out-of-bounds in fs/jfs/jfs_dtree.c:1971:9 index -2 is out of range for type 'struct dtslot [128]' CPU: 0 PID: 3613 Comm: syz-executor270 Not tainted 6.0.0-syzkaller-09423-g493ffd6605b2 #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 09/22/2022 Call Trace: <TASK> __dump_stack lib/dump_stack.c:88 [inline] dump_stack_lvl+0x1b1/0x28e lib/dump_stack.c:106 ubsan_epilogue lib/ubsan.c:151 [inline] __ubsan_handle_out_of_bounds+0xdb/0x130 lib/ubsan.c:283 dtSplitRoot+0x8d8/0x1900 fs/jfs/jfs_dtree.c:1971 dtSplitUp fs/jfs/jfs_dtree.c:985 [inline] dtInsert+0x1189/0x6b80 fs/jfs/jfs_dtree.c:863 jfs_mkdir+0x757/0xb00 fs/jfs/namei.c:270 vfs_mkdir+0x3b3/0x590 fs/namei.c:4013 do_mkdirat+0x279/0x550 fs/namei.c:4038 __do_sys_mkdirat fs/namei.c:4053 [inline] __se_sys_mkdirat fs/namei.c:4051 [inline] __x64_sys_mkdirat+0x85/0x90 fs/namei.c:4051 do_syscall_x64 arch/x86/entry/common.c:50 [inline] do_syscall_64+0x3d/0xb0 arch/x86/entry/common.c:80 entry_SYSCALL_64_after_hwframe+0x63/0xcd RIP: 0033:0x7fcdc0113fd9 Code: ff ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 00 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 c0 ff ff ff f7 d8 64 89 01 48 RSP: 002b:00007ffeb8bc67d8 EFLAGS: 00000246 ORIG_RAX: 0000000000000102 RAX: ffffffffffffffda RBX: 0000000000000000 RCX: 00007fcdc0113fd9 RDX: 0000000000000000 RSI: 0000000020000340 RDI: 0000000000000003 RBP: 00007fcdc00d37a0 R08: 0000000000000000 R09: 00007fcdc00d37a0 R10: 00005555559a72c0 R11: 0000000000000246 R12: 00000000f8008000 R13: 0000000000000000 R14: 00083878000000f8 R15: 0000000000000000 </TASK>
The issue is caused when the value of fsi becomes less than -1. The check to break the loop when fsi value becomes -1 is present but syzbot was able to produce value less than -1 which cause the error. This patch simply add the change for the values less than 0.
The patch is tested via syzbot.
Patch / fix
- Linux Linux 4.19.307, 5.4.269, 5.10.210, 5.15.149, 6.1.77, 6.6.16, 6.7.4, 6.8
- linux Debian 12 6.1.82-1
- linux Debian 14, Debian 13 6.7.7-1
debian advisories DEBIAN-CVE-2023-52603
- linux Ubuntu 20.04 LTS 5.4.0-177.197
- linux Ubuntu 22.04 LTS 5.15.0-105.115
- linux-aws Ubuntu 20.04 LTS 5.4.0-1123.133
- linux-aws Ubuntu 22.04 LTS 5.15.0-1060.66
- linux-gcp Ubuntu 20.04 LTS 5.4.0-1127.136
- linux-gcp Ubuntu 22.04 LTS 5.15.0-1058.66
- linux-gke Ubuntu 22.04 LTS 5.15.0-1057.62
- linux-ibm Ubuntu 20.04 LTS 5.4.0-1070.75
ubuntu advisories UBUNTU-CVE-2023-52603
Ubuntu security data © Canonical Ltd., from https://github.com/canonical/ubuntu-security-notices via OSV; changed: normalised to fixed package versions per release. CC BY-SA 4.0
- kernel-azure SLE Module for Public Cloud 15 SP5, openSUSE Leap 15.5 5.14.21-150500.33.48.1
- kernel-syms-azure SLE Module for Public Cloud 15 SP5, openSUSE Leap 15.5 5.14.21-150500.33.48.1
- kernel-source-azure SLE Module for Public Cloud 15 SP5, openSUSE Leap 15.5 5.14.21-150500.33.48.1
- dtb-aarch64 openSUSE Leap 15.5 5.14.21-150500.55.59.1
- kernel-64kb SLE Module for Basesystem 15 SP5, openSUSE Leap 15.5 5.14.21-150500.55.59.1
- kernel-syms SLE Module for Development Tools 15 SP5, openSUSE Leap 15.5 5.14.21-150500.55.59.1
- kernel-obs-qa openSUSE Leap 15.5 5.14.21-150500.55.59.1
- kernel-source SLE Module for Development Tools 15 SP5, SLE Module for Basesystem 15 SP5, openSUSE Leap 15.5 5.14.21-150500.55.59.1
suse advisories SUSE-SU-2024:1490-1SUSE-SU-2024:1480-1SUSE-SU-2024:1466-1
- git.kernel.org/stable/c/e30b52a2ea3d1e0aaee68096957cf90a2f4ec5af commit
- git.kernel.org/stable/c/fd3486a893778770557649fe28afa5e463d4ed07 commit
- git.kernel.org/stable/c/7aa33854477d9c346f5560a1a1fcb3fe7783e2a8 commit
- git.kernel.org/stable/c/e4ce01c25ccbea02a09a5291c21749b1fc358e39 commit
- git.kernel.org/stable/c/e4cbc857d75d4e22a1f75446e7480b1f305d8d60 commit
- git.kernel.org/stable/c/edff092a59260bf0b0a2eba219cb3da6372c2f9f commit
- git.kernel.org/stable/c/6e2902ecc77e9760a9fc447f56d598383e2372d2 commit
- git.kernel.org/stable/c/27e56f59bab5ddafbcfe69ad7a4a6ea1279c1b16 commit
- lists.debian.org/debian-lts-announce/2024/06/msg00017.html patch
- lists.debian.org/debian-lts-announce/2024/06/msg00020.html patch
Vendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2023-52603 updated cvss 6.8
kernel: UBSAN: array-index-out-of-bounds in dtSplitRoot
-
Red Hat Enterprise Linux 6 perf, kernel, python-perf, kernel-kdump, kernel-firmware, kernel-bootwrapper, +1 more Red Hat Enterprise Linux 7 perf, kernel, bpftool, kernel-rt, python-perf, kernel-kdump, +8 more Red Hat Enterprise Linux 8 perf, kernel, bpftool, kernel-rt, kernel-core, kernel-tools, +29 more Red Hat Enterprise Linux 9 rv, perf, rtla, kernel, bpftool, libperf, +82 morenot affected: vulnerable code not present
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
cisa ICSA-25-226-15 updated
Siemens SINEC OS
-
Siemens RUGGEDCOM RST2428P (6GK6242-6PA00) Siemens SCALANCE XC-300/XR-300/XC-400/XR-500WG/XR-500 family Siemens SCALANCE XCM-/XRM-/XCH-/XRH-300 familynot affected
Facts from CISA's republication of the vendor's own advisory (CSAF); the linked advisory is the authoritative source. CISA notification · csaf
CISA SSVC
- Exploitation
- none
- Automatable
- no
- Technical impact
- partial
- Assessed
- 2 y ago
Exploit prediction
0.29% chance of exploitation in the next 30 days, higher than 21% of all scored CVEs (FIRST EPSS, 2026-11-08).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 7.8 | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
| NVD | 3.1 | 7.8 | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
Affected products
- Linux Linux
Classification
- Weakness
-
- CWE-129 Improper Validation of Array Index
- Technology feeds
References
-
git.kernel.org
/stable/c/e30b52a2ea3d1e0aaee68096957cf90a2f4ec5af
patch
-
git.kernel.org
/stable/c/fd3486a893778770557649fe28afa5e463d4ed07
patch
-
git.kernel.org
/stable/c/7aa33854477d9c346f5560a1a1fcb3fe7783e2a8
patch
-
git.kernel.org
/stable/c/e4ce01c25ccbea02a09a5291c21749b1fc358e39
patch
-
git.kernel.org
/stable/c/e4cbc857d75d4e22a1f75446e7480b1f305d8d60
patch
-
git.kernel.org
/stable/c/edff092a59260bf0b0a2eba219cb3da6372c2f9f
patch
-
git.kernel.org
/stable/c/6e2902ecc77e9760a9fc447f56d598383e2372d2
patch
-
git.kernel.org
/stable/c/27e56f59bab5ddafbcfe69ad7a4a6ea1279c1b16
patch
-
lists.debian.org
/debian-lts-announce/2024/06/msg00017.html
patch
-
lists.debian.org
/debian-lts-announce/2024/06/msg00020.html
patch
Sources
- CVE List CVE-2023-52603
- NVD CVE-2023-52603
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.