CVE-2020-15152
JavaScript vulnerability analysis and mitigation

Overview

ftp-srv is an npm package providing a modern and extensible FTP server designed to be simple yet configurable. In versions before 2.19.6, 3.1.2, and 4.3.4, the package was vulnerable to Server-Side Request Forgery (SSRF). The vulnerability was discovered and disclosed on August 17, 2020, affecting all versions from 1.0.0 through 4.3.3 (GitHub Advisory, NVD).

Technical details

The vulnerability stems from the FTP protocol's PORT command implementation. The PORT command, which is used for creating data connections, allowed arbitrary IP addresses to be specified. This could be exploited to cause the server to establish connections to unintended destinations. The vulnerability has been assigned a CVSS v3.1 base score of 9.1 (CRITICAL) with vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N (NVD).

Impact

If exploited, this vulnerability could allow an attacker to make the FTP server establish connections to arbitrary IP addresses. This could potentially be used for internal network scanning, data exfiltration, or as part of a larger attack chain. The high CVSS score reflects the critical nature of this security issue, particularly due to its potential for unauthorized access and information disclosure (GitHub Advisory).

Exploitability

The vulnerability is relatively straightforward to exploit as it requires no authentication (PR:N) and no user interaction (UI:N). An attacker only needs to send a specially crafted PORT command to the FTP server to trigger the vulnerable behavior (GitHub Advisory).

Mitigation and workarounds

The issue has been fixed in versions 2.19.6, 3.1.2, and 4.3.4. Users are strongly advised to upgrade to these or later versions. As a temporary workaround, users can block the PORT command through the configuration by adding it to the blacklist: const ftp = new FtpSrv({ blacklist: ['PORT'] }) (GitHub Advisory).

Additional resources


SourceThis report was generated using AI

Related JavaScript vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

CVE-2026-88062CRITICAL9.5
  • JavaScript logoJavaScript
  • omniroute
NoNoSep 10, 2026
CVE-2026-61534CRITICAL9.1
  • JavaScript logoJavaScript
  • yayson
NoYesSep 11, 2026
CVE-2026-59973HIGH8.5
  • JavaScript logoJavaScript
  • @frontmcp/adapters
NoYesSep 11, 2026
CVE-2026-59960HIGH7.5
  • JavaScript logoJavaScript
  • @argos-ci/core
NoYesSep 10, 2026
CVE-2026-59965HIGH7.1
  • JavaScript logoJavaScript
  • @jhb.software/payload-alt-text-plugin
NoNoSep 10, 2026

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management