[php-src] PR #23467: Fix out-of-bounds read on empty Location header in HTTP wrapper
| From: | iliaal | Date: | Tue, 25 Aug 2026 23:27:31 +0000 |
| Subject: | [php-src] PR #23467: Fix out-of-bounds read on empty Location header in HTTP wrapper | ||
| Groups: | php.git-pulls | ||
| Request: | Send a blank email to git-pulls+get-38148@lists.php.net to get a copy of this message | ||
Pull Request: https://github.com/php/php-src/pull/23467
Author: iliaal
When a server sends a redirect with an empty Location header, the wrapper allocates a single byte
for it and the relative-redirect branch then reads location[1], one byte past the allocation, so a
hostile server can make the over-read pick up heap garbage and turn the redirect target into the
current path plus junk instead of the host root. The second-byte dereference is now guarded by
header_info.location_len; an empty Location deterministically redirects to the host root. Sibling
audit found no other unguarded indexing of header_info.location.