Skip to main content

GNU Wget CVE-2026-15146

| EUVDEUVD-2026-42980 MEDIUM
2026-07-10 certcc GHSA-77jw-q7w3-q2hw
5.9
CVSS 3.1 · Vendor: certcc
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Control or compromise FTP server target fetches from
  2. Delivery
    Wget initiates FTP passive mode connection
  3. Exploit
    Inject crafted PASV response with internal IP:port
  4. Execution
    Wget opens data connection to internal target
  5. Impact
    Read or write to internal service as SSRF

Vulnerability Assessment

Exploitation Conditions

Exploitation requires that the victim machine is running GNU Wget version 1.25.0 or earlier and is fetching content either directly from an attacker-controlled FTP server in passive mode (the Wget default), or following an HTTP 301/302 redirect from any HTTP/HTTPS URL to an attacker-controlled ftp:// URL. No authentication or privileges on the victim machine are required. Exploitation is constrained by the following factors: (1) passive FTP mode must be active (default in most Wget builds, but can be disabled with --no-passive-ftp); (2) the attacker must control or compromise the FTP server - or an HTTP server in the redirect chain - that Wget connects to; (3) the Wget host must have network-level access to the internal IP/port embedded in the PASV response for the SSRF to reach a useful target; (4) SSVC classifies the attack as not automatable at scale, limiting mass-exploitation potential. The SSRF impact is bounded by the internal network reachability of the host running Wget.

Impact

The NVD-supplied CVSS base vector (CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L, score 5.9) contains a critical inconsistency: AV:L (Local attack vector) requires the attacker to have local access to the vulnerable system, yet the vulnerability description unambiguously describes an attack originating from a remote FTP server that the Wget client connects to over the network. The attack does not require local access to the victim machine. This suggests the NVD CVSS vector may be in error; a correct assessment likely places AV:N, which raises the practical severity above 5.9. SSVC signals corroborate measured concern: exploitation status is 'none,' the attack is not automatable at mass scale, and technical impact is only partial - suggesting opportunistic exploitation is not currently occurring. EPSS data is absent from available intelligence, preventing probability-of-exploitation comparison. No CISA KEV entry exists. Real-world risk is highest in environments where Wget fetches content from untrusted FTP servers in automated pipelines (CI/CD, cron-based download scripts, container build processes), especially on hosts with access to cloud metadata endpoints (169.254.169.254) or privileged internal services.

Exploit ScenarioDerived

