Vulnerability · Published Sep 30, 2026 · Assigned by GitHub_M
CVE-2026-102990basic-ftp: Quadratic-time CPU denial of service in Client.list() Unix directory-listing parser (RE_LINE backtracking)
High 8.2
In plain English
A high-severity regular-expression denial of service in basic-ftp from patrickjuchli. Proof-of-concept exploit code is public. The chance it is exploited in the next 30 days is estimated at 0.4% (higher than 31% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.
Official description
basic-ftp is an FTP client for Node.js. Prior to 6.2.1, Client.list() can be forced by a malicious or compromised FTP server to spend quadratic CPU time parsing a directory listing because the RE_LINE expression in src/parseListUnix.ts backtracks across adjacent variable-length owner and group fields when a long Unix-style line has a valid prefix but cannot satisfy the later size and date fields. parseList() selects a parser from the last nonblank line and then applies it to every line, so a normal final line can select the Unix parser while an earlier crafted line blocks the Node.js event loop and freezes the process. This issue is fixed in version 6.2.1.
Affected packages & fixed versions
| Ecosystem | Package | Fixed in | Advisory |
|---|---|---|---|
| Debian:13 | node-proxy-agents | no fix listed | DEBIAN-CVE-2026-102990 |
| Debian:14 | node-proxy-agents | 0~2025070717+~cs16.2.9-1 | DEBIAN-CVE-2026-102990 |
| Ubuntu:24.04:LTS | node-proxy-agents | no fix listed | UBUNTU-CVE-2026-102990 |
| Ubuntu:26.04:LTS | node-proxy-agents | no fix listed | UBUNTU-CVE-2026-102990 |
| Ubuntu:26.10 | node-proxy-agents | no fix listed | UBUNTU-CVE-2026-102990 |
| npm | basic-ftp | 6.2.1 | GHSA-c475-qrg2-pj4r |
Affected products (as reported)
| Vendor | Product | Versions |
|---|---|---|
| patrickjuchli | basic-ftp | < 6.2.1 |
Weakness: CWE-1333 · Vector: CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N