---
id: CVE-2026-84997
title: >-
  react/http is an event-driven, streaming HTTP client and server implementation
  for ReactPHP
summary: >-
  react/http is an event-driven, streaming HTTP client and server implementation
  for ReactPHP. From 0.6.0 until 1.11.1, React\Http\Io\ChunkedDecoder could
  enter an infinite loop while processing a malformed Transfer-Encoding: chunked
  body …
severity: high
cvss: 7.5
cvssVector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H'
cwe:
  - CWE-835
vendor: reactphp
product: http
affected:
  - 'http >= 0.6.0, < 1.11.1'
published: '2026-09-16'
updated: '2026-09-16'
sourceUpdated: '2026-09-16T15:18:00.863'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-84997'
references:
  - url: >-
      https://github.com/reactphp/http/commit/b6d4688790adf3797071fcf88a3fc4225f30486a
    label: security-advisories@github.com
  - url: 'https://github.com/reactphp/http/releases/tag/v1.11.1'
    label: security-advisories@github.com
  - url: 'https://github.com/reactphp/http/security/advisories/GHSA-x424-64qh-5j54'
    label: security-advisories@github.com
  - url: 'https://github.com/reactphp/http/security/advisories/GHSA-x424-64qh-5j54'
    label: 134c704f-9b21-4f2e-91b3-4a467353bcc0
  - url: 'https://nvd.nist.gov/vuln/detail/CVE-2026-84997'
  - url: >-
      https://github.com/FriendsOfPHP/security-advisories/blob/master/react/http/CVE-2026-84997.yaml
  - url: 'https://github.com/advisories/GHSA-x424-64qh-5j54'
tags:
  - nvd
  - cve.org
  - exploit-available
  - ghsa
  - composer
exploitAvailable: true
ssvc:
  exploitation: poc
  automatable: 'yes'
  technicalImpact: partial
  timestamp: '2026-09-16T14:46:36.400582Z'
ingestedAt: '2026-09-16T14:57:28.033Z'
aliases:
  - GHSA-x424-64qh-5j54
ecosystem: composer
patched:
  - react/http 1.11.1
epss: 0.00549
epssPercentile: 0.4487
---

## Overview

react/http is an event-driven, streaming HTTP client and server implementation for ReactPHP. From 0.6.0 until 1.11.1, React\Http\Io\ChunkedDecoder could enter an infinite loop while processing a malformed Transfer-Encoding: chunked body because handleData required its buffer to shrink on every iteration. An incomplete terminal-chunk trailer without CRLF left the buffer unchanged after strpos returned false, and exactly two non-CRLF bytes after a completed non-terminal chunk bypassed both the error and wait guards. The affected decoder processes request bodies for React\Http\HttpServer and response bodies for React\Http\Browser, allowing a malicious client to freeze a server or a malicious or compromised server to freeze a client. A reverse proxy that normalizes inbound requests may protect the server direction but does not protect outbound Browser requests. This issue is fixed in version 1.11.1.

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.

## Package advisory (CVE-2026-84997)

Affected packages:

- `react/http >= 0.6.0, <= 1.11.0`

Patched in:

- `react/http 1.11.1`

Source: https://github.com/advisories/GHSA-x424-64qh-5j54
