CVE-2023-37026
CVE-2023-37026 — Magma MME Null Pointer Dereference (S1AP E-RAB Release Response)
Executive Summary
CVE-2023-37026 is a null pointer dereference vulnerability in the Mobile Management Entity (MME) component of the Magma open-source mobile core network platform, affecting all versions up to and including 1.8.0. A network-adjacent attacker can crash the MME by sending a crafted S1AP E-RAB Release Response packet that omits the expected MME_UE_S1AP_ID information element, causing a denial-of-service condition for LTE/5G subscribers served by the affected core. The flaw is fixed in Magma v1.9 (commit 08472ba98b8321f802e95f5622fa90fec2dea486); no CVSS score has been assigned, and no public exploit code or in-the-wild exploitation has been documented to date.
This record — and 170,000+ others — are available via the ValtersIT API. One endpoint replaces five: NVD + GitHub CVE + CISA KEV + EPSS + Nuclei + Exploit-DB, unified.
No signup required
Technical Analysis
Magma (Linux Foundation) is a software-defined mobile core network platform whose MME performs control-plane mobility and session management for LTE and 5G non-standalone access networks. The MME communicates with eNodeBs over the S1-MME interface using the S1 Application Protocol (S1AP), which is transported over SCTP per 3GPP specifications (standard port 36412 for S1AP signaling).
The vulnerability resides in the S1AP message-handling path for the E-RAB (E-UTRAN Radio Access Bearer) Release procedure. Under normal operation, an eNodeB sends an S1AP E-RAB Release Response message back to the MME to acknowledge bearer release, and this message is expected to carry the MME_UE_S1AP_ID information element, which the MME uses to correlate the message with an existing UE (User Equipment) context. In the vulnerable code (Magma <= 1.8.0), the MME dereferences the MME_UE_S1AP_ID value without first validating that the IE was actually present in the decoded message. When an attacker deliberately suppresses this IE, the associated pointer is null, and the dereference triggers a segmentation fault that terminates the MME process.
Because the malformed packet is a validly framed, PER-encoded S1AP message, it will pass transport-level checks and reach the application-layer handler, where the missing-IE condition is not guarded. This is a classic CWE-476 (NULL Pointer Dereference) input-validation flaw in a stateful control-plane protocol parser. The attack surface is the S1-MME control-plane interface: an attacker positioned on a network segment that permits SCTP injection toward the MME (or able to impersonate an eNodeB) can deliver the trigger. No authentication is required at the S1AP layer beyond being able to source packets from a reachable network segment. The NVD description provides no specific function names, file paths, or further code-level implementation details; the mechanism described above is inferred strictly from the protocol semantics and the CVE description.
No CWE was formally assigned by NVD, no CVSS vector was published, and the CNA title is empty — meaning there is limited vendor-authored technical documentation publicly available beyond the OSV patch record. Patch confirmation confidence is 2/4 (CLAIMED): a single source (OSV) asserts the v1.9 commit fixes the issue, but this has not been independently verified by a second authoritative source.
Exploitation Scenarios
No public PoC or exploit code has been observed for CVE-2023-37026 (PoC status: Unknown; Nuclei template: No; Exploit code: No). The attack chain below is therefore inferred from the vulnerability class and the S1AP protocol flow described in the NVD entry.
Reconnaissance / target identification: The attacker identifies a Magma-based mobile core deployment and locates the S1-MME boundary. Because S1AP is carried over SCTP (nominally port 36412), a network-adjacent attacker with visibility of the transport network can map the MME endpoint by observing SCTP associations between eNodeBs and the core. Shodan-style surface discovery may use
port:36412queries, though SCTP-based S1AP interfaces are often firewalled and may only be reachable from within the operator's transport network.Triggering the flaw: The attacker crafts an S1AP
E-RAB Release Responsemessage at the application layer, omitting theMME_UE_S1AP_IDinformation element that the MME's message-handling code expects. The packet is delivered over SCTP to the MME's S1AP port, either by spoofing a legitimate eNodeB's transport address or by injecting from a compromised host on an adjacent network segment.Payload / execution method: The execution is a pure application-layer crash — no memory corruption, code execution, or privilege escalation is involved. The missing
MME_UE_S1AP_IDcauses a null pointer dereference in the MME's processing path, terminating the MME process (segfault). Because the message is structurally valid at the SCTP/S1AP framing layer, transport-level access controls that only validate packet format will not block the trigger.Post-exploitation impact: With the MME process down, all control-plane signaling for the affected service area fails: UE attach/detach, tracking area updates, paging, handover signaling, and bearer setup/release are unavailable. Active sessions may continue briefly until timers expire, but new sessions cannot be established, and the operator loses visibility and control over the radio access network until the MME process is restarted. Repeated triggering of the crash can produce a sustained denial of service, directly mapping to ATT&CK technique T1499 (Endpoint Denial of Service).
Impact Assessment
The business impact is an availability-only outage of the mobile core's control plane. The MME is the central mobility-management node; a crash affects every eNodeB and subscriber registered to that MME instance — not merely a single cell. For operators running Magma as the core for private LTE networks, industrial IoT, or rural/enterprise coverage, this can halt connectivity for critical operational services (e.g., metering, SCADA backhaul, push-to-talk, public-safety communications).
- Confidentiality: no impact — a null dereference does not disclose data.
- Integrity: no impact — no memory corruption or state tampering occurs.
- Availability: high impact — MME process crash causes loss of control-plane services until restart.
- Attack complexity / prerequisites: requires network adjacency to the S1-MME interface and the ability to inject SCTP traffic; no credentials required.
No CVSS score (base or otherwise) was assigned by NVD for this CVE; we do not substitute an unaudited vector. The EPSS score is 0.00248 (16.4th percentile), indicating a low estimated probability of current exploitation, which is consistent with the absence of public exploit code and the CISA KEV listing status (NO). Note that EPSS reflects observed exploitation likelihood, not technical severity.
The blast radius is bounded by the S1-MME trust domain: deployments that properly isolate the transport network from untrusted access segments have a materially lower exposure. However, insider threats, compromised backhaul nodes, or misconfigured network boundaries can all place an attacker in the required network-adjacent position.
Detection Guidance
The following detection primitives target both the post-condition (MME process crash) and the network-level precondition (SCTP/S1AP traffic toward the MME). S1AP is ASN.1 PER-encoded, so deep packet inspection for the specific missing IE (absent MME_UE_S1AP_ID) requires a stateful S1AP dissector; the rules below are realistic baselines that SOC teams should tune to their environment.
Sigma Rule
title: Magma MME Service Unexpected Termination
id: 6f3a9c1e-4b2d-4e7a-9c10-3d2f5a8b7c41
status: experimental
description: >
Detects unexpected termination or crash of the Magma Mobile Management Entity (MME),
a likely post-condition of CVE-2023-37026 exploitation (S1AP E-RAB Release Response
with missing MME_UE_S1AP_ID causing a null pointer dereference).
logsource:
product: linux
service: systemd
detection:
selection_proc:
journald.message|contains|all:
- 'mme'
- 'Mme'
- 'MME'
selection_crash:
journald.message|contains:
- 'Segmentation fault'
- 'core dumped'
- 'Failed with result'
- 'Process exited with status'
condition: selection_proc and selection_crash
falsepositives:
- Administrator-initiated restarts during maintenance windows
- OOM-killer terminations of the MME process on memory-constrained hosts
level: high
tags:
- attack.t1499
- cve.2023.37026
- cwe.476
YARA Rule
rule CVE_2023_37026_Magma_S1AP_Crash_Artifacts
{
meta:
author = "valtersit.com Threat Intelligence"
description = "Detects host artifacts, decoded PCAPs, or memory captures containing S1AP E-RAB Release Response identifiers associated with CVE-2023-37026"
cve = "CVE-2023-37026"
cwe = "CWE-476"
strings:
$a = "E-RAB Release Response" ascii wide nocase
$b = "MME_UE_S1AP_ID" ascii wide nocase
$c = "S1AP" ascii wide nocase
condition:
($a or $b) and filesize < 50MB
}
Note: S1AP is ASN.1 PER-encoded on the wire, so these ASCII strings will not appear in raw packet captures. This YARA rule is intended for decoded captures, MME application logs, crash dumps, and memory-forensic artifacts produced during incident response.
Suricata IDS Rule
# Baseline visibility rule: SCTP/S1AP traffic toward the MME S1-MME interface.
# The specific trigger (E-RAB Release Response missing MME_UE_S1AP_ID) requires a
# stateful ASN.1 PER dissector; this rule flags the transport precondition and
# supplementary S1AP-heuristic rules should be tuned on top of it.
alert sctp any any -> any 36412 (msg:"CVE-2023-37026 - SCTP/S1AP traffic toward Magma MME S1-MME interface"; flow:established; classtype:attempted-dos; sid:3700026; rev:1; metadata:cve CVE-2023-37026;)
# Alert on S1AP traffic originating from hosts not in the authorized eNodeB address space
# (tune $ENB_NET to the operator's eNodeB transport segment)
alert sctp [$HOME_NET,!$ENB_NET] any -> $HOME_NET 36412 (msg:"CVE-2023-37026 - Unauthorized SCTP source sending S1AP messages to MME"; flow:to_server; classtype:attempted-dos; sid:3700027; rev:1; metadata:cve CVE-2023-37026;)
Elastic Detection
// MME process abnormal termination on Linux hosts (auditd/endgame data source)
process where event.type == "end"
and process.name like "*mme*"
and exit_code != 0
// Crash signal observed for the MME process (SIGSEGV = signal number 11)
any where event.action in ("signal", "si_kill")
and signal.name == "SIGSEGV"
and process.executable like "*mme*"
Splunk SPL Query
# Host-based: MME crash symptoms in systemd journal
index=linux sourcetype=journald
("mme" OR "Mme" OR "MME")
("Segmentation fault" OR "core dumped" OR "Process exited with status")
| stats count latest(_time) AS last_seen by host, _raw
| where count > 0
# Network-based: anomalous SCTP traffic to the S1AP port (baseline visibility)
index=network (dest_port=36412 OR (proto=sctp AND app_proto=s1ap))
| stats count BY src_ip, dest_ip
| search NOT src_ip IN ("10.10.0.0/16") # replace with authorized eNodeB segment
Wazuh OSSEC Rule
<group name="magma,mme,">
<rule id="100476" level="12" frequency="3" timeframe="90">
<match>mme|Mme|MME</match>
<regex>Segmentation fault|core dumped|Process exited with status|Failed with result</regex>
<description>Magma MME process crash detected (possible CVE-2023-37026 exploitation - S1AP E-RAB Release Response missing MME_UE_S1AP_ID)</description>
<mitre>
<id>T1499</id>
</mitre>
<group>availability,crash,cve,</group>
</rule>
</group>
Mitigation & Patch Guidance
Patch confidence: 2/4 (CLAIMED). The OSV record states that Magma v1.9 commit 08472ba98b8321f802e95f5622fa90fec2dea486 fixes the vulnerability. Until this is independently confirmed (e.g., by re-testing against the patched build or a second advisory), treat the fix as provisional and verify it in a staging environment.
Immediate mitigations:
- Restrict SCTP access to the MME's S1AP endpoint (port 36412) to a strictly allow-listed set of eNodeB transport addresses. Block SCTP sessions from any host outside the known eNodeB segment at the edge/router ACL and host firewall levels.
- If allowed by the network design, require IPSec or host-level authentication for S1-MME associations so that spoofed or injected S1AP messages cannot reach the MME.
- Deploy process-level monitoring for the MME (systemd unit restart policy, crash detection, alerting on SIGSEGV) so repeated crash attempts generate immediate operator notification.
Patch / upgrade steps:
- Upgrade Magma to v1.9 or later. If upgrading the full release is not immediately possible, cherry-pick commit 08472ba98b8321f802e95f5622fa90fec2dea486 into the local fork and rebuild the MME component.
- After patching, run a regression test that replays a crafted S1AP
E-RAB Release ResponsewithoutMME_UE_S1AP_IDagainst the patched MME to confirm the null dereference is handled gracefully (message rejected, process survives). - Track the OSV advisory feed for updated patch confirmation and any follow-on fixes.
Long-term hardening:
- Add S1AP input-validation and fuzzing to the MME CI pipeline, focusing on mandatory IE presence (e.g.,
MME_UE_S1AP_ID) in all uplink S1AP messages. - Segment the transport network (S1-MME) from all other network zones, and treat it as a zero-trust boundary with source authentication.
- Subscribe to Magma security advisories and OSV feeds. Note that no workarounds are currently documented by the vendor for this CVE, so network-level controls are the primary compensating measure.
- Add S1AP input-validation and fuzzing to the MME CI pipeline, focusing on mandatory IE presence (e.g.,
References
- NVD — CVE-2023-37026: https://nvd.nist.gov/vuln/detail/CVE-2023-37026
- OSV — CVE-2023-37026 advisory and patch reference: https://osv.dev/vulnerability/CVE-2023-37026
- Magma GitHub repository — fix commit 08472ba98b8321f802e95f5622fa90fec2dea486 (v1.9): https://github.com/magma/magma/commit/08472ba98b8321f802e95f5622fa90fec2dea486
- CISA Known Exploited Vulnerabilities catalog: https://www.cisa.gov/known-exploited-vulnerabilities-catalog — CVE-2023-37026 is NOT listed (no in-the-wild exploitation confirmed).
- MITRE ATT&CK — Endpoint Denial of Service (T1499): https://attack.mitre.org/techniques/T1499/
Threat-actor / in-the-wild evidence: No known threat-actor campaigns, exploit-in-the-wild activity, or public PoC have been reported for CVE-2023-37026 as of this writing. The low EPSS score (0.00248, 16.4th percentile) corroborates the absence of active exploitation. However, the network-adjacent attack surface and trivial crash trigger make this CVE a likely candidate for inclusion in operator-targeting toolkits once an MME instance is identified; SOC teams should treat any S1AP anomaly or unexplained MME crash as potentially attributable to this flaw.
What is this? Security researchers use these exact search queries on Shodan.io (a search engine for internet-connected devices) to find vulnerable systems globally. You can copy these dorks to see if your organization's IP space is exposed.