Vulnerability Report - 4 findings in GNU Wget 1.25.0

Tristan <[email protected]> Sat, 27 Jun 2026 00:06:04 +0200
Newsgroups gmane.comp.web.wget.general
Message-ID <CAA1XrhOeUGDfVEM6xUm9m_BBLbVDyOo78F_=deu_eU655hzfCg@mail.gmail.com>
--000000000000cdcfb506552f52dd
Content-Type: text/plain; charset="UTF-8"

Hello,

I am writing to report 4 memory safety vulnerabilities in GNU Wget
1.25.0, all confirmed present at master HEAD on GNU Savannah (2026-06-20).
These cover the Metalink URL parser, HTTP Content-Range header handling,
iconv filename conversion, and HTML link conversion.

Summary of findings:

1. Heap buffer underread in clean_metalink_string() -- crash (CVSS 7.5)
2. Signed integer overflow in parse_content_range() -- UB/desync (CVSS 5.3)
3. Heap buffer overflow in convert_fname() iconv E2BIG handler (CVSS 6.1)
4. Integer overflow in html_quote_string() size counter (CVSS 5.9)

Findings #1 and #2 are triggered by a malicious server without user
interaction beyond initiating the download. Finding #3 requires
--remote-encoding or IRI mode. Finding #4 requires recursive download
with --convert-links and a very large HTML attribute.

All 4 have been lab-verified with AddressSanitizer and/or
UndefinedBehaviorSanitizer. Individual details are attached.

I would appreciate an acknowledgment of receipt and CVE assignment for
each confirmed finding.

Thank you and please let me know if you need anything else.

Regards,
Tristan

--000000000000cdcfb506552f52dd
Content-Type: text/plain; charset="US-ASCII"; name="vuln-3-iconv-heap-overflow.txt"
Content-Disposition: attachment; filename="vuln-3-iconv-heap-overflow.txt"
Content-Transfer-Encoding: base64
Content-ID: <f_mqvhbok42>
X-Attachment-Id: f_mqvhbok42

