golang-github-go-resty-resty — security advisory
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.
- Products
- golang-github-go-resty-resty
- Affected versions
- 2.10.0-1, 2.10.0-2, 2.4.0-1ubuntu1
- Fixed versions
- Not specified
- CVEs
- CVE-2023-45286
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 31 Oct 2026, 01:05 UTC · Revision 1
Source evidence
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.
osv:UBUNTU-CVE-2023-45286
golang-github-go-resty-resty
Fixed versions: Not specified
golang-github-go-resty-resty
Fixed versions: Not specified
golang-github-go-resty-resty
Fixed versions: Not specified
golang-github-go-resty-resty
Fixed versions: Not specified
golang-github-go-resty-resty
Fixed versions: Not specified
Complete source record
{
"id": "8d48618edc811ffbfecaef6fa9fe1642fb219b3dbb0f18e1f6c9d97a3726231c",
"url": "https://osv.dev/vulnerability/UBUNTU-CVE-2023-45286",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "UBUNTU-CVE-2023-45286",
"summary": "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.",
"evidence": "osv:UBUNTU-CVE-2023-45286",
"products": [
{
"name": {
"value": "golang-github-go-resty-resty",
"evidence": "/affected/0/package/name"
},
"prerequisites": [],
"fixed_versions": [],
"affected_versions": [
{
"value": "2.4.0-1ubuntu1",
"evidence": "/affected/0/versions"
}
]
},
{
"name": {
"value": "golang-github-go-resty-resty",
"evidence": "/affected/1/package/name"
},
"prerequisites": [],
"fixed_versions": [],
"affected_versions": [
{
"value": "2.4.0-1ubuntu1",
"evidence": "/affected/1/versions"
},
{
"value": "2.10.0-1",
"evidence": "/affected/1/versions"
}
]
},
{
"name": {
"value": "golang-github-go-resty-resty",
"evidence": "/affected/2/package/name"
},
"prerequisites": [],
"fixed_versions": [],
"affected_versions": [
{
"value": "2.10.0-1",
"evidence": "/affected/2/versions"
},
{
"value": "2.10.0-2",
"evidence": "/affected/2/versions"
}
]
},
{
"name": {
"value": "golang-github-go-resty-resty",
"evidence": "/affected/3/package/name"
},
"prerequisites": [],
"fixed_versions": [],
"affected_versions": [
{
"value": "2.10.0-2",
"evidence": "/affected/3/versions"
}
]
},
{
"name": {
"value": "golang-github-go-resty-resty",
"evidence": "/affected/4/package/name"
},
"prerequisites": [],
"fixed_versions": [],
"affected_versions": [
{
"value": "2.10.0-2",
"evidence": "/affected/4/versions"
}
]
}
],
"severity": "medium",
"structured": {
"id": "UBUNTU-CVE-2023-45286",
"aliases": [
"UBUNTU-CVE-2023-45286"
],
"metrics": [
{
"type": "CVSS_V3",
"score": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N"
},
{
"type": "Ubuntu",
"score": "medium"
}
],
"affected": [
{
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
}
]
}
],
"package": {
"name": "golang-github-go-resty-resty",
"purl": "pkg:deb/ubuntu/golang-github-go-resty-resty?arch=source&distro=jammy",
"ecosystem": "Ubuntu:22.04:LTS"
},
"versions": [
"2.4.0-1ubuntu1"
],
"database_specific": {
"source": "https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2023/UBUNTU-CVE-2023-45286.json"
},
"ecosystem_specific": {
"binaries": [
{
"binary_name": "golang-github-go-resty-resty-dev",
"binary_version": "2.4.0-1ubuntu1"
}
]
}
},
{
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
}
]
}
],
"package": {
"name": "golang-github-go-resty-resty",
"purl": "pkg:deb/ubuntu/golang-github-go-resty-resty?arch=source&distro=noble",
"ecosystem": "Ubuntu:24.04:LTS"
},
"versions": [
"2.4.0-1ubuntu1",
"2.10.0-1"
],
"database_specific": {
"source": "https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2023/UBUNTU-CVE-2023-45286.json"
},
"ecosystem_specific": {
"binaries": [
{
"binary_name": "golang-github-go-resty-resty-dev",
"binary_version": "2.10.0-1"
}
]
}
},
{
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
}
]
}
],
"package": {
"name": "golang-github-go-resty-resty",
"purl": "pkg:deb/ubuntu/golang-github-go-resty-resty?arch=source&distro=questing",
"ecosystem": "Ubuntu:25.10"
},
"versions": [
"2.10.0-1",
"2.10.0-2"
],
"database_specific": {
"source": "https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2023/UBUNTU-CVE-2023-45286.json"
},
"ecosystem_specific": {
"binaries": [
{
"binary_name": "golang-github-go-resty-resty-dev",
"binary_version": "2.10.0-2"
}
]
}
},
{
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
}
]
}
],
"package": {
"name": "golang-github-go-resty-resty",
"purl": "pkg:deb/ubuntu/golang-github-go-resty-resty?arch=source&distro=stonking",
"ecosystem": "Ubuntu:26.10"
},
"versions": [
"2.10.0-2"
],
"database_specific": {
"source": "https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2023/UBUNTU-CVE-2023-45286.json"
},
"ecosystem_specific": {
"binaries": [
{
"binary_name": "golang-github-go-resty-resty-dev",
"binary_version": "2.10.0-2"
}
]
}
},
{
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
}
]
}
],
"package": {
"name": "golang-github-go-resty-resty",
"purl": "pkg:deb/ubuntu/golang-github-go-resty-resty?arch=source&distro=resolute",
"ecosystem": "Ubuntu:26.04:LTS"
},
"versions": [
"2.10.0-2"
],
"database_specific": {
"source": "https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2023/UBUNTU-CVE-2023-45286.json"
},
"ecosystem_specific": {
"binaries": [
{
"binary_name": "golang-github-go-resty-resty-dev",
"binary_version": "2.10.0-2"
}
]
}
}
],
"modified": "2026-10-17T12:56:25.887593449Z",
"provider": "osv",
"upstream": [
"CVE-2023-45286"
],
"references": [
"https://ubuntu.com/security/CVE-2023-45286",
"https://github.com/go-resty/resty/issues/743",
"https://github.com/go-resty/resty/issues/739",
"https://github.com/go-resty/resty/pull/745",
"https://pkg.go.dev/vuln/GO-2023-2328",
"https://www.cve.org/CVERecord?id=CVE-2023-45286"
]
},
"related_cves": [
{
"value": "CVE-2023-45286",
"evidence": "/upstream"
}
],
"security_relevant": true,
"severity_evidence": "/severity/0/score"
},
"source_id": "core-osv",
"document_id": 355644,
"published_at": "2023-11-28T17:15:00+00:00"
}