CVE-2023-45286 – github.com/go-resty/resty/v2
Package
Manager: go
Name: github.com/go-resty/resty/v2
Vulnerable Version: >=2.10.0 <2.11.0
Severity
Level: Medium
CVSS v3.1: CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N
CVSS v4.0: CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N
EPSS: 0.00221 pctl0.44687
Details
github.com/go-resty/resty/v2 HTTP request body disclosure A race condition in go-resty can result in HTTP request body disclosure across requests. This condition can be triggered by calling sync.Pool.Put with the same *bytes.Buffer more than once, when request retries are enabled and a retry occurs. The call to sync.Pool.Get will then return a bytes.Buffer that hasn't had bytes.Buffer.Reset called on it. This dirty buffer will contain the HTTP request body from an unrelated request, and go-resty will append the current HTTP request body to it, sending two bodies in one request. The sync.Pool in question is defined at package level scope, so a completely unrelated server could receive the request body.
Metadata
Created: 2023-11-28T17:36:21Z
Modified: 2024-05-20T21:58:12Z
Source: https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2023/11/GHSA-xwh9-gc39-5298/GHSA-xwh9-gc39-5298.json
CWE IDs: ["CWE-200", "CWE-362"]
Alternative ID: GHSA-xwh9-gc39-5298
Finding: F124
Auto approve: 1