LiveActive security incident?Get immediate response
CVE Record

CVE-2022-32221: When doing HTTP(S) transfers, libcurl might erroneously use the read callback (`CURLOPT_READFUNCTION`) to a...

When doing HTTP(S) transfers, libcurl might erroneously use the read callback (`CURLOPT_READFUNCTION`) to ask for data to send, even when the `CURLOPT_POSTFIELDS` option has been set, if the same handle previously was used to issue a `PUT` request which used that callback. This flaw may surprise the application and cause it to misbehave and either send off the wrong data or use memory after free or similar in the subsequent `POST` request. The problem exists in the logic for a reused handle when it is changed from a PUT to a POST.

CriticalCVSS 9.8Not KEV-listedUpdated
Glexia's TakeAutomated analysiscritical

Security readout for executives and security teams

Plain-English summary

libcurl could mix up how it sends data when an application reuses the same transfer handle. After a PUT using a read callback, a later POST configured with fixed POST data could still call the old callback. That can leak or send unintended data, or trigger memory-safety failures in the application.

Executive priority

Prioritize remediation where libcurl is embedded in internet-facing services, data-transfer platforms, agents, or appliances. The CVSS score is critical, but business urgency should be based on confirmed vulnerable versions and whether applications use the affected handle-reuse pattern.

Technical view

CVE-2022-32221 is POST-after-PUT state confusion in libcurl HTTP(S) transfers. A reused easy handle changed from PUT with CURLOPT_READFUNCTION to POST with CURLOPT_POSTFIELDS may erroneously request body data from the stale read callback. The source bundle says this is fixed in curl 7.86.0.

Likely exposure

Exposure is most likely in applications or appliances embedding libcurl and reusing handles across HTTP(S) PUT and POST workflows. Generic curl installation alone is not enough; the risky pattern depends on application use of CURLOPT_READFUNCTION, CURLOPT_POSTFIELDS, and handle reuse.

Exploitation context

The bundle marks KEV as false and provides no cited evidence of active exploitation. A public HackerOne report exists, and multiple vendors issued advisories, but exploitation likelihood depends on whether an application exposes attacker-influenced transfer sequencing or sensitive callback data.

Researcher notes

The key condition is a reused libcurl handle transitioning from PUT with a read callback to POST with CURLOPT_POSTFIELDS. Validate behavior without crafting weaponized payloads. Evidence in the bundle supports fixed version 7.86.0 and vendor backports, but not active exploitation.

Mitigation direction

  • Upgrade curl/libcurl to 7.86.0 or a vendor-fixed package.
  • Apply applicable OS or appliance advisories from Debian, Gentoo, Apple, or NetApp.
  • Check vendor guidance for embedded products that bundle libcurl.
  • Avoid risky handle reuse patterns until patched where application changes are practical.

Validation and detection

  • Inventory curl and libcurl versions across servers, containers, appliances, and packaged applications.
  • Identify applications using libcurl for HTTP(S) PUT and POST on reused handles.
  • Confirm patched vendor package versions are installed after remediation.
  • Review regression tests for POST-after-PUT workflows using CURLOPT_READFUNCTION and CURLOPT_POSTFIELDS.
Prepared
Confidence
high
Sources
10

Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.

Potential ATT&CK relevance

Conservative CVE-to-ATT&CK context

These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.

ATT&CK lookup starting points

Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.

cwe · medium confidence lookup

CWE-200: Information exposure and cloud metadata lookup

Information exposure and SSRF weaknesses can make discovery, cloud metadata, and credential material review relevant. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.

Open ATT&CK lookup
cve · low confidence lookup

CVE-2022-32221 mapping review

Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.

Open ATT&CK lookup
Vulnerability profileCVE Program record
Severity
Critical
CVSS
9.8 (3.1)
Known Exploited
No
Published

Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

Official CVE source material

CNA and ADP enrichment extracted from CVE v5

These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.

1CVSS vectors
0Timeline events
0ADP providers
9Source links

CVSS vector scores

1 official score

We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.

ScoreVersionSeverityVectorExploitImpactSource
9.8CVSS 3.1CriticalCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H3.95.9Primary CVE score

Vulnerability scoring details

Base CVSS 3.1 score

9.8Critical
CVSS 3.1 vector shape for CVE-2022-32221Attack VectorAttack ComplexityPrivileges RequiredUser InteractionScopeConfidentiality ImpactIntegrity ImpactAvailability Impact

Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

Attack Vector
NetworkAdjacentLocalPhysical
Attack Complexity
LowHigh
Privileges Required
NoneLowHigh
User Interaction
NoneRequired
Scope
ChangedUnchanged
Confidentiality Impact
HighLowNone
Integrity Impact
HighLowNone
Availability Impact
HighLowNone
Affected products

Products and packages named in the record

VendorProductVersion / packageStatus
n/ahttps://github.com/curl/curlFixed in 7.86.0Listed
Weakness

CWE details

CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.

CWE-200 · source CWE mapping

Exposure of Sensitive Information to an Unauthorized Actor

Exposure of Sensitive Information to an Unauthorized Actor represents a recurring weakness pattern that can create exploitable paths when design, validation, or implementation controls are missing.