PT-2023-8187 · Go+11 · Go+11
Bartek Nowotarski
·
Published
2023-11-29
·
Updated
2025-04-25
·
CVE-2023-39326
CVSS v3.1
5.3
Medium
| Vector | AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N |
Name of the Vulnerable Software and Affected Versions
Go versions prior to 1.21.5
Go versions prior to 1.20.12
Description
A malicious HTTP sender can use chunk extensions to cause a receiver reading from a request or response body to read many more bytes from the network than are in the body. A malicious HTTP client can further exploit this to cause a server to automatically read a large amount of data (up to about 1GiB) when a handler fails to read the entire body of a request. Chunk extensions are a little-used HTTP feature which permit including additional metadata in a request or response body sent using the chunked encoding. The net/http chunked encoding reader discards this metadata. A sender can exploit this by inserting a large metadata segment with each byte transferred. The chunk reader now produces an error if the ratio of real body to encoded bytes grows too small.
Recommendations
Update to Go version 1.21.5 or later to fix the issue.
Update to Go version 1.20.12 or later to fix the issue.
As a temporary workaround, consider restricting the use of chunk extensions in HTTP requests and responses until a patch is available.
Avoid using the chunked encoding feature in net/http until the issue is resolved.
Fix
Information Disclosure
Found an issue in the description? Have something to add? Feel free to write us 👾
Weakness Enumeration
Related Identifiers
Affected Products
Alt Linux
Almalinux
Astra Linux
Centos
Debian
Go
Linuxmint
Red Hat
Red Os
Rocky Linux
Suse
Ubuntu