cve.bz

CVE-2026-126346

basic-ftp: Uncaught exception crashes the Node.js process when a password (or resumed-download path) contains CR/LF

5.9 mediumFix available

Medium (5.9) in patrickjuchli basic-ftp. Fixed in basic-ftp 6.2.3.

On this page
basic-ftp is an FTP client for Node.js. Prior to 6.2.3, FTPContext.send() throws when a command contains carriage return, line feed, or NUL characters, but calls made from response handlers execute synchronously inside the control socket's data event without an exception boundary. In Client.login(), an attacker-influenced password reaches the PASS command after a server sends a 331 response, and in a resumed download an attacker-influenced remote path reaches the RETR command after a 350 response to REST. The resulting exception does not reject client.access() or downloadTo(), escapes ordinary promise error handling, and terminates the Node.js process, while the validation guard still prevents command injection. This issue is fixed in version 6.2.3.

Severity

CVSS 3.1

5.9 medium
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H
CWEs
CWE-248 Uncaught Exception
CWE-755 Improper Handling of Exceptional Conditions
OWASP Top 10
A10:2025 Mishandling of Exceptional Conditions
Published
Modified
Assigned by
GitHub_M (CNA)
NVD analysis
Deferred: the NVD does not plan to analyze it
Record from
the NVD, synced

Ask an AI about this CVE

Show the promptExplain CVE-2026-126346 for an engineer deciding whether to act. Use https://cve.bz/api/public/cves/CVE-2026-126346?via=ask-ai-copy and https://cve.bz/cve/CVE-2026-126346?via=ask-ai-copy as the source of truth: what is affected and which versions fix it, whether it is in CISA KEV, public exploits, and its EPSS (an internet-wide 30-day estimate of exploitation activity, not a forecast for my systems). If they give no fixed versions, use the CVE record https://cveawg.mitre.org/api/cve/CVE-2026-126346 or the vendor advisory, not third-party mirrors. Tell me how to check whether I am affected and how to verify a fix. Cite the sources and say where they are uncertain.

Opens a third-party assistant; its answer is its own, not cve.bz's. The prompt holds only this CVE's id and public links.

Badge for a README or a site

CVE-2026-126346

An image that stays current: it is drawn from the data each time it is fetched (a host that proxies images, as GitHub does, may show its copy for a while). Markdown:

[![CVE-2026-126346](https://cve.bz/cve/badge/CVE-2026-126346.svg)](https://cve.bz/cve/CVE-2026-126346)

HTML:

<a href="https://cve.bz/cve/CVE-2026-126346"><img src="https://cve.bz/cve/badge/CVE-2026-126346.svg" alt="CVE-2026-126346"></a>

Affected

Versions

From the CNA's record in the CVE List.

ProductAffected
patrickjuchli basic-ftp< 6.2.3

Packages (OSV)

AdvisoryEcosystemPackageAffectedFixed in
GHSA-r4jh-29pc-gfqrnpmbasic-ftp<6.2.36.2.3

History

  1. The NVD deferred its analysis

Changes since this site first stored the record. The same for every record: /api/public/changes.

References

Check your stackJSON