Skip to content
OpenAdvisories
Medium · 6.5 CVE-2021-22922 EUVD-2021-10051GHSA-975f-fvhv-8mhx

When curl is instructed to download content using the metalink feature, thecontents is verified against a hash provided in the metalink XML…

Published Aug 5, 2021 · Updated Oct 14, 2026 · Assigned by hackerone

Description

When curl is instructed to download content using the metalink feature, thecontents is verified against a hash provided in the metalink XML file.The metalink XML file points out to the client how to get the same contentfrom a set of different URLs, potentially hosted by different servers and theclient can then download the file from one or several of them. In a serial orparallel manner.If one of the servers hosting the contents has been breached and the contentsof the specific file on that server is replaced with a modified payload, curlshould detect this when the hash of the file mismatches after a completeddownload. It should remove the contents and instead try getting the contentsfrom another URL. This is not done, and instead such a hash mismatch is onlymentioned in text and the potentially malicious content is kept in the file ondisk.

Affected products

VendorProductAffectedFixed
— https://github.com/curl/curl curl 7.27.0 to and including 7.77.0 —

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.79.1-1 —
Debian 13 curl 7.79.1-1 —
Debian 12 curl 7.79.1-1 —
ReleasePackageFixed inAdvisory
RHEL 8 curl +3 7.61.1-18.el8_4.1 RHSA-2021:3582
Show 1 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
RHEL 8.2 EUS curl +3 7.61.1-12.el8_2.3 RHSA-2021:3903

Rocky Linux

Errata ↗
ReleasePackageFixed inAdvisory
Rocky Linux 8 curl 7.61.1-18.el8_4.1 RLSA-2021:3582
ReleasePackageFixed inAdvisory
SLES 15 SP3 curl 7.66.0-4.22.1 SUSE-SU-2021:2439-1
SLES 15 SP2 curl 7.66.0-4.22.1 SUSE-SU-2021:2439-1
SLES 15 SP1 curl 7.60.0-3.47.1 SUSE-SU-2021:2440-1
SLES 15 curl 7.60.0-3.47.1 SUSE-SU-2021:2440-1
SLES 12 SP5 curl 7.60.0-11.23.1 SUSE-SU-2021:2462-1
Show 15 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
SLES 12 SP4 curl 7.60.0-4.25.1 SUSE-SU-2021:2425-1
SLES 11 curl-openssl1 7.37.0-70.71.1 SUSE-SU-2021:14768-1
SLES for SAP 15 SP1 curl 7.60.0-3.47.1 SUSE-SU-2021:2440-1
SLES for SAP 15 curl 7.60.0-3.47.1 SUSE-SU-2021:2440-1
SLES for SAP 12 SP5 curl 7.60.0-11.23.1 SUSE-SU-2021:2462-1
SLES for SAP 12 SP4 curl 7.60.0-4.25.1 SUSE-SU-2021:2425-1
SLE Micro 5.0 curl 7.66.0-4.22.1 SUSE-SU-2021:2439-1
SLE HPC 15 SP1 curl 7.60.0-3.47.1 SUSE-SU-2021:2440-1
SLE HPC 15 curl 7.60.0-3.47.1 SUSE-SU-2021:2440-1
SUSE OpenStack Cloud Crowbar 9 curl 7.60.0-4.25.1 SUSE-SU-2021:2425-1
SUSE OpenStack Cloud 9 curl 7.60.0-4.25.1 SUSE-SU-2021:2425-1
SUSE Manager Server 4.0 curl 7.60.0-3.47.1 SUSE-SU-2021:2440-1
SUSE Manager Retail Branch Server 4.0 curl 7.60.0-3.47.1 SUSE-SU-2021:2440-1
SUSE Manager Proxy 4.0 curl 7.60.0-3.47.1 SUSE-SU-2021:2440-1
SUSE Enterprise Storage 6 curl 7.60.0-3.47.1 SUSE-SU-2021:2440-1
ReleasePackageFixed inAdvisory
openSUSE Tumbleweed curl 7.79.1-1.1 openSUSE-SU-2024:10582-1
openSUSE Leap 15.3 curl 7.66.0-4.22.1 openSUSE-SU-2021:2439-1
openSUSE Leap 15.2 curl +1 7.66.0-lp152.3.21.1 openSUSE-SU-2021:1088-1
ReleasePackageFixed inAdvisory
Alpine v3.24 curl 7.78.0-r0 —
Alpine v3.23 curl 7.78.0-r0 —
Alpine v3.22 curl 7.78.0-r0 —
Alpine v3.21 curl 7.78.0-r0 —
Alpine v3.20 curl 7.78.0-r0 —
Show 8 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
Alpine v3.19 curl 7.78.0-r0 —
Alpine v3.18 curl 7.78.0-r0 —
Alpine v3.17 curl 7.78.0-r0 —
Alpine v3.16 curl 7.78.0-r0 —
Alpine v3.15 curl 7.78.0-r0 —
Alpine v3.14 curl 7.78.0-r0 —
Alpine v3.13 curl 7.78.0-r0 —
Alpine v3.12 curl 7.78.0-r0 —

Amazon Linux

ReleasePackageFixed inAdvisory
Amazon Linux 2 curl +2 7.76.1-7.amzn2.0.2 ALAS2-2021-1700

Azure Linux

ReleasePackageFixed inAdvisory
Azure Linux 2 (CBL-Mariner) curl 7.76.0-5 —

Oracle Linux

ReleasePackageFixed inAdvisory
Oracle Linux 8 curl +3 7.61.1-18.el8_4.1 ELSA-2021-3582

Advisories 22

References