Skip to main content

Meta Proxygen EUVDEUVD-2026-88545

| CVE-2026-91096 HIGH
Use After Free (CWE-416)
2026-09-28 Meta GHSA-8mv4-xrj3-xg7m
7.5
CVSS 3.1 · Vendor: Meta
View

Attack ChainAIDerived

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

  1. Access
    Establish WebTransport session over HTTP/3
  2. Delivery
    Open and manipulate stream lifetimes
  3. Exploit
    Trigger session/stream teardown with stale callback
  4. Execution
    Transport invokes freed read callback
  5. Impact
    Memory corruption causing crash or info leak

Vulnerability Assessment

Weakness
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Memory lifecycle management
MITRE ATT&CK

2 techniques across 2 tactics: Execution, Privilege Escalation

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

Exploitation Conditions

Requires the target to be a proxygen-based server (or peer) with WebTransport over HTTP/3 in use - WebTransport is a non-ubiquitous, relatively new feature, which materially limits the exposed attack surface. The attacker must be able to open WebTransport streams and drive the session into the teardown path where streams are closed while a read callback is still registered, so exploitation hinges on reaching the specific stream-lifetime/teardown sequence rather than a single trivial request. Per the CVSS vector this is remote and unauthenticated (PR:N, UI:N), but reliability depends on stream-state timing and the deployment actually enabling WebTransport; deployments not using WebTransport are unaffected.

Impact

This is a CWE-416 use-after-free in Meta's proxygen HTTP library, affecting WebTransport session teardown (WebTransportImpl::terminateSessionStreams, formerly ::destroy) where read callbacks for no-longer-open streams are not unregistered before being freed, allowing the transport to later invoke a freed callback. The vendor CVSS:3.1 vector (AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N, 7.5) implies remote unauthenticated triggering with high confidentiality impact, consistent with the 'Information Disclosure' tag. However, the real-world signals point to modest priority: EPSS is very low at 0.14% (3rd percentile), the CVE is NOT in CISA KEV, and no public POC is identified. The vulnerability was self-reported by Meta with a vendor advisory and a fix commit, indicating responsible-disclosure hygiene rather than observed attacks. IMPORTANT DATA CONFLICT: the linked fix commit (479eb557) modifies HTTPBinaryCodec.cpp (Binary HTTP / field-section parsing), which does not correspond to the described WebTransportImpl read-callback defect - the referenced diff appears to be a different change than the one the description narrates, so the exact patch for this UAF cannot be independently confirmed from the provided evidence. Additionally, use-after-free on a read callback most plausibly causes a crash (availability) or leaks freed-memory contents, so the vendor's choice of C:H/A:N is questionable; a crash-based DoS (A:H) is at least as likely as reliable information disclosure. Net: a real, patchable memory-safety bug but low probability of widespread exploitation given niche feature (WebTransport) and no exploitation signals.

Exploit ScenarioDerived

A remote client establishes an HTTP/3 WebTransport session against a proxygen-based server and opens streams, then drives the session into a teardown path where some streams are no longer open while a read callback remains registered. When the session's stream state is destroyed, the transport invokes the freed read callback, corrupting memory to crash the process or potentially disclose freed-memory contents. No public exploit code is identified at time of analysis, and successful exploitation depends on winning the specific stream-lifetime timing.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
No patch listed yet 0.1% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Sep 30, 2026

Use-after-free in Meta's Proxygen HTTP library (v2024.10.28.00 through v2026.09.28.00) lets remote, unauthenticated attackers provoke the invocation of a freed read callback during WebTransport session teardown, because WebTransportImpl::terminateSessionStreams (named WebTransportImpl::destroy in releases before v2025.08.18.00) destroys streams without first unregistering their read callbacks. Only deployments that actually enable WebTransport over HTTP/3 are exposed, and the independent assessment rates this AV:N/AC:H/PR:N/UI:N with high availability impact and low confidentiality impact, since the attacker must open WebTransport streams and drive the session into the specific stream-close/teardown ordering. No public exploit code and no confirmed active exploitation were identified at time of analysis, and EPSS is low (0.14%, 3rd percentile), so the practical risk is concentrated in services that both use Proxygen and enable WebTransport.

