CVEReports
CVEReports

Automated vulnerability intelligence platform. Comprehensive reports for high-severity CVEs generated by AI.

Product

  • Home
  • Sitemap
  • RSS Feed

Company

  • About
  • Contact
  • Privacy Policy
  • Terms of Service

© 2026 CVEReports. All rights reserved.

Made with love by Amit Schendel & Alon Barad



CVE-2026-55784

CVE-2026-55784: Concurrent Request Context Overwrite in free5GC AUSF

Alon Barad
Alon Barad
Software Engineer

Aug 29, 2026·6 min read·2 visits

Executive Summary (TL;DR)

A critical concurrency vulnerability (CWE-362) in free5GC AUSF allows unauthenticated network attackers to cause a denial of service (DoS) for targeted subscribers by sending concurrent authentication requests that overwrite active cryptographic session contexts.

A concurrency synchronization flaw (race condition) exists in the Authentication Server Function (AUSF) of the free5GC 5G core network implementation. In versions 1.4.4 and earlier, authentication contexts are stored in a global sync.Map keyed solely by the Subscriber Permanent Identifier (SUPI). If multiple concurrent authentication requests are received for the same SUPI, the active security parameters (such as keys and expected responses) are unconditionally overwritten, resulting in authentication failures for the legitimate user.

Vulnerability Overview

The free5GC system is an open-source implementation of the 5G Core Network, written in Go. Inside a standard 5G architecture, the Authentication Server Function (AUSF) plays a critical role in verifying subscriber identity during network access. The AUSF communicates with other core network elements, such as the Access and Mobility Management Function (AMF), via the Service-Based Interface (SBI) or the N12 reference point.

The vulnerability in free5GC versions 1.4.4 and earlier resides in how the AUSF manages transient subscriber state during the EAP-AKA' or 5G-AKA authentication process. To track ongoing authentication handshakes, the component instantiates a session context. This context contains critical cryptographic variables required to validate subsequent challenge responses.

The attack surface is exposed through the /nausf-auth/v1/ue-authentications HTTP endpoint, which handles initial authentication requests. Because this interface lacks validation rules regarding concurrent registration sessions for the same user, it exposes the system to concurrency anomalies. An attacker with access to the internal network can disrupt target subscribers by interacting with this endpoint.

Root Cause Analysis

The root cause of the vulnerability is an improper synchronization mechanism on a shared map. The Go runtime implements a concurrent-safe map container named sync.Map. While Go guarantees memory-level safety under concurrent operations (preventing program panic or map corruption), it does not enforce logical or semantic transaction isolation.

The AUSF context structure represents active authentication handshakes within a global sync.Map named AUSFContext.UePool. This map uses the Subscriber Permanent Identifier (SUPI) as its direct lookup key. When a new initial authentication request is received, the code unconditionally stores the state with UePool.Store(ausfUeContext.Supi, ausfUeContext).

This design creates a severe semantic race condition when multiple requests are initiated concurrently for the same SUPI. If Request B is executed before Request A completes its authentication handshake, the state context for Request B overwrites Request A's context in the map. Consequently, any responses corresponding to Request A are evaluated using the security context of Request B, causing cryptographic validation failures.

Code Analysis

To understand the vulnerability mechanics, examine the execution path in internal/sbi/processor/ue_authentication.go. When a client makes an HTTP POST request to initiate authentication, the handler processes the incoming payload and extracts the SUPI. It then initializes a session context and stores it in the global map without verifying if a session is already active.

Below is the conceptual representation of the vulnerable context-handling implementation:

// In internal/context/context.go
type AUSFContext struct {
    UePool sync.Map // Key: SUPI (string), Value: *AusfUeContext
}
 
// In internal/sbi/processor/ue_authentication.go
func AddAusfUeContextToPool(ausfUeContext *context.AusfUeContext) {
    ausfContext := context.GetSelf()
    // Unconditional overwrite of the subscriber's context based solely on SUPI
    ausfContext.UePool.Store(ausfUeContext.Supi, ausfUeContext)
}

