| { |
| "dataType": "CVE_RECORD", |
| "dataVersion": "5.0", |
| "cveMetadata": { |
| "cveId": "CVE-2023-45286" |
| }, |
| "containers": { |
| "cna": { |
| "providerMetadata": { |
| "orgId": "1bb62c36-49e3-4200-9d77-64a1400537cc" |
| }, |
| "title": "HTTP request body disclosure in github.com/go-resty/resty/v2", |
| "descriptions": [ |
| { |
| "lang": "en", |
| "value": "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." |
| } |
| ], |
| "affected": [ |
| { |
| "vendor": "github.com/go-resty/resty/v2", |
| "product": "github.com/go-resty/resty/v2", |
| "collectionURL": "https://pkg.go.dev", |
| "packageName": "github.com/go-resty/resty/v2", |
| "versions": [ |
| { |
| "version": "2.10.0", |
| "lessThan": "2.11.0", |
| "status": "affected", |
| "versionType": "semver" |
| } |
| ], |
| "programRoutines": [ |
| { |
| "name": "handleRequestBody" |
| }, |
| { |
| "name": "Backoff" |
| }, |
| { |
| "name": "Request.Delete" |
| }, |
| { |
| "name": "Request.Execute" |
| }, |
| { |
| "name": "Request.Get" |
| }, |
| { |
| "name": "Request.Head" |
| }, |
| { |
| "name": "Request.Options" |
| }, |
| { |
| "name": "Request.Patch" |
| }, |
| { |
| "name": "Request.Post" |
| }, |
| { |
| "name": "Request.Put" |
| }, |
| { |
| "name": "Request.Send" |
| } |
| ], |
| "defaultStatus": "unaffected" |
| } |
| ], |
| "problemTypes": [ |
| { |
| "descriptions": [ |
| { |
| "lang": "en", |
| "description": "CWE-200: Exposure of Sensitive Information to an Unauthorized Actor" |
| } |
| ] |
| } |
| ], |
| "references": [ |
| { |
| "url": "https://github.com/go-resty/resty/issues/743" |
| }, |
| { |
| "url": "https://github.com/go-resty/resty/issues/739" |
| }, |
| { |
| "url": "https://github.com/go-resty/resty/pull/745" |
| }, |
| { |
| "url": "https://github.com/go-resty/resty/commit/577fed8730d79f583eb48dfc81674164e1fc471e" |
| }, |
| { |
| "url": "https://pkg.go.dev/vuln/GO-2023-2328" |
| } |
| ], |
| "credits": [ |
| { |
| "lang": "en", |
| "value": "Logan Attwood (@lattwood)" |
| } |
| ] |
| } |
| } |
| } |