RemediationAI

Vendor-released patch: upgrade Proxygen to v2026.09.28.00 or later, which is the first release outside the affected range documented by the vendor (https://www.facebook.com/security/advisories/cve-2026-91096); the corresponding upstream fix reference is commit 479eb5574195764e80e6cedebef669f6baa85083 (https://github.com/facebook/proxygen/commit/479eb5574195764e80e6cedebef669f6baa85083). Where upgrading immediately is not possible, the most effective compensating control is to disable WebTransport over HTTP/3 in the Proxygen server configuration so that session teardown callbacks for WebTransport streams are never instantiated - the trade-off is that any WebTransport-dependent clients (for example browser applications relying on WebTransport for low-latency bidirectional transport) will lose functionality and must fall back to WebSocket or HTTP/2, and operators should verify no other code path constructs WebTransportImpl sessions. Reducing the exposed attack surface by terminating HTTP/3/WebTransport only for trusted or internal clients, and rate-limiting or fronting the endpoint with a proxy that does not forward WebTransport CONNECT streams, lowers the chance of an attacker reaching the teardown sequence, though these are exposure-reduction measures rather than fixes and carry the side effect of blocking legitimate WebTransport traffic. Be aware that no patched build is available for pre-v2026.09.28.00 branches, so versions such as v2025.08.18.00 that rename but do not fix the function remain vulnerable and must be upgraded.

Affected VersionsENISA

Proxygen v2024.10.28.00 <v2026.09.28.00

Affects your stack

Find out whether the stacks and servers you run are on an affected version.

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

Technical ContextAI · show details

Proxygen is Meta's open-source C++ HTTP library that implements HTTP/1.1, HTTP/2 and HTTP/3 stacks and is used both inside Meta's infrastructure and by third parties; the CPE cpe:2.3:a:facebook:proxygen:*:*:*:*:*:*:*:* covers the affected product across all vulnerable releases up to the fixed v2026.09.28.00. The vulnerable component is the WebTransport implementation layered on HTTP/3, where a WebTransport session multiplexes bidirectional and unidirectional streams and the server registers per-stream read callbacks with the transport. The root cause is a CWE-416 use-after-free: when a session is torn down or streams are closed, terminateSessionStreams (renamed from destroy as of v2025.08.18.00) frees stream objects without first cancelling/unregistering the read callbacks still associated with them, so a subsequent transport-driven read event dispatches into memory that has already been released. Because the defect lives on the stream-lifetime and teardown path rather than in request parsing, exploitation depends on timing and stream-state ordering (hence AC:H in the assessed vector) and is confined to code paths reachable only when WebTransport over HTTP/3 is enabled in the deployment. The referenced upstream commit (479eb5574195764e80e6cedebef669f6baa85083) is the fix pointer from the vendor's advisory trail.

Know when Proxygen 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 (Meta) PRIMARY 7.5 HIGH
AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
vuln.today AI 6.5 MEDIUM

Remote unauthenticated (AV:N/PR:N) but triggering the freed-callback path needs a specific stream-teardown state (AC:H); a freed read callback most likely crashes the process (A:H) with only limited freed-memory disclosure (C:L).

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

Primary rating from Vendor (Meta).

CVSS VectorVendor: Meta

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
None
Availability
None

Lifecycle Timeline

3
CVSS changed
Sep 30, 2026 - 20:53 NVD
7.5 (HIGH)
CVE Published
Sep 28, 2026 - 20:44 cve.org
UNKNOWN (no severity yet)
CVE Published
Sep 28, 2026 - 20:44 cve.org
HIGH 7.5

DescriptionCVE.org

In proxygen from v2024.10.28.00 until v2026.09.28.00, WebTransportImpl::terminateSessionStreams (WebTransportImpl::destroy in releases before v2025.08.18.00) failed to unregister read callbacks for streams that were no longer open before destroying them. The transport could then invoke a read callback that had been freed.

Executive ViewAI

Why It Matters

CVE-2026-91096 is a high-severity memory-safety flaw in Meta's Proxygen HTTP library that can crash or destabilize services during WebTransport session teardown over HTTP/3, degrading availability rather than exposing data. Exposure is limited to the subset of Proxygen-based deployments that have WebTransport explicitly enabled, so leadership should prioritize identification and containment over broad emergency remediation. No public exploit code and no confirmed active exploitation were identified at time of analysis.

Business Impact: Medium
Compensating Controls

No vendor-released patch identified at time of analysis; interim mitigations include disabling WebTransport over HTTP/3 on affected Proxygen deployments, restricting or disabling HTTP/3 at the network edge, rate-limiting WebTransport session and stream creation, and monitoring for abnormal session-teardown behavior and process crashes.

Threat Intelligence Overview

EPSS Score
0.1%
Top 97% exploitable
Prevalence
Low
Meta's specialized C++ HTTP library; limited adoption outside Meta, WebTransport niche
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 HIGH
CISA KEV No
Public POC No
EPSS 0.1%
Patch available No
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.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
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
Yes
Human Impact
Medium
Technical Impact
Partial

Priority Score

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

Attack Technique

Use-after-free vulnerabilities occur when a program continues to access memory through a pointer after that memory has been deallocated.

Memory corruption occurs when a program writes data beyond the boundaries of allocated memory regions or accesses memory in unintended ways, violating the integrity of the process's address space.

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

CVE-2023-44487 HIGH POC
7.5 Oct 10

Denial of service against HTTP/2 server implementations allows remote unauthenticated attackers to exhaust server resour

CVE-2015-7264 CRITICAL
9.8 Apr 10

The SPDY/2 codec in Facebook Proxygen before 2015-11-09 truncates a certain field to two bytes, which allows hijacking a

CVE-2020-1897 CRITICAL
9.8 May 18

A use-after-free is possible due to an error in lifetime management in the request adaptor when a malicious client invok

CVE-2019-11940 CRITICAL
9.8 Dec 04

In the course of decompressing HPACK inside the HTTP2 protocol, an unexpected sequence of header table resize operations

CVE-2019-11921 CRITICAL
9.8 Jul 25

An out of bounds write is possible via a specially crafted packet in certain configurations of Proxygen due to improper

CVE-2015-7265 HIGH
7.5 Apr 10

Facebook Proxygen before 2015-11-09 mismanages HTTPMessage.request state, which allows remote attackers to conduct hijac

CVE-2015-7263 HIGH
7.5 Apr 10

The SPDY/2 codec in Facebook Proxygen before 2015-11-09 allows remote attackers to conduct hijacking attacks and bypass

CVE-2021-24029 HIGH
7.5 Mar 15

A packet of death scenario is possible in mvfst via a specially crafted message during a QUIC session, which causes a cr

CVE-2018-6347 HIGH
7.5 Dec 31

An issue in the Proxygen handling of HTTP2 parsing of headers/trailers can lead to a denial-of-service attack. Rated hig

CVE-2018-6346 HIGH
7.5 Dec 31

A potential denial-of-service issue in the Proxygen handling of invalid HTTP2 priority settings (specifically a circular

CVE-2018-6343 HIGH
7.5 Dec 31

Proxygen fails to validate that a secondary auth manager is set before dereferencing it. Rated high severity (CVSS 7.5),

CVE-2026-84895 HIGH
7.3 Sep 28

Use-after-free in Meta's proxygen C++ networking library (versions v2026.04.06.00 up to but not including v2026.09.28.00

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