A critical path traversal vulnerability, CVE-2025-69194, has been identified in GNU Wget2, the next-generation version of the widely used Wget command-line downloader. The flaw allows a malicious remote server to control where a downloaded file is saved on the client's filesystem. This can be abused to overwrite arbitrary files, including critical system files, user profiles, or SSH authorized_keys, which could lead to a full system compromise. Given that Wget2 is often used in automated scripts, build pipelines, and container images, this vulnerability poses a significant threat to a wide range of systems and automated processes.
CVE-2025-69194The vulnerability occurs because Wget2 fails to properly sanitize file paths provided in the server's response (e.g., in the Content-Disposition header or as part of a URL redirect). An attacker can craft a response containing path traversal sequences (e.g., ../..). A vulnerable Wget2 client would interpret this path and write the downloaded file outside of the intended destination directory. For example, an attacker could trick Wget2 into overwriting /home/user/.bashrc to execute commands on the user's next login, or overwrite /etc/shadow to cause a denial of service.
The vulnerability was disclosed on the oss-security mailing list. There is no evidence of active exploitation in the wild at this time. However, the simplicity of the exploit means that threat actors are likely to start incorporating it into their toolkits, especially for targeting automated systems like CI/CD pipelines that use Wget2 to fetch dependencies.
The impact of this vulnerability can range from moderate to critical, depending on the privileges of the user running Wget2 and the file that is overwritten.
.bashrc, .profile, or a cron job to execute arbitrary code./etc/passwd could render the system unusable./home/user/.ssh/authorized_keys could allow an attacker to gain SSH access to the system.Detection is best performed by analyzing server responses and filesystem activity.
| Type | Value | Description | Context | Confidence |
|---|---|---|---|---|
| network_traffic_pattern | HTTP responses with Content-Disposition headers containing ../ sequences |
This is a direct indicator of a path traversal attempt. | Web proxy logs, IDS/IPS | high |
| file_name | Files being written to unexpected locations by a wget2 process |
For example, wget2 writing to /etc/ or /home/user/.ssh/. |
File Integrity Monitoring (FIM), EDR logs | high |
| command_line_pattern | wget2 commands downloading from untrusted URLs |
Scrutinize automated scripts that use wget2 to download from non-vetted sources. | Script analysis, command-line logging | medium |
Content-Disposition headers containing path traversal characters.wget2. Ensure that they are only downloading files from trusted, well-vetted URLs.wget2 run as a dedicated, low-privilege user. This will limit the potential damage of an arbitrary file write, preventing the overwrite of critical system files.Update to a patched version of GNU Wget2 to remediate the path traversal flaw.
Run processes that use Wget2 with the lowest possible privileges to limit the impact of a file overwrite.
Run Wget2 within a container or sandbox with a restricted, read-only filesystem to prevent it from writing to sensitive host locations.

Cybersecurity professional with over 10 years of specialized experience in security operations, threat intelligence, incident response, and security automation. Expertise spans SOAR/XSOAR orchestration, threat intelligence platforms, SIEM/UEBA analytics, and building cyber fusion centers. Background includes technical enablement, solution architecture for enterprise and government clients, and implementing security automation workflows across IR, TIP, and SOC use cases.
Help others stay informed about cybersecurity threats