Skip to content
OpenAdvisories
Medium · 6.5 CVE-2017-1000100 EUVD-2017-1404GHSA-86r8-52rx-6jcr

When doing a TFTP transfer and curl/libcurl is given a URL that contains a very long file name (longer than about 515 bytes), the file name…

Published Oct 4, 2017 · Updated Apr 16, 2026 · Assigned by mitre

Description

When doing a TFTP transfer and curl/libcurl is given a URL that contains a very long file name (longer than about 515 bytes), the file name is truncated to fit within the buffer boundaries, but the buffer size is still wrongly updated to use the untruncated length. This too large value is then used in the sendto() call, making curl attempt to send more data than what is actually put into the buffer. The endto() function will then read beyond the end of the heap based buffer. A malicious HTTP(S) server could redirect a vulnerable libcurl-using client to a crafted TFTP URL (if the client hasn't restricted which protocols it allows redirects to) and trick it to send private memory contents to a remote server over UDP. Limit curl's redirect protocols with --proto-redir and libcurl's with CURLOPT_REDIR_PROTOCOLS.

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.

ReleasePackageFixed inAdvisory
Debian 14 curl 7.55.0-1 —
Debian 13 curl 7.55.0-1 —
Debian 12 curl 7.55.0-1 —
Debian 9 curl 7.52.1-5+deb9u1 DSA-3992-1
Debian 8 curl 7.38.0-4+deb8u6 DSA-3992-1
Show 1 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
Debian 7 curl 7.26.0-1+wheezy20 DLA-1062-1
ReleasePackageFixed inAdvisory
Ubuntu 16.04 LTS curl 7.47.0-1ubuntu2.3 USN-3441-1
Ubuntu 14.04 LTS curl 7.35.0-1ubuntu2.11 USN-3441-1
ReleasePackageFixed inAdvisory
RHEL 3 httpd24-curl +2 7.61.1-1.el6 RHSA-2018:3558
RHEL 3 httpd24-httpd +5 2.4.34-7.el6 RHSA-2018:3558
RHEL 3 httpd24-mod_md 2.4.34-7.el7 RHSA-2018:3558
RHEL 3 httpd24-mod_ssl +1 1:2.4.34-7.el6 RHSA-2018:3558
RHEL 3 httpd24-nghttp2 +2 1.7.1-7.el6 RHSA-2018:3558
ReleasePackageFixed inAdvisory
SLES 12 SP3 curl 7.37.0-37.3.1 SUSE-SU-2017:2174-1
SLES 12 SP2 curl 7.37.0-37.3.1 SUSE-SU-2017:2174-1
SLES 11 SP4 curl 7.19.7-1.70.3.1 SUSE-SU-2017:2312-1
SLES 11 curl-openssl1 7.19.7-1.70.3.1 SUSE-SU-2017:2312-1
Show 4 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
SUSE Studio Onsite 1.3 curl 7.19.7-1.20.53.3.1 SUSE-SU-2017:2354-1
SLES for SAP 12 SP3 curl 7.37.0-37.3.1 SUSE-SU-2017:2174-1
SLES for SAP 12 SP2 curl 7.37.0-37.3.1 SUSE-SU-2017:2174-1
SLES for SAP 11 SP4 curl 7.19.7-1.70.3.1 SUSE-SU-2017:2312-1
ReleasePackageFixed inAdvisory
openSUSE Tumbleweed curl 7.79.1-1.1 openSUSE-SU-2024:10582-1
ReleasePackageFixed inAdvisory
Alpine v3.24 curl 7.55.0-r0 —
Alpine v3.23 curl 7.55.0-r0 —
Alpine v3.22 curl 7.55.0-r0 —
Alpine v3.21 curl 7.55.0-r0 —
Alpine v3.20 curl 7.55.0-r0 —
Show 17 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
Alpine v3.19 curl 7.55.0-r0 —
Alpine v3.18 curl 7.55.0-r0 —
Alpine v3.17 curl 7.55.0-r0 —
Alpine v3.16 curl 7.55.0-r0 —
Alpine v3.15 curl 7.55.0-r0 —
Alpine v3.14 curl 7.55.0-r0 —
Alpine v3.13 curl 7.55.0-r0 —
Alpine v3.12 curl 7.55.0-r0 —
Alpine v3.11 curl 7.55.0-r0 —
Alpine v3.10 curl 7.55.0-r0 —
Alpine v3.9 curl 7.55.0-r0 —
Alpine v3.8 curl 7.55.0-r0 —
Alpine v3.7 curl 7.55.0-r0 —
Alpine v3.6 curl 7.55.0-r0 —
Alpine v3.5 curl 7.55.0-r0 —
Alpine v3.4 curl 7.55.0-r0 —
Alpine v3.3 curl 7.55.0-r0 —

Advisories 13

References