Severity by source
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N
HTTP/2 server is network-reachable with low complexity and no auth or interaction; impact is integrity-only via smuggling/truncation, with no direct confidentiality or availability loss.
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
3DescriptionCVE.org
PHP Standard Library (PSL) is set of APIs covering async, collections, networking, I/O, cryptography, terminal UI, etc. In versions 6.1.0, 6.1.1 and 6.2.0, the Psl\H2\ServerConnection does not validate that the total bytes received in DATA frames match the content-length header declared in the HEADERS frame, allowing request smuggling. This is in violation of RFC 9113 §8.1.1. A malicious client is able to send more DATA bytes than declared, smuggling additional content past application-level size limits and send fewer DATA bytes than declared and close the stream early, causing applications that trust the declared length to behave incorrectly. The vulnerability is only reachable for consumers using Psl\H2\ServerConnection directly to accept untrusted client traffic. Consumers of documented high-level PSL APIs are not affected. This issue has been fixed in versions 6.1.2 and 6.2.1.
AnalysisAI
HTTP/2 request smuggling in PHP Standard Library (PSL) versions 6.1.0, 6.1.1, and 6.2.0 lets remote unauthenticated clients desynchronize stream boundaries in Psl\H2\ServerConnection by sending DATA frame totals that disagree with the declared content-length header. Only applications that consume the low-level H2 server connection directly to accept untrusted traffic are exposed; high-level PSL APIs are unaffected. No public exploit identified at time of analysis, and the maintainers state the issue was found during internal review prior to public exploitation.
Technical ContextAI
PSL is a PHP standard-library-style toolkit; the affected component, Psl\H2\ServerConnection, implements the server side of HTTP/2 framing as defined by RFC 9113. RFC 9113 §8.1.1 and §8.1.2.6 require that when a HEADERS frame declares a content-length, the cumulative payload of subsequent DATA frames on that stream must equal that value. The vulnerable code parsed the header but never reconciled it against the running byte count of DATA frames, classifying this as CWE-444 (Inconsistent Interpretation of HTTP Requests / Request Smuggling). The CPEs cpe:2.3:a:php-standard-library:php-standard-library:* and the dedicated cpe:2.3:a:php-standard-library:php-standard-library/h2:* confirm the H2 subcomponent as the locus of the flaw.
RemediationAI
Vendor-released patches are available: upgrade to PSL 6.1.2 (https://github.com/php-standard-library/php-standard-library/releases/tag/6.1.2) on the 6.1.x branch or 6.2.1 (https://github.com/php-standard-library/php-standard-library/releases/tag/6.2.1) on the 6.2.x branch, e.g. composer require php-standard-library/psl:^6.1.2. These versions parse and validate content-length on server-side HEADERS receive, track cumulative DATA frame payload length per stream, and throw Psl\H2\Exception\StreamException on mismatch or overflow. If patching is delayed, compensating controls are to front Psl\H2\ServerConnection with a hardened HTTP/2 terminator such as nginx or Envoy that enforces RFC 9113 framing (trade-off: extra hop and TLS termination move) or refactor consumers off the low-level ServerConnection onto the documented high-level PSL APIs, which are not affected.
In PHP versions 7.1.x below 7.1.33, 7.2.x below 7.2.24 and 7.3.x below 7.3.11 in certain configurations of FPM setup it
sapi/cgi/cgi_main.c in PHP before 5.3.12 and 5.4.x before 5.4.2, when configured as a CGI script (aka php-cgi), does not
(1) boardData102.php, (2) boardData103.php, (3) boardDataJP.php, (4) boardDataNA.php, and (5) boardDataWW.php in Netgear
The '/common/download_agent_installer.php' script in the Quest KACE System Management Appliance 8.0.318 is accessible by
ProjectSend versions prior to r1720 are affected by an improper authentication vulnerability. Rated critical severity (C
Roundcube Webmail contains a critical PHP object deserialization vulnerability (CVE-2025-49113, CVSS 9.9) that allows au
Util/PHP/eval-stdin.php in PHPUnit before 4.8.28 and 5.x before 5.6.3 allows remote attackers to execute arbitrary PHP c
Palo Alto Networks PAN-OS management web interface contains an authentication bypass allowing unauthenticated attackers
Nagios XI version xi-5.7.5 is affected by OS command injection. Rated high severity (CVSS 8.8), this vulnerability is re
Nagios XI version xi-5.7.5 is affected by OS command injection. Rated high severity (CVSS 8.8), this vulnerability is re
The get_referers function in /opt/ws/bin/sblistpack in Sophos Web Appliance before 3.7.9.1 and 3.8 before 3.8.1.1 allows
The Backup Migration plugin for WordPress is vulnerable to Remote Code Execution in all versions up to, and including, 1
Same weakness CWE-444 – HTTP Request/Response Smuggling
View allSame technique Information Disclosure
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-37798
GHSA-pw9p-jvrm-f7rm