CVE-2023-54274: RDMA/srpt: Add a check for valid 'mad_agent' pointer
In the Linux kernel, the following vulnerability has been resolved:
RDMA/srpt: Add a check for valid 'mad_agent' pointer
When unregistering MAD agent, srpt module has a non-null check
for 'mad_agent' pointer before invoking ib_unregister_mad_agent().
This check can pass if 'mad_agent' variable holds an error value.
The 'mad_agent' can have an error value for a short window when
srpt_add_one() and srpt_remove_one() is executed simultaneously.
In srpt module, added a valid pointer check for 'sport->mad_agent'
before unregistering MAD agent.
This issue can hit when RoCE driver unregisters ib_device
Stack Trace:
------------
BUG: kernel NULL pointer dereference, address: 000000000000004d
PGD 145003067 P4D 145003067 PUD 2324fe067 PMD 0
Oops: 0002 [#1] PREEMPT SMP NOPTI
CPU: 10 PID: 4459 Comm: kworker/u80:0 Kdump: loaded Tainted: P
Hardware name: Dell Inc. PowerEdge R640/06NR82, BIOS 2.5.4 01/13/2020
Workqueue: bnxt_re bnxt_re_task [bnxt_re]
RIP: 0010:_raw_spin_lock_irqsave+0x19/0x40
Call Trace:
ib_unregister_mad_agent+0x46/0x2f0 [ib_core]
IPv6: ADDRCONF(NETDEV_CHANGE): bond0: link becomes ready
? __schedule+0x20b/0x560
srpt_unregister_mad_agent+0x93/0xd0 [ib_srpt]
srpt_remove_one+0x20/0x150 [ib_srpt]
remove_client_context+0x88/0xd0 [ib_core]
bond0: (slave p2p1): link status definitely up, 100000 Mbps full duplex
disable_device+0x8a/0x160 [ib_core]
bond0: active interface up!
? kernfs_name_hash+0x12/0x80
(NULL device *): Bonding Info Received: rdev: 000000006c0b8247
__ib_unregister_device+0x42/0xb0 [ib_core]
(NULL device *): Master: mode: 4 num_slaves:2
ib_unregister_device+0x22/0x30 [ib_core]
(NULL device *): Slave: id: 105069936 name:p2p1 link:0 state:0
bnxt_re_stopqps_and_ib_uninit+0x83/0x90 [bnxt_re]
bnxt_re_alloc_lag+0x12e/0x4e0 [bnxt_re]
Security readout for executives and security teams
Plain-English summary
This is a Linux kernel stability flaw in the RDMA srpt module. During a narrow add/remove race, the module can treat an error value as a valid MAD agent pointer and crash the kernel. Business impact appears mainly availability-related for systems using RDMA/RoCE storage target functionality.
Executive priority
Treat as targeted infrastructure maintenance, not an internet-wide emergency. Prioritize storage, HPC, and data-center hosts using RDMA/RoCE because a kernel crash can disrupt availability. General Linux servers without this module or hardware path are less likely to be exposed.
Technical view
The srpt unregister path checked only for non-null sport->mad_agent before calling ib_unregister_mad_agent(). The source says sport->mad_agent can briefly hold an error value when srpt_add_one() and srpt_remove_one() run simultaneously, including when a RoCE driver unregisters an ib_device. Stable kernel commits add a valid pointer check.
Likely exposure
Exposure is likely limited to Linux systems with RDMA srpt/ib_srpt target functionality and RoCE/RDMA device lifecycle activity. The supplied affected data names Linux and lists versions including 3.3, 5.10.180, 5.15.111, 6.1.28, 6.2.15, 6.3.2, and 6.4, but does not provide a clear range model.
Exploitation context
The bundle provides no evidence of active exploitation and marks KEV as false. The described trigger is a timing race during RDMA device add/remove or unregister operations, not a documented remote attack path. No exploit method is provided in the sources.
Researcher notes
Evidence supports a kernel NULL pointer dereference caused by insufficient pointer validation in srpt MAD agent unregister handling. The source does not provide CVSS, CWE, exploitability assessment, or a complete affected-version range. Avoid assuming remote reachability without additional vendor or upstream analysis.
Mitigation direction
Check your Linux vendor advisory for fixed kernel packages covering CVE-2023-54274.
Prioritize RDMA/RoCE hosts using the srpt or ib_srpt module.
Apply stable kernel updates containing the referenced valid pointer check.
Reduce unnecessary RDMA device churn until patched, where operationally feasible.
Validation and detection
Inventory hosts with RDMA, RoCE, and ib_srpt or srpt module usage.
Compare running kernel versions against vendor guidance for CVE-2023-54274.
Review kernel logs for oops traces involving ib_unregister_mad_agent or srpt_unregister_mad_agent.
Confirm fixed kernels include one of the referenced stable commits or vendor backports.
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-2023-54274 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.
0CVSS vectors
3Timeline events
0ADP providers
7Source links
Vulnerability timeline
Timeline events are normalized from CVE metadata, CNA source timelines, ADP timelines, and KEV metadata when present.
CVE reservedCVE Program
The CVE ID was reserved by the assigning CNA.
CVE publishedCVE Program
The CVE record was published.
Dec 30, 2025, 12:16 UTC (UTC+00:00)
CVE updatedCVE Program
The CVE record metadata indicates this as the latest update time.