R05VIFdnZXQgMS4yNS4wIC0tIEhlYXAgQnVmZmVyIE92ZXJmbG93IGluIGNvbnZlcnRfZm5hbWUo
KSBpY29udiBFMkJJRyBIYW5kbGVyCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CkNWU1MgMy4xOiA2
LjEgKEFWOk4vQUM6SC9QUjpOL1VJOlIvUzpVL0M6Ti9JOkwvQTpIKQpDV0U6IENXRS0xMjIgKEhl
YXAtYmFzZWQgQnVmZmVyIE92ZXJmbG93KQpBdXRoOiBOb25lIChyZXF1aXJlcyAtLXJlbW90ZS1l
bmNvZGluZyBvciBJUkkgd2l0aCBub24tVVRGLTggY29udGVudCkKVmVyc2lvbjogMS4yNS4wLCBt
YXN0ZXIgSEVBRCAoMjAyNi0wNi0yMCkKCkZpbGU6IHNyYy91cmwuYywgY29udmVydF9mbmFtZSgp
LCBsaW5lcyAxNjI0LTE2NjMKClJvb3QgQ2F1c2U6ClRoZSBFMkJJRyBlcnJvciBoYW5kbGVyIGlu
Y29ycmVjdGx5IGNhbGN1bGF0ZXMgYXZhaWxhYmxlIG91dHB1dCBzcGFjZSBhZnRlcgpyZWFsbG9j
YXRpb24uIEl0IHNldHMgb3V0bGVuIHRvIHRoZSB0b3RhbCBuZXcgYnVmZmVyIHNpemUgaW5zdGVh
ZCBvZiB0aGUKcmVtYWluaW5nIHNwYWNlIGZyb20gdGhlIHdyaXRlIHBvaW50ZXIuIFRoaXMgdGVs
bHMgaWNvbnYgdGhhdCBgZG9uZWAgbW9yZQpieXRlcyBhcmUgYXZhaWxhYmxlIHRoYW4gYWN0dWFs
bHkgZXhpc3QuCgogIGVsc2UgaWYgKGVycm5vID09IEUyQklHKQogICAgewogICAgICBkb25lID0g
bGVuOyAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIG9sZCB0b3RhbCBidWZmZXIgc2l6ZQog
ICAgICBsZW4gPSBvdXRsZW4gPSBkb25lICsgaW5sZW4gKiAyOyAgICAgIC8vIEJVRzogb3V0bGVu
ID0gdG90YWwsIG5vdCByZW1haW5pbmcKICAgICAgY29udmVydGVkX2ZuYW1lID0geHJlYWxsb2Mo
Y29udmVydGVkX2ZuYW1lLCBvdXRsZW4gKyAxKTsKICAgICAgcyA9IGNvbnZlcnRlZF9mbmFtZSAr
IGRvbmU7ICAgICAgICAgICAvLyB3cml0ZSBwb2ludGVyIGF0IG9sZCBlbmQKICAgIH0KCkFmdGVy
IHRoaXM6IGFjdHVhbCBzcGFjZSBmcm9tIHMgdG8gYnVmZmVyIGVuZCA9IGlubGVuKjIgYnl0ZXMu
CkJ1dCBvdXRsZW4gY2xhaW1zOiBkb25lICsgaW5sZW4qMiBieXRlcy4gT3ZlcmNsYWltID0gZG9u
ZSBieXRlcy4KaWNvbnYgd3JpdGVzIHBhc3QgdGhlIGJ1ZmZlciBieSB1cCB0byBgZG9uZWAgYnl0
ZXMuCgpEYXRhIEZsb3c6CiAgU2VydmVyIHByb3ZpZGVzIFVSTCB3aXRoIGNoYXJhY3RlcnMgZXhw
YW5kaW5nID4yeCB1bmRlciBpY29udgogIChlLmcuLCBJU08tODg1OS0xIHRvIFdDSEFSX1Q6IDEg
Ynl0ZSAtPiA0IGJ5dGVzKQogIC0+IGNvbnZlcnRfZm5hbWUoKSBpbml0aWFsIGJ1ZmZlciAoaW5s
ZW4qMikgaW5zdWZmaWNpZW50CiAgLT4gaWNvbnYgcmV0dXJucyBFMkJJRwogIC0+IEJ1Z2d5IHJl
YWxsb2M6IG91dGxlbiBvdmVyY2xhaW1zIGJ5IGBkb25lYCBieXRlcwogIC0+IE5leHQgaWNvbnYg
d3JpdGVzIHBhc3QgYnVmZmVyIGVuZAoKTGFiIFZlcmlmaWNhdGlvbjoKQWRkcmVzc1Nhbml0aXpl
cjogaGVhcC1idWZmZXItb3ZlcmZsb3cgV1JJVEUgb2Ygc2l6ZSAyMCBhdCAwIGJ5dGVzIGFmdGVy
CjMxLWJ5dGUgcmVnaW9uLiBUcmlnZ2VyZWQgd2l0aCBJU08tODg1OS0xIHRvIFdDSEFSX1QgY29u
dmVyc2lvbiAoNHgKZXhwYW5zaW9uIHJhdGlvIGZvcmNlcyBFMkJJRyBvbiBzbWFsbCBpbnB1dCku
Cg==
--000000000000cdcfb506552f52dd
Content-Type: text/plain; charset="US-ASCII"; name="vuln-4-html-quote-overflow.txt"
Content-Disposition: attachment; filename="vuln-4-html-quote-overflow.txt"
Content-Transfer-Encoding: base64
Content-ID: <f_mqvhbola3>
X-Attachment-Id: f_mqvhbola3

