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.
{
"versions": [
{
"introduced": "7.27.0"
},
{
"fixed": "7.78.0"
}
]
}{
"versions": [
{
"introduced": "8.0.0"
},
{
"last_affected": "8.0.26"
},
{
"introduced": "0"
},
{
"last_affected": "9.1.0"
}
]
}"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2021-22922.json"
[
{
"events": [
{
"introduced": "0"
},
{
"last_affected": "33"
}
]
},
{
"events": [
{
"introduced": "5.7.0"
},
{
"last_affected": "5.7.35"
}
]
},
{
"events": [
{
"introduced": "0"
},
{
"fixed": "1.0.1.1"
}
]
},
{
"events": [
{
"introduced": "8.2.0"
},
{
"fixed": "8.2.12"
}
]
},
{
"events": [
{
"introduced": "9.0.0"
},
{
"fixed": "9.0.6"
}
]
}
]