Your submission was sent successfully! Close

CVE-2021-22922

Published: 21 July 2021

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.

Priority

Medium

CVSS 3 base score: 6.5

Status

Package Release Status
curl
Launchpad, Ubuntu, Debian
bionic Not vulnerable
(code not compiled)
focal Not vulnerable
(code not compiled)
groovy Not vulnerable
(code not compiled)
hirsute Not vulnerable
(code not compiled)
impish Not vulnerable
(code not compiled)
jammy Not vulnerable
(code not compiled)
trusty Not vulnerable
(code not compiled)
upstream
Released (7.78.0)
xenial Not vulnerable
(code not compiled)

Notes

AuthorNote
mdeslaur
introduced in 7.27.0
per upstream "curl has completely removed the metalink feature
as of 7.78.0. No fix for this flaw will be produced by the curl
project. The fix for earlier versions is to rebuild curl
with the metalink support switched off!"
Ubuntu builds curl with metalink support switched off already.

References