R05VIFdnZXQgMS4yNS4wIC0tIEludGVnZXIgT3ZlcmZsb3cgaW4gaHRtbF9xdW90ZV9zdHJpbmco
KSBMZWFkaW5nIHRvIEhlYXAgT3ZlcmZsb3cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
Q1ZTUyAzLjE6IDUuOSAoQVY6Ti9BQzpIL1BSOk4vVUk6Ui9TOlUvQzpOL0k6TC9BOkgpCkNXRTog
Q1dFLTE5MCAoSW50ZWdlciBPdmVyZmxvdykgbGVhZGluZyB0byBDV0UtMTIyIChIZWFwIEJ1ZmZl
ciBPdmVyZmxvdykKQXV0aDogTm9uZSAocmVxdWlyZXMgcmVjdXJzaXZlIGRvd25sb2FkIHdpdGgg
LS1jb252ZXJ0LWxpbmtzKQpWZXJzaW9uOiAxLjI1LjAsIG1hc3RlciBIRUFEICgyMDI2LTA2LTIw
KQoKRmlsZTogc3JjL2NvbnZlcnQuYywgaHRtbF9xdW90ZV9zdHJpbmcoKSwgbGluZXMgMTE3Ny0x
MjM1CgpSb290IENhdXNlOgpUaGUgb3V0cHV0IGJ1ZmZlciBzaXplIGNvdW50ZXIgaXMgZGVjbGFy
ZWQgYXMgYGludGAgKDMyLWJpdCBzaWduZWQpLiBFYWNoCnNwZWNpYWwgY2hhcmFjdGVyIGFkZHMg
NC02IHRvIHRoZSBjb3VudGVyLiBXaXRoIH4zNTggbWlsbGlvbiBzcGVjaWFsCmNoYXJhY3RlcnMg
KGUuZy4sIGAiYCBhZGRzIDYgZWFjaCksIHRoZSBjb3VudGVyIG92ZXJmbG93cyBJTlRfTUFYLCB3
cmFwcGluZwp0byBhIHNtYWxsIG9yIG5lZ2F0aXZlIHZhbHVlLiB4bWFsbG9jIHRoZW4gYWxsb2Nh
dGVzIGEgdGlueSBidWZmZXIsIGFuZCB0aGUKZXhwYW5zaW9uIGxvb3Agd3JpdGVzIHRoZSBmdWxs
IG91dHB1dCBwYXN0IGl0LgoKICBpbnQgaTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IC8vIDMyLWJpdCBzaWduZWQgY291bnRlcgogIGZvciAoaSA9IDA7ICpzOyBzKyssIGkrKykgewog
ICAgaWYgKCpzID09ICcmJykgIGkgKz0gNDsgICAgICAgICAgICAgLy8gNSB0b3RhbCBwZXIgJyYn
CiAgICBlbHNlIGlmICgqcyA9PSAnIicpIGkgKz0gNTsgICAgICAgICAvLyA2IHRvdGFsIHBlciAn
IicKICAgIGVsc2UgaWYgKCpzID09ICcgJykgaSArPSA0OyAgICAgICAgIC8vIDUgdG90YWwgcGVy
ICcgJwogICAgLi4uCiAgfQogIHJlcyA9IHhtYWxsb2MoaSArIDEpOyAgICAgICAgICAgICAgICAv
LyB1bmRlcnNpemVkIGFmdGVyIG92ZXJmbG93CgpEYXRhIEZsb3c6CiAgTWFsaWNpb3VzIHNlcnZl
ciByZXR1cm5zIEhUTUwgd2l0aCB+MzU4TUIgVVJMIGF0dHJpYnV0ZSBmaWxsZWQgd2l0aCAnIicK
ICAtPiB3Z2V0IGRvd25sb2FkcyBpbiByZWN1cnNpdmUgbW9kZSAoLXIpCiAgLT4gLS1jb252ZXJ0
LWxpbmtzIHRyaWdnZXJzIGh0bWxfcXVvdGVfc3RyaW5nKCkgb24gVVJMcyBub3QgZG93bmxvYWRl
ZAogIC0+IGludCBjb3VudGVyIHdyYXBzOiAzNTcsOTEzLDk0MiAqIDYgPSAyLDE0Nyw0ODMsNjUy
IC0+IC0yLDE0Nyw0ODMsNjQ0CiAgLT4geG1hbGxvYygtMiwxNDcsNDgzLDY0MykgaW50ZXJwcmV0
cyBhcyBodWdlIHNpemVfdCAtPiB4YWxsb2NfZGllIGNyYXNoCiAgLT4gT1Igb24gMzItYml0OiBh
bGxvY2F0ZXMgdGlueSBidWZmZXIgLT4gfjJHQiBoZWFwIG92ZXJmbG93CgpMYWIgVmVyaWZpY2F0
aW9uOgpBcml0aG1ldGljIGNvbmZpcm1lZDogMzU3LDkxMyw5NDIgJyInIGNoYXJzIHByb2R1Y2Ug
dHJ1ZSBjb3VudCAyLDE0Nyw0ODMsNjUyLAp3aGljaCB3cmFwcyB0byAtMiwxNDcsNDgzLDY0NCBh
cyBpbnQuIEV4cGFuc2lvbiB3b3VsZCB3cml0ZSAyLjE1R0IgaW50byBhCnRpbnkgYWxsb2NhdGlv
bi4K
--000000000000cdcfb506552f52dd
Content-Type: text/plain; charset="US-ASCII"; name="vuln-2-content-range-overflow.txt"
Content-Disposition: attachment; 
	filename="vuln-2-content-range-overflow.txt"
Content-Transfer-Encoding: base64
Content-ID: <f_mqvhboit1>
X-Attachment-Id: f_mqvhboit1