An attacker sets up a malicious FTP server (or configures a web server to return a 302 redirect to ftp://attacker-server/) that a CI/CD pipeline or cron job uses Wget to fetch from. When Wget enters passive mode, the attacker's server returns a crafted PASV 227 response specifying 169.254.169.254:80 (the AWS/GCP/Azure Instance Metadata Service) as the data connection endpoint. Wget opens a TCP connection to the metadata service and the attacker receives the response content, potentially extracting cloud credentials or IAM role tokens. No public POC exploit has been identified at time of analysis.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.1% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Jul 10, 2026

GNU Wget's FTP passive mode implementation fails to validate the IP address returned in a server's PASV response, enabling a malicious FTP server - or any HTTP server issuing a redirect to an ftp:// URL - to redirect Wget's data connection to an arbitrary internal IP address and port. All Wget releases through 1.25.0 (prior to upstream commit 4f85853) are affected, exposing any host running Wget to server-side request forgery (SSRF) that can probe or interact with localhost services and internal network resources. No confirmed active exploitation exists (SSVC: exploitation none), and no public POC exploit has been identified at time of analysis; the NVD-provided CVSS attack vector (AV:L) appears inconsistent with the network-based attack mechanism and may be an error.

RemediationAI

Apply the upstream fix by building or installing a version of Wget that includes commit 4f85853f641863d5915786a8413e1a213726a62b from the Savannah repository (https://cgit.git.savannah.gnu.org/cgit/wget.git/commit/?id=4f85853f641863d5915786a8413e1a213726a62b); no formally tagged release version (e.g., 1.26.0) has been independently confirmed at time of analysis, so monitor the upstream project and distribution channels for a tagged release. Refer to CERT/CC VU#564823 (https://kb.cert.org/vuls/id/564823) for advisory updates. As an immediate compensating control, add the --no-passive-ftp flag to all Wget invocations in FTP contexts, which forces active mode and avoids PASV entirely (trade-off: active mode may fail through NAT or firewalls). Where FTP is not required, restrict scripts to HTTPS URLs to eliminate FTP exposure altogether. As a network-level control, apply egress firewall rules on hosts running Wget that block outbound TCP connections to RFC1918 space (10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16), loopback (127.0.0.0/8), and cloud metadata addresses (169.254.169.254) - this limits SSRF reach even if the vulnerability is triggered, though it may break legitimate internal downloads. Consider replacing Wget with curl in automated scripts, as curl includes built-in CURLOPT_FTP_SKIP_PASV_IP protection against this class of attack.

Affected VersionsENISA

Wget 0 ≤1.25.0 before commit 4f85853f641863d5915786a8413e1a213726a62b

Affects your stack

Find out whether the stacks and servers you run are on an affected version.

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

GNU Wget (cpe:2.3:a:gnu_wget:wget:*:*:*:*:*:*:*:*) is the GNU Project's command-line file retrieval utility, widely shipped by default across Linux distributions and embedded in Docker images, CI/CD pipelines, and build scripts. In FTP passive mode (PASV), the FTP protocol requires the server to return an IP address and port in the PASV 227 response for the client to connect to for data transfer. Wget's implementation trusts this IP address without verifying it matches the server's actual address - a well-known antipattern analogous to the historic FTP bounce attack. An attacker controlling an FTP endpoint (or an HTTP server returning a 302/301 redirect to an ftp:// URL) can embed an arbitrary IP:port (e.g., 127.0.0.1:8080, 169.254.169.254:80, or an internal RFC1918 address) in the PASV response, causing Wget to open a TCP data connection to that target. The resulting SSRF allows reading from or writing to internal services. No CWE is formally assigned in the NVD record, but the vulnerability maps closely to CWE-918 (Server-Side Request Forgery) and CWE-20 (Improper Input Validation). The upstream fix - which introduces PASV IP validation - is available at commit 4f85853f641863d5915786a8413e1a213726a62b in the Savannah git repository.

Know when Wget 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

Vendor (certcc) PRIMARY 5.9 MEDIUM
AV:L/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L
vuln.today AI 6.5 MEDIUM

AV:N because the attack originates from a remote server Wget connects to; no confidentiality, integrity, or availability impact beyond the SSRF data interaction itself.

3.1 AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N
4.0 AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:L/VA:N/SC:L/SI:N/SA:N
SUSE MEDIUM
Red Hat 5.9 MEDIUM

Primary rating from Vendor (certcc).

CVSS VectorVendor: certcc

Attack Vector
Local
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
Low
Integrity
Low
Availability
Low

Lifecycle Timeline

2
CVSS changed
Jul 10, 2026 - 20:22 NVD
5.9 (None) 5.9 (MEDIUM)
CVE Published
Jul 10, 2026 - 18:20 cve.org
UNKNOWN (no severity yet)

DescriptionCVE.org

GNU Wget does not validate the IP address provided by an FTP PASV response while operating in FTP passive mode. A malicious FTP server, or an HTTP server that redirects to an FTP URL, can exploit this behavior to redirect Wget’s data connection to an arbitrary IP address and port. This allows an attacker to forge server-side requests (SSRF) from the machine running Wget, potentially accessing localhost services or internal network resources.

Threat Intelligence Overview

EPSS Score
0.1%
Top 98% exploitable
Prevalence
High
GNU Wget ships by default in most Linux distributions
Social Media
1
Sightings
Data Quality
8 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment Vendor CIRCL GitHub VulDB

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.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.1%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation
None
System Exposure· derived
Small
Automatable
No
Human Impact· derived
High
Technical Impact
Partial

Priority Score

30
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +30
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Server-Side Request Forgery exploits applications that fetch remote resources based on user-supplied URLs.

More in Wget

View all
CVE-2014-4877 CRITICAL POC
9.3 Oct 29

Absolute path traversal vulnerability in GNU Wget before 1.16, when recursion is enabled, allows remote FTP servers to w

CVE-2016-4971 HIGH POC
8.8 Jun 30

GNU wget before 1.18 allows remote servers to write to arbitrary files by redirecting a request from HTTP to a crafted F

CVE-2017-13089 HIGH
8.8 Oct 27

The http.c:skip_short_body() function is called in some circumstances, such as when processing redirects. Rated high sev

CVE-2016-7098 HIGH POC
8.1 Sep 26

Race condition in wget 1.17 and earlier, when used in recursive or mirroring mode to download a single file, might allow

CVE-2018-20483 HIGH POC
7.8 Dec 26

set_file_metadata in xattr.c in GNU Wget before 1.20.1 stores a file's origin URL in the user.xdg.origin.url metadata at

CVE-2017-13090 HIGH
8.8 Oct 27

The retr.c:fd_read_body() function is called when processing OK responses. Rated high severity (CVSS 8.8), this vulnerab

CVE-2018-0494 MEDIUM POC
6.5 May 06

GNU Wget before 1.19.5 is prone to a cookie injection vulnerability in the resp_new function in http.c via a \r\n sequen

CVE-2017-6508 MEDIUM POC
6.1 Mar 07

CRLF injection vulnerability in the url_parse function in url.c in Wget through 1.19.1 allows remote attackers to inject

CVE-2019-5953 CRITICAL
9.8 May 17

Buffer overflow in GNU Wget 1.20.1 and earlier allows remote attackers to cause a denial-of-service (DoS) or may execute

CVE-2024-38428 CRITICAL
9.1 Jun 16

url.c in GNU Wget through 1.24.5 mishandles semicolons in the userinfo subcomponent of a URI, and thus there may be inse

CVE-2026-58469 HIGH
8.7 Jul 07

Denial of service in GNU Wget through 1.25.0 lets a malicious or compromised HTTP(S) server crash the client by serving

CVE-2026-94574 HIGH
7.8 Sep 22

Local cross-user code execution with privilege-escalation potential affects the Windows builds of GNU wget distributed b

Vendor StatusVendor

SUSE

Severity: Moderate
Product Status
Image SLES15-SP7-Azure-3P Image SLES15-SP7-Azure-Basic Image SLES15-SP7-Azure-Standard Image SLES15-SP7-BYOS-Azure Image SLES15-SP7-BYOS-GCE Image SLES15-SP7-CHOST-BYOS-Aliyun Image SLES15-SP7-CHOST-BYOS-Azure Image SLES15-SP7-CHOST-BYOS-GCE Image SLES15-SP7-CHOST-BYOS-GDC Image SLES15-SP7-CHOST-BYOS-SAP-CCloud Image SLES15-SP7-EC2 Image SLES15-SP7-EC2-ECS-HVM Image SLES15-SP7-GCE Image SLES15-SP7-HPC-Azure Image SLES15-SP7-HPC-BYOS-Azure Image SLES15-SP7-HPC-BYOS-EC2 Image SLES15-SP7-HPC-BYOS-GCE Image SLES15-SP7-Hardened-BYOS-Azure Image SLES15-SP7-Hardened-BYOS-EC2 Image SLES15-SP7-Hardened-BYOS-GCE Image SLES15-SP7-SAP-Azure Image SLES15-SP7-SAP-Azure-3P Image SLES15-SP7-SAP-BYOS-Azure Image SLES15-SP7-SAP-BYOS-EC2 Image SLES15-SP7-SAP-BYOS-GCE Image SLES15-SP7-SAP-GCE Image SLES15-SP7-SAP-Hardened-Azure Image SLES15-SP7-SAP-Hardened-BYOS-Azure Image SLES15-SP7-SAP-Hardened-BYOS-EC2 Image SLES15-SP7-SAP-Hardened-BYOS-GCE Image SLES15-SP7-SAP-Hardened-GCE Image SLES15-SP7-SAPCAL-Azure Image SLES15-SP7-SAPCAL-EC2 Image SLES15-SP7-SAPCAL-GCE Affected
SUSE Linux Enterprise Desktop 15 SP7 SUSE Linux Enterprise High Performance Computing 15 SP7 SUSE Linux Enterprise Module for Basesystem 15 SP7 SUSE Linux Enterprise Server 15 SP7 SUSE Linux Enterprise Server for SAP Applications 15 SP7 Fixed
SUSE Linux Enterprise High Performance Computing 15 SP4-ESPOS Fixed
SUSE Linux Enterprise High Performance Computing 15 SP4-LTSS Fixed
SUSE Linux Enterprise High Performance Computing 15 SP5-ESPOS Fixed

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy