curl / Docs / curl CVEs / FTP wildcard write callback mixup

CVE-2026-92388

FTP wildcard write callback mixup

Project curl Security Advisory, October 14 2026 Permalink

VULNERABILITY

When an FTP wildcard LIST operation fails, libcurl omits the restoration path meant for successful listings, leaving the write callback set to the internal listing parser and the write callback data pointing directly to the easy handle. Subsequent reuse of this handle triggers an immediate crash, and cloning it via curl_easy_duphandle() copies this corrupted state into the duplicate. If the original handle is subsequently freed, executing a transfer on the cloned handle causes a heap use-after-free read against the dangling handle reference; alternatively, reusing the original or cloned handle while changing only CURLOPT_WRITEDATA (and omitting CURLOPT_WRITEFUNCTION) results in type confusion, forcing the internal parser to interpret incoming server response bytes into memory at the application-supplied write data pointer.

INFO

This flaw needs CURLOPT_FTP_WILDCARD enabled to trigger.

The Common Vulnerabilities and Exposures (CVE) project has assigned the name CVE-2026-92388 to this issue.

CWE-416: Use After Free

Severity: Low

This bug is considered a C mistake (likely to have been avoided had we not been using C).

AFFECTED VERSIONS

libcurl is used by many applications, but not always advertised as such!

This flaw does not affect the curl command line tool.

SOLUTION

RECOMMENDATIONS

A - Upgrade curl to version 8.23.0

B - Apply the patch to your local version

C - Never reuse easy handles for or after FTP wildcard matches

TIMELINE

This issue was reported to the curl project on September 11, 2026.

curl 8.23.0 was released on October 14, 2026, coordinated with the publication of this advisory.

CREDITS

Thanks a lot!