CyberSecBulletin
CVE-2024-39487NVD status: Modified

Linux: Out-of-bounds Read

CVE-2024-39487 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 6a8a4fd082c439e19fede027e80c79bc4c84bb8e, 6b21346b399fd1336fe59233a17eb5ce73041ee1, 707c85ba3527ad6aa25552033576b0f1ff835d7b 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.25% 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 6a8a4fd082c439e19fede027e80c79bc4c84bb8e or 6b21346b399fd1336fe59233a17eb5ce73041ee1 or 707c85ba3527ad6aa25552033576b0f1ff835d7b or bfd14e5915c2669f292a31d028e75dcd82f1e7e9, whichever matches your release line, or a later version.
  2. Update RUGGEDCOM RST2428P to V3.1 or a later version.
  3. Update SCALANCE XCM-/XRM-/XCH-/XRH-300 family to V3.1 or a later version.

Affected products and versions

VendorProductAffected versionsFixed in
LinuxLinuxf9de11a165943a55e0fbda714caf60eaeb276a42 up to, but not including, 6a8a4fd082c439e19fede027e80c79bc4c84bb8e; f9de11a165943a55e0fbda714caf60eaeb276a42 up to, but not including, 6b21346b399fd1336fe59233a17eb5ce73041ee1; f9de11a165943a55e0fbda714caf60eaeb276a42 up to, but not including, 707c85ba3527ad6aa25552033576b0f1ff835d7b; f9de11a165943a55e0fbda714caf60eaeb276a42 up to, but not including, bfd14e5915c2669f292a31d028e75dcd82f1e7e9; f9de11a165943a55e0fbda714caf60eaeb276a42 up to, but not including, c8eb8ab9a44ff0e73492d0a12a643c449f641a9f; f9de11a165943a55e0fbda714caf60eaeb276a42 up to, but not including, b75e33eae8667084bd4a63e67657c6a5a0f8d1e8; f9de11a165943a55e0fbda714caf60eaeb276a42 up to, but not including, 9f835e48bd4c75fdf6a9cff3f0b806a7abde78da; f9de11a165943a55e0fbda714caf60eaeb276a42 up to, but not including, e271ff53807e8f2c628758290f0e499dbe51cb3d; and 1 more ranges6a8a4fd082c439e19fede027e80c79bc4c84bb8e, 6b21346b399fd1336fe59233a17eb5ce73041ee1, 707c85ba3527ad6aa25552033576b0f1ff835d7b, bfd14e5915c2669f292a31d028e75dcd82f1e7e9, c8eb8ab9a44ff0e73492d0a12a643c449f641a9f, b75e33eae8667084bd4a63e67657c6a5a0f8d1e8
SiemensRUGGEDCOM RST2428Pbefore V3.1V3.1
SiemensSCALANCE XC-300/XR-300/XC-400/XR-500WG/XR-500 familyNot specified in the recordNot stated
SiemensSCALANCE XCM-/XRM-/XCH-/XRH-300 familybefore V3.1V3.1
SiemensSIMATIC S7-1500 CPU 1518-4 PN/DP MFPV3.1.0 up to, but not including, V3.1.5V3.1.5
SiemensSIMATIC S7-1500 CPU 1518F-4 PN/DP MFPV3.1.0 up to, but not including, V3.1.5V3.1.5
SiemensSIPLUS S7-1500 CPU 1518-4 PN/DP MFPV3.1.0 up to, but not including, V3.1.5V3.1.5
LinuxLinux Kernel3.13 up to, but not including, 4.19.318; 4.20 up to, but not including, 5.4.280; 5.5 up to, but not including, 5.10.222; 5.11 up to, but not including, 5.15.163; 5.16 up to, but not including, 6.1.98; 6.2 up to, but not including, 6.6.39; 6.7 up to, but not including, 6.9.9; 6.104.19.318, 5.4.280, 5.10.222, 5.15.163, 6.1.98, 6.6.39

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.1HighCNA
CVSS 3.17.1HighNVD

Official description

In the Linux kernel, the following vulnerability has been resolved: bonding: Fix out-of-bounds read in bond_option_arp_ip_targets_set() In function bond_option_arp_ip_targets_set(), if newval->string is an empty string, newval->string+1 will point to the byte after the string, causing an out-of-bound read. BUG: KASAN: slab-out-of-bounds in strlen+0x7d/0xa0 lib/string.c:418 Read of size 1 at addr ffff8881119c4781 by task syz-executor665/8107 CPU: 1 PID: 8107 Comm: syz-executor665 Not tainted 6.7.0-rc7 #1 Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.15.0-1 04/01/2014 Call Trace: <TASK> __dump_stack lib/dump_stack.c:88 [inline] dump_stack_lvl+0xd9/0x150 lib/dump_stack.c:106 print_address_description mm/kasan/report.c:364 [inline] print_report+0xc1/0x5e0 mm/kasan/report.c:475 kasan_report+0xbe/0xf0 mm/kasan/report.c:588 strlen+0x7d/0xa0 lib/string.c:418 __fortify_strlen include/linux/fortify-string.h:210 [inline] in4_pton+0xa3/0x3f0 net/core/utils.c:130 bond_option_arp_ip_targets_set+0xc2/0x910 drivers/net/bonding/bond_options.c:1201 __bond_opt_set+0x2a4/0x1030 drivers/net/bonding/bond_options.c:767 __bond_opt_set_notify+0x48/0x150 drivers/net/bonding/bond_options.c:792 bond_opt_tryset_rtnl+0xda/0x160 drivers/net/bonding/bond_options.c:817 bonding_sysfs_store_option+0xa1/0x120 drivers/net/bonding/bond_sysfs.c:156 dev_attr_store+0x54/0x80 drivers/base/core.c:2366 sysfs_kf_write+0x114/0x170 fs/sysfs/file.c:136 kernfs_fop_write_iter+0x337/0x500 fs/kernfs/file.c:334 call_write_iter include/linux/fs.h:2020 [inline] new_sync_write fs/read_write.c:491 [inline] vfs_write+0x96a/0xd80 fs/read_write.c:584 ksys_write+0x122/0x250 fs/read_write.c:637 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0x40/0x110 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x63/0x6b ---[ end trace ]--- Fix it by adding a check of string length before using it.

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.