R05VIFdnZXQgMS4yNS4wIC0tIFNpZ25lZCBJbnRlZ2VyIE92ZXJmbG93IGluIHBhcnNlX2NvbnRl
bnRfcmFuZ2UoKQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KQ1ZTUyAzLjE6IDUuMyAoQVY6Ti9BQzpML1BSOk4vVUk6
Ti9TOlUvQzpOL0k6Ti9BOkwpCkNXRTogQ1dFLTE5MCAoSW50ZWdlciBPdmVyZmxvdyBvciBXcmFw
YXJvdW5kKQpBdXRoOiBOb25lIChtYWxpY2lvdXMgc2VydmVyIHJlc3BvbnNlKQpWZXJzaW9uOiAx
LjI1LjAsIG1hc3RlciBIRUFEICgyMDI2LTA2LTIwKQoKRmlsZTogc3JjL2h0dHAuYywgcGFyc2Vf
Y29udGVudF9yYW5nZSgpLCBsaW5lcyA5MTMtOTYwCgpSb290IENhdXNlOgpNYW51YWwgZGlnaXQt
YnktZGlnaXQgYWNjdW11bGF0aW9uIG9mIENvbnRlbnQtUmFuZ2UgaGVhZGVyIHZhbHVlcyBoYXMg
bm8Kb3ZlcmZsb3cgY2hlY2suIFNpbmNlIGBudW1gIGlzIHdnaW50IChpbnQ2NF90KSwgdmFsdWVz
IGV4Y2VlZGluZyBJTlQ2NF9NQVgKY2F1c2Ugc2lnbmVkIGludGVnZXIgb3ZlcmZsb3cgKHVuZGVm
aW5lZCBiZWhhdmlvcikuIENvbXBhcmUgd2l0aApDb250ZW50LUxlbmd0aCBwYXJzaW5nIHdoaWNo
IHByb3Blcmx5IHVzZXMgc3RyX3RvX3dnaW50L3N0cnRvbGwgKyBFUkFOR0UuCgogIGZvciAobnVt
ID0gMDsgY19pc2RpZ2l0KCpoZHIpOyBoZHIrKykKICAgIG51bSA9IDEwICogbnVtICsgKCpoZHIg
LSAnMCcpOyAgICAvLyBubyBvdmVyZmxvdyBjaGVjawoKRGF0YSBGbG93OgogIE1hbGljaW91cyBz
ZXJ2ZXIgc2VuZHM6IENvbnRlbnQtUmFuZ2U6IGJ5dGVzIDkyMjMzNzIwMzY4NTQ3NzU4MTAtLi4u
CiAgLT4gcGFyc2VfY29udGVudF9yYW5nZSgpIG92ZXJmbG93cyBpbnQ2NF90CiAgLT4gY29udGxl
biA9IGxhc3RfYnl0ZSAtIGZpcnN0X2J5dGUgKyAxIHByb2R1Y2VzIGFyYml0cmFyeSBpbnQ2NAog
IC0+IGZkX3JlYWRfYm9keSB1c2VzIGNvcnJ1cHRlZCBjb250bGVuIGZvciBkb3dubG9hZCBzaXpl
CiAgLT4gT24ga2VlcC1hbGl2ZTogaW5jb3JyZWN0IGNvbnRlbnQgZHJhaW5pbmcgLT4gcHJvdG9j
b2wgZGVzeW5jCgpMYWIgVmVyaWZpY2F0aW9uOgpVQlNhbjogInNpZ25lZCBpbnRlZ2VyIG92ZXJm
bG93OiA5OTk5OTk5OTk5OTk5OTk5OTkgKiAxMCBjYW5ub3QgYmUKcmVwcmVzZW50ZWQgaW4gdHlw
ZSAnbG9uZyBpbnQnIiAoMyBpbnN0YW5jZXMpLiBSZXN1bHRpbmcgZmlyc3RfYnl0ZQpiZWNvbWVz
IC05MjIzMzcyMDM2ODU0Nzc1ODA2Lgo=
--000000000000cdcfb506552f52dd
Content-Type: text/plain; charset="US-ASCII"; name="vuln-1-metalink-underread.txt"
Content-Disposition: attachment; filename="vuln-1-metalink-underread.txt"
Content-Transfer-Encoding: base64
Content-ID: <f_mqvhbogy0>
X-Attachment-Id: f_mqvhbogy0