A robust mitigation requires refactoring the storage mechanism to support a multi-part key or generating a random UUID for each unique authentication transaction. The updated logic must verify that incoming authentication responses map directly to their corresponding challenge-response pairs rather than lookup coordinates based only on the user's permanent identifier:

// Remediated conceptual approach
type AUSFContext struct {
    // Key is a combination of SUPI and TransactionID to avoid collision
    UePool sync.Map 
}
 
func AddAusfUeContextToPool(txID string, ausfUeContext *context.AusfUeContext) {
    ausfContext := context.GetSelf()
    compositeKey := fmt.Sprintf("%s-%s", ausfUeContext.Supi, txID)
    ausfContext.UePool.Store(compositeKey, ausfUeContext)
}

Without a unique session identifier tracking the individual transaction lifecycle, concurrent requests will always collide. Incorporating unique identifiers ensures that each authentication workflow remains completely isolated, neutralizing the overwrite path.

Exploitation Methodology

Exploiting this vulnerability does not require complex state manipulation or target synchronization. The attacker must possess network visibility and access to the Service-Based Interface of the AUSF, typically via an internal network compromise. The attacker initiates the exploit by targeting a known subscriber's SUPI.

The attack begins by issuing a continuous stream of concurrent HTTP POST requests to /nausf-auth/v1/ue-authentications. This process continually replaces the active context mapping on the AUSF side. As a result, the transient variables K_aut, XRES, and EapID are constantly updated with newly generated challenge vectors.

When the legitimate User Equipment (UE) receives its initial challenge and responds with its cryptographic credentials, the verification routine queries UePool using the SUPI. Because of the flood, the map returns the state associated with the attacker's latest request rather than the original context. The verification step detects a mismatch in AT_MAC or RES* values, causing authentication to fail.

Impact Assessment

The direct consequence of this vulnerability is a targeted Denial of Service (DoS) affecting the availability of individual subscribers on the 5G network. By repeatedly flooding the AUSF with concurrent requests for a target SUPI, an attacker can persistently deny network registration to that subscriber. The affected subscriber cannot establish a connection, send traffic, or receive services.

While the vulnerability results in a high availability impact, it does not lead to a breach of data confidentiality or integrity. The attacker cannot obtain the legitimate user's cryptographic keys or impersonate the target subscriber, because the cryptographic validation itself functions correctly and rejects the mismatched credentials.

The CVSS v3.1 score is evaluated at 7.5, reflecting a High severity profile. The low attack complexity and absence of prerequisite privileges make the vulnerability straightforward to exploit once network access is achieved. However, the requirement for network access to the internal 5G core network control plane acts as an operational barrier in production environments.

Remediation & Mitigation Guidance

As of the time of this publication, no official patched release of free5GC completely addresses this issue. Organizations running free5GC in development or testing environments must implement operational workarounds to secure their deployments. The most immediate mitigation is to enforce strong isolation around the control plane.

Implement network segmentation policies to restrict access to the AUSF Service-Based Interface. Ensure that only designated, authenticated AMF instances can connect to the /nausf-auth/v1/ue-authentications API endpoint. Mutual TLS (mTLS) must be enforced with client certificate verification to block unauthorized network entities from injecting requests.

Additionally, deploying rate limiting on the SBI gateway or internal reverse proxies can mitigate concurrent request floods. Setting strict limits on the number of authentication requests per SUPI per second prevents attackers from successfully maintaining the race condition state.

Official Patches

free5gcAdvisory and issue tracker for the concurrent context overwrite vulnerability.

Technical Appendix

CVSS Score
7.5/ 10
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H

Affected Systems

free5GC AUSF

Affected Versions Detail

Product
Affected Versions
Fixed Version
free5GC
free5gc
<= 1.4.4Not patched
AttributeDetail
CWE IDCWE-362
Attack VectorNetwork
Attack ComplexityLow
Privileges RequiredNone
ImpactAvailability (High)
Exploit StatusNone / Concept Only

MITRE ATT&CK Mapping

