Skip to main content

ag-ui C++ SDK EUVDEUVD-2026-80708

| CVE-2026-92363 MEDIUM
Uncontrolled Resource Consumption (CWE-400)
2026-09-16 VulDB GHSA-gh4c-79cj-jr5j
5.3
CVSS 4.0 · Vendor: VulDB
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Gain control of SSE stream source
  2. Delivery
    Send single event with no terminating blank line
  3. Exploit
    Deliver payload as many small chunks
  4. Execution
    Bypass buffer-size guard via accumulator growth
  5. Impact
    Exhaust process memory (DoS)

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A06:2025 - Insecure Design
ASVS 5.0
V2 - Validation and Business Logic Resource consumption limits
MITRE ATT&CK

1 technique across 1 tactic: Impact

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Requires an application that uses the ag-ui C++ community SDK's SseParser to consume a Server-Sent Events stream, and an attacker able to control or influence that stream source (per the PR:L privilege). The specific trigger is a single SSE event whose data is never terminated by a blank line, fed as many small chunks so that consumed bytes are erased from m_buffer into the per-event accumulator m_currentData, which was excluded from the kMaxBufferSize check. Limiting factors: impact is availability-only (memory exhaustion of the parsing process, VA:L), it affects only the C++ SDK (not other-language SDKs), it needs the low-privilege/authorized stream position rather than anonymous access, and patched builds throw SseBufferExceededError before exhaustion.

Impact

