CVE-2026-120234: ag-ui HTTP Transport unbounded response buffering

CVE-2026-120234 · Severity: medium · CVSS 4.3 · Published 2026-11-01

ag-ui is a JavaScript library that enables AI agents to interact with frontend applications. A flaw in its HTTP transport layer causes the client to read entire error response bodies into memory without limits. An attacker hosting a malicious endpoint can return a huge error response, exhausting the client's memory and crashing the application, while injecting misleading content into logs and error messages.

Technologies: Ag-Ui-Protocol Ag-Ui. Vendors: Ag-Ui-Protocol.

Quick answers

Is CVE-2026-120234 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2026-120234 being exploited in the wild.
How severe is CVE-2026-120234?
Medium severity, with a CVSS score of 4.3, published 1 November 2026.
Which products and versions are affected?
Ag-Ui-Protocol Ag-Ui up to 0.0.58.
Is there a fix for CVE-2026-120234?
No fixed version is recorded yet. Read error response bodies through a streaming reader under a strict byte budget (e.g. truncate after 8 KB); construct error messages from status code and a bounded excerpt only, never the full body. If you run it, Junglewise drafts a mitigation that fits your setup and applies it once you approve, with senior security engineers behind it.
How is CVE-2026-120234 attacked?
It is attacked over the network.
Am I affected by CVE-2026-120234?
Check whether you run Ag-Ui-Protocol Ag-Ui at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

How to fix

Read error response bodies through a streaming reader under a strict byte budget (e.g. truncate after 8 KB); construct error messages from status code and a bounded excerpt only, never the full body.

Technical details

The vulnerability is an unbounded resource allocation in the HTTP error path of @ag-ui/client's runHttpRequest function. When a non-2xx response is received, the code calls e.text() on the response body with no size cap or streaming, then constructs an Error object that embeds and duplicates the full body. A remote attacker controlling a server endpoint can send a 500 status with a multi-gigabyte text payload, causing out-of-memory conditions on the client side. CWE-400 / CWE-770.

Affected products

  • ag-ui-protocol ag-ui up to 0.0.58

Timeline

  • 2026-08-25: disclosed: Issue #2521 opened on GitHub by ez-lbz
  • 2026-11-01: advisory

References

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.