T1068Exploitation for Privilege Escalation
Privilege Escalation
CWE-362
Concurrent Execution using Shared Resource with Improper Synchronization ('Race Condition')

The program runs concurrent threads/routines that share resources without adequate logical separation or synchronization boundaries, leading to inconsistent state or unexpected behavior.

References & Sources

  • [1]GitHub Security Advisory GHSA-334q-h5g3-fpxv
  • [2]CVE.org Record

Attack Flow Diagram

Press enter or space to select a node. You can then use the arrow keys to move the node around. Press delete to remove it and escape to cancel.
Press enter or space to select an edge. You can then press delete to remove it or escape to cancel.

More Reports

•13 minutes ago•CVE-2026-55779
5.4

CVE-2026-55779: Stored Cross-Site Scripting (XSS) in Silverstripe Archive Admin Restore

A Stored Cross-Site Scripting (XSS) vulnerability exists in the silverstripe/versioned package prior to version 3.2.1. When an administrator restores an archived page containing a crafted Title or URLSegment, the generated restoration message is rendered as CAST_HTML without proper sanitization. This allows malicious JavaScript to execute in the administrator's browser session, compromising the confidentiality and integrity of the CMS dashboard.

Amit Schendel
Amit Schendel
0 views•6 min read
•about 2 hours ago•CVE-2026-55785
3.7

CVE-2026-55785: Non-Constant-Time Cryptographic Comparison and Sensitive Information Leakage in free5GC AUSF

free5GC is an open-source implementation of the 5G core network. Prior to version 1.4.5, the Authentication Server Function (AUSF) component of free5GC performs cryptographic comparisons within its Service-Based Interface (SBI) handling logic using non-constant-time helpers. These comparison utilities return immediately upon encountering a mismatching character, creating a covert timing channel. Concurrently, the AUSF writes the expected validation vector to standard output logs at the INFO level, exposing sensitive cryptographic material to unauthorized processes or logging agents.

Amit Schendel
Amit Schendel
3 views•5 min read
•about 3 hours ago•CVE-2026-55848
8.6

CVE-2026-55848: GML Layer XML External Entity (XXE) Injection in MapFish Print

An XML External Entity (XXE) vulnerability in MapFish Print allows unauthenticated remote attackers to perform arbitrary local file disclosure and Server-Side Request Forgery (SSRF) by exploiting GML layer URL parameters in requests submitted to the /api/print3/print endpoint.

Amit Schendel
Amit Schendel
2 views•7 min read
•about 4 hours ago•CVE-2026-55843
7.0

CVE-2026-55843: Privilege Demotion and Access Control Bypass via Parameter Omission in Snipe-IT

A comprehensive technical analysis of CVE-2026-55843, an Improper Privilege Management vulnerability (CWE-269) in Snipe-IT versions prior to 8.6.0. The vulnerability allows an authenticated editor or administrator to overwrite and strip the granular or administrative permissions of other users by omitting the permission parameter from profile update payloads. This issue has been resolved in Snipe-IT version 8.6.0.

Amit Schendel
Amit Schendel
3 views•7 min read
•about 5 hours ago•CVE-2026-55856
5.9

CVE-2026-55856: Credential Disclosure via Out-of-Order Handshake in MariaDB Connector/J

A critical credential disclosure vulnerability in MariaDB Connector/J allows remote attackers to capture raw database passwords. The driver transmits plaintext passwords prior to verifying TLS certificate fingerprints when configured in ephemeral trust fallback states.

Amit Schendel
Amit Schendel
4 views•5 min read
•about 6 hours ago•CVE-2026-55857
5.9

CVE-2026-55857: Insecure Credential Transmission via PAM Dialog Plugin in MariaDB Connector/J

A transport-security omission in the MariaDB Connector/J driver allows remote on-path adversaries or rogue database servers to capture database credentials in cleartext. Under default configurations (sslMode=DISABLE), the driver fails to enforce encrypted channels when negotiating the Pluggable Authentication Module (PAM) 'dialog' plugin, resulting in cleartext transmission of sensitive passwords.

Amit Schendel
Amit Schendel
5 views•6 min read