This is a genuine but low-to-moderate priority denial-of-service issue, not a high-impact flaw. The CVSS 4.0 base score of 5.3 (AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:L) reflects reality well: the only impact is availability, and it is rated LOW (VA:L), meaning memory pressure/degradation of the application embedding the C++ SDK rather than confidentiality or integrity loss. There is no EPSS score, no CISA KEV listing, and no public exploit code identified at time of analysis, so this reflects a responsibly-disclosed bug (VulDB, GitHub issue #2440) with a merged fix rather than any observed exploitation. The exploitation-status signal is E:X (not defined) in the vector, consistent with 'no public exploit identified.' One nuance to verify: this is a client-side SSE stream parser, so the 'remote attacker' must control or influence the server-sent-events source the SDK consumes; the vendor-assigned PR:L suggests some privileged/authorized position rather than a fully anonymous internet attacker. The source-code diff strongly corroborates the mechanism (per-event accumulator m_currentData excluded from the buffer-size guard), so the technical claim is well-supported. Overall: real bug, real patch, but low real-world urgency given niche deployment and availability-only impact.

Exploit ScenarioDerived

An attacker who controls or can inject into the Server-Sent Events stream that an application's ag-ui C++ SDK consumes sends a single SSE event whose data field is never terminated by a blank line, delivered as many small chunks. Because each chunk is drained from m_buffer into the per-event accumulator, the buffer-size limit never trips and memory grows without bound until the host process is exhausted. No public exploit code exists; the attack is simple (AC:L) but requires an attacker-influenced stream source (PR:L).

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.5% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Sep 16, 2026

Unbounded memory growth in the ag-ui (AG-UI protocol) C++ community SDK's Server-Sent Events parser lets an attacker who can control or influence the consumed SSE stream exhaust the parsing process's memory, producing a denial of service. The flaw lives in sdks/community/c++/src/stream/sse_parser.cpp, where the buffer guard compares only m_buffer plus the incoming chunk against kMaxBufferSize and ignores the per-event accumulator m_currentData, so a single event that is never terminated by a blank line and delivered as many small chunks grows without bound. It is rated CVSS 5.3 (CVSS:4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:L) / CVSS:3.1 AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L, availability-only and requiring the low-privilege, authorized position of the stream producer; no public exploit identified at time of analysis, and an upstream fix is available (commit ab6e0bc, PR #2501).

RemediationAI

Upstream fix available (PR/commit); released patched version not independently confirmed - the authoritative change is commit ab6e0bc298996caac2b4b0b3ec0bd8d32a15a186 (pull request https://github.com/ag-ui-protocol/ag-ui/pull/2501, tracking issue https://github.com/ag-ui-protocol/ag-ui/issues/2440), which adds m_currentData.size() to the kMaxBufferSize check so oversized never-terminated events throw SseBufferExceededError; apply that commit, cherry-pick it into the C++ SDK, or take the next tagged release that contains it. No exact fix version number is published in the available data, so do not assume a specific tag is patched without verifying its contents against this commit. If code cannot be rebuilt immediately, compensating controls are possible but partial: enforce a hard byte cap and idle timeout on the SSE response at an upstream reverse proxy or HTTP client (limits total stream size but can truncate legitimately large or slow agent streams once the cap is reached), reject or split SSE payloads whose single event exceeds an application-defined data-field size before they reach the parser (requires a wrapping layer and may break clients emitting large legitimately-unteminated events), and restrict who can publish to or point the SDK at the upstream event stream, since the flaw requires the low-privilege but authorized stream-producer position rather than anonymous access. Do not rely on transport compression or connection count limits alone, as a single well-formed stream is sufficient to trigger the growth. Vendor references: https://vuldb.com/vuln/405449, https://vuldb.com/cve/CVE-2026-92363, https://vuldb.com/submit/934957.

Affected VersionsENISA

ag-ui 1.0

Affected Packages

euvd ag_ui no fix

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

ag-ui is a protocol/SDK suite for streaming agent-to-UI events, and its community C++ SDK implements a Server-Sent Events consumer in sdks/community/c++/src/stream/sse_parser.cpp. SSE frames arrive as 'data: ...\n' fields terminated by a blank line; the parser feeds incoming bytes into a raw buffer (m_buffer) and processBuffer() erases already-consumed bytes while accumulating the current logical event into a separate per-event accumulator (m_currentData) until a terminator is seen. The pre-patch guard only tested m_buffer.size() + chunk.size() > kMaxBufferSize, so an attacker sending one event that is never terminated - split into many small chunks - kept m_buffer small (consumed bytes were erased on each feed) while m_currentData grew monotonically, defeating the intended limit. This is CWE-400 (Uncontrolled Resource Consumption): the root cause is an incomplete accounting of an internal state buffer against a fixed memory ceiling, not a memory-safety bug, so impact is confined to memory pressure/termination of the parsing process rather than code execution or data exposure. The CPE cpe:2.3:a:ag-ui-protocol:ag-ui:*:*:*:*:*:*:*:* indicates all versions of the ag-ui package are in scope, but the vulnerable code path is specific to the C++ SDK's SseParser (the same file is not shared by the other-language SDKs), and patched builds raise SseBufferExceededError as soon as m_buffer + m_currentData + chunk exceeds kMaxBufferSize.

Know when Ag Ui gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (VulDB) PRIMARY 5.3 MEDIUM
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N
vuln.today AI 4.3 MEDIUM

Attacker must control the consumed SSE stream (PR:L) over the network with low complexity; impact is availability-only and partial (memory pressure), so A:L, C:N/I:N.

3.1 AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N

Primary rating from Vendor (VulDB).

CVSS VectorVendor: VulDB

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
Low
User Interaction
None
Vulnerable system: Confidentiality
None
Vulnerable system: Integrity
None
Vulnerable system: Availability
Low
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

A flaw has been found in ag-ui-protocol ag-ui 1.0. Affected is an unknown function of the file src/stream/sse_parser.cpp of the component JSON Parser. Executing a manipulation can lead to resource consumption. The attack may be performed from remote. This patch is called ab6e0bc298996caac2b4b0b3ec0bd8d32a15a186. Applying a patch is advised to resolve this issue.

Threat Intelligence Overview

EPSS Score
0.5%
Top 57% exploitable
Prevalence
Low
Emerging OSS AI-agent UI protocol, niche C++ community SDK
Data Quality
5 sources
Confidence: Medium

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.5%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation· derived
None
System Exposure· derived
Open
Automatable· derived
No
Human Impact· derived
Medium

Priority Score

27
Low Medium High Critical
KEV: 0
EPSS: +1
CVSS: +26
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.

More in Ag Ui

View all
CVE-2026-120233 MEDIUM POC
5.5 Nov 01

Cross-origin information disclosure in the ag-ui TypeScript client: HttpAgent builds the POST run request with the conve

CVE-2026-92362 MEDIUM
6.9 Sep 16

Unbounded memory growth in the AG-UI Rust client's SSE frame parser (crates/ag-ui-client/src/sse.rs, shipped in the ag-u

CVE-2026-120237 LOW POC
2.1 Nov 01

Denial of service in the ag-ui TypeScript client SDK (versions up to and including 0.0.58) allows a party that controls

CVE-2026-120235 LOW POC
2.1 Nov 01

Denial of service in the ag-ui TypeScript client SDK (versions up to 0.0.58) where the SSE/protobuf stream parser fails

CVE-2026-120234 LOW POC
2.1 Nov 01

Resource exhaustion in the ag-ui Protocol TypeScript client SDK (versions up to and including 0.0.58) allows a hostile o

CVE-2026-120236 LOW POC
2.1 Nov 01

Improper input validation in the AG-UI protocol SDK transport decoder path affects ag-ui versions up to and including 0.

CVE-2026-101099 MEDIUM
5.3 Sep 28

Unbounded buffering in the Server-Sent Events parser of the AG-UI Community SDK (Kotlin/Java) lets a malicious or man-in

CVE-2026-92361 MEDIUM
5.3 Sep 16

Memory exhaustion in the AG-UI Go community SDK's SSE client allows a remote attacker who controls or can intercept an S

CVE-2026-92360 MEDIUM
5.3 Sep 16

Origin validation errors in the AG-UI TypeScript client SDK (ag-ui 1.0) allow remote, low-privileged attackers who can i

CVE-2026-101101 MEDIUM
5.3 Sep 28

Uncaught exception handling in the A2A middleware of ag-ui-protocol ag-ui (all versions up to 2026-09-07) allows an atta

CVE-2026-101100 MEDIUM
5.3 Sep 28

Incomplete cleanup of per-run state in the ag-ui TypeScript client SDK's FilterToolCallsMiddleware allows disallowed too

CVE-2026-101098 MEDIUM
5.3 Sep 28

Unbounded request-body reads in the ag-ui Java community server SDK (JdkAgentHttpHandler, used by applications that inst

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy