Description
The retr.c:fd_read_body() function is called when processing OK responses. When the response is sent chunked in wget before 1.19.2, the chunk parser uses strtol() to read each chunk's length, but doesn't check that the chunk length is a non-negative number. The code then tries to read the chunk in pieces of 8192 bytes by using the MIN() macro, but ends up passing the negative chunk length to retr.c:fd_read(). As fd_read() takes an int argument, the high 32 bits of the chunk length are discarded, leaving fd_read() with a completely attacker controlled length argument. The attacker can corrupt malloc metadata after the allocated buffer.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| GNU Project | Wget | prior to 1.19.2 | — |
Fixed in Linux distributions
Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.
Debian
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Debian 14 | wget | 1.19.2-1 | — |
| Debian 13 | wget | 1.19.2-1 | — |
| Debian 12 | wget | 1.19.2-1 | — |
| Debian 9 | wget | 1.18-5+deb9u1 | DSA-4008-1 |
| Debian 8 | wget | 1.16-1+deb8u4 | DSA-4008-1 |
Show 1 more (older releases, extended support, other products)Fewer releases
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Debian 7 | wget | 1.13.4-3+deb7u5 | DLA-1149-1 |
Ubuntu
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu 16.04 LTS | wget | 1.17.1-1ubuntu1.3 | USN-3464-1 |
| Ubuntu 14.04 LTS | wget | 1.15-1ubuntu1.14.04.3 | USN-3464-1 |
Red Hat
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| RHEL 7 | wget | 1.14-15.el7_4.1 | RHSA-2017:3075 |
SUSE
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| SLES 12 SP3 | wget | 1.14-21.3.1 | SUSE-SU-2017:2871-2 |
| SLES 12 SP2 | wget | 1.14-21.3.1 | SUSE-SU-2017:2871-2, SUSE-SU-2017:2871-1 |
| SLES 12 SP1 | wget | 1.14-21.3.1 | SUSE-SU-2017:2871-2 |
| SLES 12 | wget | 1.14-21.3.1 | SUSE-SU-2017:2871-2 |
Show 4 more (older releases, extended support, other products)Fewer releases
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| SLES for SAP 12 SP3 | wget | 1.14-21.3.1 | SUSE-SU-2017:2871-2 |
| SLES for SAP 12 SP2 | wget | 1.14-21.3.1 | SUSE-SU-2017:2871-2 |
| SLES for SAP 12 SP1 | wget | 1.14-21.3.1 | SUSE-SU-2017:2871-2 |
| SUSE OpenStack Cloud 6 | wget | 1.14-21.3.1 | SUSE-SU-2017:2871-2 |
openSUSE
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| openSUSE Tumbleweed | wget | 1.21.1-2.2 | openSUSE-SU-2024:11510-1 |
Alpine
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Alpine v3.24 | wget | 1.19.2-r0 | — |
| Alpine v3.23 | wget | 1.19.2-r0 | — |
| Alpine v3.22 | wget | 1.19.2-r0 | — |
| Alpine v3.21 | wget | 1.19.2-r0 | — |
| Alpine v3.20 | wget | 1.19.2-r0 | — |
Show 16 more (older releases, extended support, other products)Fewer releases
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Alpine v3.19 | wget | 1.19.2-r0 | — |
| Alpine v3.18 | wget | 1.19.2-r0 | — |
| Alpine v3.17 | wget | 1.19.2-r0 | — |
| Alpine v3.16 | wget | 1.19.2-r0 | — |
| Alpine v3.15 | wget | 1.19.2-r0 | — |
| Alpine v3.14 | wget | 1.19.2-r0 | — |
| Alpine v3.13 | wget | 1.19.2-r0 | — |
| Alpine v3.12 | wget | 1.19.2-r0 | — |
| Alpine v3.11 | wget | 1.19.2-r0 | — |
| Alpine v3.10 | wget | 1.19.2-r0 | — |
| Alpine v3.9 | wget | 1.19.2-r0 | — |
| Alpine v3.8 | wget | 1.19.2-r0 | — |
| Alpine v3.7 | wget | 1.19.2-r0 | — |
| Alpine v3.6 | wget | 1.19.2-r0 | — |
| Alpine v3.5 | wget | 1.18-r3 | — |
| Alpine v3.4 | wget | 1.18-r2 | — |
Oracle Linux
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Oracle Linux 7 | wget | 1.14-15.el7_4.1 | ELSA-2017-3075 |
Advisories 8
- RHSA-2017:3075 Red Hat Security Advisory: wget security update Red Hat Security Advisories (RHSA) · Jul 1, 2026
- DSA-4008-1 wget - security update Debian Security (DSA / DLA) · Mar 9, 2026
- DLA-1149-1 wget - security update Debian Security (DSA / DLA) · Mar 9, 2026
- USN-3464-1 wget vulnerabilities Ubuntu Security Notices (USN) · Feb 10, 2026
- SUSE-SU-2017:2871-1 Security update for wget SUSE / openSUSE Security Updates · Feb 4, 2026
- openSUSE-SU-2024:11510-1 wget-1.21.1-2.2 on GA media SUSE / openSUSE Security Updates · Feb 4, 2026
- SUSE-SU-2017:2871-2 Security update for wget SUSE / openSUSE Security Updates · Feb 4, 2026
- ELSA-2017-3075 Important: wget security update (Oracle Linux 7) Oracle Linux Security Advisories (ELSA) · Oct 26, 2017
References
- https://www.viestintavirasto.fi/en/cybersecurity/vulnerabilities/2017/haavoittuvuus-2017-037.html
- 101590 vdb-entry
- GLSA-201711-06 vendor-advisory
- DSA-4008 vendor-advisory
- https://www.synology.com/support/security/Synology_SA_17_62_Wget
- http://git.savannah.gnu.org/cgit/wget.git/commit/?id=ba6b44f6745b14dce414761a8e4b35d31b176bba
- 1039661 vdb-entry
- RHSA-2017:3075 vendor-advisory