R05VIFdnZXQgMS4yNS4wIC0tIEhlYXAgQnVmZmVyIFVuZGVycmVhZCBpbiBjbGVhbl9tZXRhbGlu
a19zdHJpbmcoKQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KQ1ZTUyAzLjE6IDcuNSAoQVY6Ti9BQzpML1BSOk4vVUk6
Ti9TOlUvQzpOL0k6Ti9BOkgpCkNXRTogQ1dFLTEyNSAoT3V0LW9mLWJvdW5kcyBSZWFkKQpBdXRo
OiBOb25lIChtYWxpY2lvdXMgc2VydmVyIHJlc3BvbnNlKQpWZXJzaW9uOiAxLjI1LjAsIG1hc3Rl
ciBIRUFEICgyMDI2LTA2LTIwKQoKRmlsZTogc3JjL21ldGFsaW5rLmMsIGNsZWFuX21ldGFsaW5r
X3N0cmluZygpLCBsaW5lcyAxMDQwLTEwNzMKClJvb3QgQ2F1c2U6ClRoZSBiYWNrd2FyZC1zY2Fu
bmluZyBsb29wIHRoYXQgc3RyaXBzIHRyYWlsaW5nIHdoaXRlc3BhY2UgaGFzIG5vIGxvd2VyCmJv
dW5kIGNoZWNrLiBXaGVuIHRoZSBpbnB1dCBzdHJpbmcgY29uc2lzdHMgZW50aXJlbHkgb2Ygd2hp
dGVzcGFjZSwgdGhlCmZvcndhcmQgc2NhbiBhZHZhbmNlcyBgYmVnYCBwYXN0IGFsbCBjb250ZW50
IHRvIHRoZSBOVUwgdGVybWluYXRvciwgdGhlbgp0aGUgYmFja3dhcmQgc2NhbiByZWFkcyBieXRl
cyBiZWZvcmUgYGJlZ2AgKGJlZm9yZSB0aGUgaGVhcCBhbGxvY2F0aW9uKS4KCiAgYmVnID0gKnN0
cjsKICB3aGlsZSAoKGMgPSAqYmVnKSAmJiAoYyA9PSAnXG4nIHx8IGMgPT0gJ1xyJyB8fCBjID09
ICdcdCcgfHwgYyA9PSAnICcpKQogICAgYmVnKys7ICAgICAgICAgICAgICAgICAgICAgICAvLyBh
bGwgd2hpdGVzcGFjZTogYmVnIHBvaW50cyB0byBOVUwKCiAgZW5kID0gYmVnOwogIHdoaWxlICgo
YyA9ICplbmQpICYmIChjICE9ICdccicpICYmIChjICE9ICdcbicpKQogICAgZW5kKys7ICAgICAg
ICAgICAgICAgICAgICAgICAvLyBleGl0cyBpbW1lZGlhdGVseSAoTlVMKQoKICBpZiAoKmVuZCA9
PSAnXDAnKQogICAgd2hpbGUgKChjID0gKihlbmQgLSAxKSkgJiYgKGMgPT0gJ1xuJyB8fCBjID09
ICdccicgfHwgYyA9PSAnXHQnIHx8IGMgPT0gJyAnKSkKICAgICAgZW5kLS07ICAgICAgICAgICAg
ICAgICAgICAgLy8gQlVHOiBubyBsb3dlciBib3VuZCwgcmVhZHMgYmVmb3JlIGFsbG9jYXRpb24K
CiAgbGVuID0gZW5kIC0gYmVnOyAgICAgICAgICAgICAgIC8vIHdyYXBzIHRvIGh1Z2Ugc2l6ZV90
IChiZWcgPiBlbmQpCiAgbmV3ID0geG1lbWR1cDAoYmVnLCBsZW4pOyAgICAgIC8vIHhhbGxvY19k
aWUoKSBvciBtYXNzaXZlIG1lbWNweQoKRGF0YSBGbG93OgogIE1hbGljaW91cyBzZXJ2ZXIgc2Vy
dmVzIE1ldGFsaW5rIFhNTCB3aXRoIGFsbC13aGl0ZXNwYWNlIDx1cmw+ICAgPC91cmw+CiAgLT4g
cmV0cmlldmVfZnJvbV9tZXRhbGluaygpIGNhbGxzIGNsZWFuX21ldGFsaW5rX3N0cmluZygmbXJl
cy0+dXJsKQogIC0+IGJhY2t3YXJkIHNjYW4gcmVhZHMgYmVmb3JlIGhlYXAgYnVmZmVyCiAgLT4g
d3JhcHBlZCBsZW4gY2F1c2VzIHhhbGxvY19kaWUoKSAoY3Jhc2gpCgpMYWIgVmVyaWZpY2F0aW9u
OgpBZGRyZXNzU2FuaXRpemVyOiBoZWFwLWJ1ZmZlci1vdmVyZmxvdyBSRUFEIG9mIHNpemUgMSwg
MSBieXRlIGJlZm9yZQo0LWJ5dGUgcmVnaW9uLiBDb25maXJtZWQgY3Jhc2ggb24gc3RyZHVwKCIg
ICAiKSBpbnB1dC4K
--000000000000cdcfb506552f52dd--