CVE-2024-38661: s390/ap: Fix crash in AP internal function modify_bitmap()
In the Linux kernel, the following vulnerability has been resolved:
s390/ap: Fix crash in AP internal function modify_bitmap()
A system crash like this
Failing address: 200000cb7df6f000 TEID: 200000cb7df6f403
Fault in home space mode while using kernel ASCE.
AS:00000002d71bc007 R3:00000003fe5b8007 S:000000011a446000 P:000000015660c13d
Oops: 0038 ilc:3 [#1] PREEMPT SMP
Modules linked in: mlx5_ib ...
CPU: 8 PID: 7556 Comm: bash Not tainted 6.9.0-rc7 #8
Hardware name: IBM 3931 A01 704 (LPAR)
Krnl PSW : 0704e00180000000 0000014b75e7b606 (ap_parse_bitmap_str+0x10e/0x1f8)
R:0 T:1 IO:1 EX:1 Key:0 M:1 W:0 P:0 AS:3 CC:2 PM:0 RI:0 EA:3
Krnl GPRS: 0000000000000001 ffffffffffffffc0 0000000000000001 00000048f96b75d3
000000cb00000100 ffffffffffffffff ffffffffffffffff 000000cb7df6fce0
000000cb7df6fce0 00000000ffffffff 000000000000002b 00000048ffffffff
000003ff9b2dbc80 200000cb7df6fcd8 0000014bffffffc0 000000cb7df6fbc8
Krnl Code: 0000014b75e7b5fc: a7840047 brc 8,0000014b75e7b68a
0000014b75e7b600: 18b2 lr %r11,%r2
#0000014b75e7b602: a7f4000a brc 15,0000014b75e7b616
>0000014b75e7b606: eb22d00000e6 laog %r2,%r2,0(%r13)
0000014b75e7b60c: a7680001 lhi %r6,1
0000014b75e7b610: 187b lr %r7,%r11
0000014b75e7b612: 84960021 brxh %r9,%r6,0000014b75e7b654
0000014b75e7b616: 18e9 lr %r14,%r9
Call Trace:
[<0000014b75e7b606>] ap_parse_bitmap_str+0x10e/0x1f8
([<0000014b75e7b5dc>] ap_parse_bitmap_str+0xe4/0x1f8)
[<0000014b75e7b758>] apmask_store+0x68/0x140
[<0000014b75679196>] kernfs_fop_write_iter+0x14e/0x1e8
[<0000014b75598524>] vfs_write+0x1b4/0x448
[<0000014b7559894c>] ksys_write+0x74/0x100
[<0000014b7618a440>] __do_syscall+0x268/0x328
[<0000014b761a3558>] system_call+0x70/0x98
INFO: lockdep is turned off.
Last Breaking-Event-Address:
[<0000014b75e7b636>] ap_parse_bitmap_str+0x13e/0x1f8
Kernel panic - not syncing: Fatal exception: panic_on_oops
occured when /sys/bus/ap/a[pq]mask was updated with a relative mask value
(like +0x10-0x12,+60,-90) with one of the numeric values exceeding INT_MAX.
The fix is simple: use unsigned long values for the internal variables. The
correct checks are already in place in the function but a simple int for
the internal variables was used with the possibility to overflow.
Security readout for executives and security teams
Plain-English summary
CVE-2024-38661 is a Linux kernel issue on IBM s390 systems using the AP bus. Updating AP mask sysfs values with overly large numeric input can crash the kernel, causing service disruption. The public record describes a resolved kernel bug, not a remote compromise path.
Executive priority
Prioritize remediation for production IBM s390 systems that use cryptographic AP devices or have automation changing AP masks. For general Linux fleets, urgency is lower unless s390/AP exposure exists. No active exploitation is cited in the supplied evidence.
Technical view
The bug is in s390/ap bitmap parsing for /sys/bus/ap/a[pq]mask. Relative mask values containing a number above INT_MAX could overflow internal int variables in modify_bitmap-related parsing, leading to an oops and possible panic. The fix changes internal variables to unsigned long while keeping existing checks.
Likely exposure
Exposure appears limited to Linux on IBM s390 systems using the AP subsystem where users or automation can write AP queue or adapter mask sysfs entries. Fleets without s390/AP usage are unlikely to be affected based on the provided sources.
Exploitation context
The source bundle does not show KEV listing, active exploitation, public exploit tooling, or remote attack evidence. The described trigger is a local or administrative sysfs update with malformed relative mask input, resulting in kernel crash behavior.
Researcher notes
Evidence is strongest for root cause and fix direction from the Linux kernel record. Severity scoring, privilege requirements, and exact affected downstream package ranges are incomplete in the source bundle, so validation should rely on vendor advisories and deployed kernel patches.
Mitigation direction
Update affected Linux kernels to vendor or stable releases containing the referenced fix.
Review distribution advisories for backported fixes matching your deployed kernel branch.
Restrict AP mask sysfs write access to trusted administrators and automation only.
Avoid unvalidated relative AP mask updates in operational scripts.
Monitor s390 hosts for kernel oops or panic events involving ap_parse_bitmap_str.
Validation and detection
Inventory Linux hosts running on IBM s390 or LPAR platforms.
Check whether the AP bus and /sys/bus/ap/a[pq]mask controls are present.
Compare deployed kernel versions against distribution advisories and referenced stable commits.
Review configuration management for AP mask writes using relative mask values.
Confirm patch status through vendor package metadata, not upstream version strings alone.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cve · low confidence lookup
CVE-2024-38661 mapping review
Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.