Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessOperator connects FTP client to rogue server
-
ExploitServer returns crafted 227 PASV IP:port
-
ImpactClient opens TCP to attacker-chosen host (SSRF)
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V4 - API and Web Service URL allowlisting, SSRF prevention
MITRE ATT&CK
2 techniques across 2 tactics: Initial Access, Credential Access The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires an operator to actively drive a Metasploit FTP client module into passive mode (PASV or EPSV) against an attacker-controlled or compromised FTP server; the vulnerable path trusts the IP octets in the server's 227/229 response and connects there instead of the control-connection host. The attacker-side server needs no authentication, but exploitation is limited by the required operator-initiated interaction (UI:R) - the victim must choose to connect to the rogue server - and impact is bounded to initiating an outbound TCP connection to an arbitrary host:port (blind/semi-blind SSRF), with no data read, modification, or availability loss beyond that connection. |
| Impact | This is a moderate-severity, low-priority SSRF (CWE-918) in the Metasploit Framework's FTP client libraries, confirmed by the provided CVSS vector CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:N/A:N (base 4.7, Medium). The signals are internally consistent and point to limited real-world risk: although AV:N/PR:N indicate a network-reachable, server-side-unauthenticated trigger, UI:R is the key limiter - a human operator must actively initiate an FTP session to a rogue or compromised server before the flaw fires, so this cannot be driven as a mass, automated campaign. S:C (scope change) correctly reflects that the coerced connection leaves the FTP client's own authority and reaches an attacker-chosen host, but impact is capped at C:L with I:N/A:N, i.e. a largely blind/semi-blind outbound TCP connection rather than data theft or code execution. No EPSS score, CISA KEV entry, or POC flag was supplied in the intelligence, so there is no evidence of active exploitation or weaponization; the only artifact is the Rapid7 patch PR itself. The affected component is a penetration-testing tool rather than production infrastructure, further lowering practical priority. Bottom line: a legitimate but low-urgency fix - patch on a normal cycle; this is a high-plausibility-but-low-impact issue, not an emergency. |
| Exploit ScenarioDerived | An attacker stands up (or compromises) a malicious FTP server and lures a Metasploit operator into pointing an FTP-using module at it. When the client issues PASV/EPSV, the rogue server returns a 227/229 response advertising an arbitrary IP:port (e.g. an internal 169.254/10.x host), and the operator's machine dutifully opens a TCP connection to that target, yielding blind SSRF/port-probing from the operator's network position. No public exploit identified at time of analysis, though the Rapid7 pull request documents the exact vulnerable parsing path. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 21, 2026
Server-side request forgery in the Metasploit Framework FTP client libraries lets a rogue or compromised FTP server redirect an operator's data connection to an arbitrary host and port by supplying a crafted 227 PASV (or 229 EPSV) response. The flaw affects Metasploit Framework builds containing the pre-fix lib/metasploit/framework/ftp/client.rb, lib/msf/core/exploit/remote/ftp.rb, and lib/rex/proto/ftp/client.rb code, and is rated CVSS 4.7 (Medium) with UI:R because the operator must actively connect to the malicious server. No public exploit identified at time of analysis; exploitation yields blind outbound TCP connectivity only, consistent with C:L/I:N/A:N.
RemediationAI
Apply the upstream fix from GitHub pull request #21994 (https://github.com/rapid7/metasploit-framework/pull/21994) or upgrade to a Metasploit Framework release that includes it; because the fix is delivered as a pull request rather than a tagged release, a released patched version is not independently confirmed. Until a patched build is deployed, operators should avoid driving FTP client modules into PASV or EPSV mode against untrusted, attacker-controlled, or compromised FTP servers, since that is the exploitation precondition (UI:R). As compensating controls, restrict outbound egress from the Metasploit host to only known FTP data hosts and ports and monitor the Metasploit process for unexpected outbound TCP connections; the trade-off is that strict egress rules can break legitimate passive-mode transfers and require per-module tuning. Relying on server-side allowlists or disabling PASV/EPSV in the client is not practical without code changes.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
FTP passive mode relies on the server telling the client where to connect: a 227 response contains six comma-separated octets encoding the data host and port (h1,h2,h3,h4,p1,p2), and the EPSV extension returns a port in a 229 response. The vulnerable Metasploit Framework client code parsed those values and passed the advertised IP directly to Rex::Socket::Tcp.create without checking it against the control connection peer, so a malicious server could force the operator's host to initiate a TCP connection to any address and port it chose. The root cause is CWE-918 (Server-Side Request Forgery): untrusted data from the server is used to construct a network connection without validation against the intended peer. The upstream fix (PR #21994) hardens parsing to require 1-3 digit octets, validates each value is within 0-255, rejects port 0, and replaces the advertised host with nsock.peerhost - the address of the control connection - for both PASV and EPSV paths, with warning messages when a mismatch is detected. The same changes also add nil-safe shutdown/close handling for prior data sockets.
Know when Metasploit gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:N/A:N
Rogue server needs no privileges (PR:N) but the operator must initiate the FTP session (UI:R); the coerced connection crosses into other hosts (S:C) with only limited, largely blind confidentiality impact (C:L).
Primary rating from Vendor (rapid7).
CVSS VectorVendor: rapid7
Lifecycle Timeline
1DescriptionCVE.org
The FTP client trusts the server's PASV response IP:port without validation against the control connection target. A rogue FTP server can specify any IP:port in the 227 Passive Mode response, causing the operator's machine to open a TCP connection to an arbitrary host.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Server-Side Request Forgery exploits applications that fetch remote resources based on user-supplied URLs.
More in Metasploit
View allRapid7's Metasploit msfvenom framework handles APK files in a way that allows for a malicious user to craft and publish
Rapid7 Metasploit Framework versions before 5.0.85 suffers from an instance of CWE-78: OS Command Injection, wherein the
The Metasploit Framework module "post/osx/gather/enum_osx module" is affected by a relative path traversal vulnerability
The Metasploit Framework module "auxiliary/admin/http/telpho10_credential_dump" module is affected by a relative path tr
Rapid7 Metasploit Framework suffers from an instance of CWE-22, Improper Limitation of a Pathname to a Restricted Direct
The web UI in Rapid7 Metasploit before 4.14.1-20170828 allows logout CSRF, aka R7-2017-22. Rated medium severity (CVSS 6
Cross-site Scripting (XSS) vulnerability in the 'notes' field of a discovered scan asset in Rapid7 Metasploit Pro allows
Cross-site Scripting (XSS) vulnerability in the 'host' field of a discovered scan asset in Rapid7 Metasploit Pro allows
Persistent code execution on a penetration tester's workstation is achievable through a relative path traversal (CWE-22)
Rapid7 Metasploit Pro installers prior to version 4.13.0-2017022101 contain a DLL preloading vulnerability, wherein it i
Routes used to stop running Metasploit tasks (either particular ones or all tasks) allowed GET requests. Rated low sever
All editions of Rapid7 Metasploit prior to version 4.13.0-2017020701 contain a directory traversal vulnerability in the
EUVD-2026-106875
GHSA-jjr5-6c72-j9r9
NVD
CVE.org
EPSS
Exploit-DB