{"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.44616,"slug":"CVE-2026-84997","body":"## Overview\n\nreact/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.\n\n## Remediation\n\nRefer to the linked advisories for vendor-supplied fixes and affected version ranges.\n\n## Package advisory (CVE-2026-84997)\n\nAffected packages:\n\n- `react/http >= 0.6.0, <= 1.11.0`\n\nPatched in:\n\n- `react/http 1.11.1`\n\nSource: https://github.com/advisories/GHSA-x424-64qh-5j54","depth":"midnight","depthScore":53,"depthScoreParts":{"impact":41.3,"likelihood":0.1,"exploitation":12,"ransomware":0},"changes":[]}