When a libcurl-based application performs transfers via SCP:// or SFTP://
and utilizes the CURLOPT_SSH_KEYFUNCTION callback, it may silently accept an
untrusted server. This vulnerability occurs when a server presents a host key
type that does not match the specific key type already recorded for that host
in the known_hosts file. Instead of rejecting the mismatch, the callback
mechanism fails to properly enforce the restriction, allowing the connection
to succeed without warning and risking a potential man-in-the-middle attack.
{
"unresolved_ranges": [
{
"extracted_events": [
{
"introduced": "8.20.0"
},
{
"last_affected": "8.20.0"
},
{
"introduced": "8.19.0"
},
{
"last_affected": "8.19.0"
},
{
"introduced": "8.18.0"
},
{
"last_affected": "8.18.0"
},
{
"introduced": "8.17.0"
},
{
"last_affected": "8.17.0"
},
{
"introduced": "8.16.0"
},
{
"last_affected": "8.16.0"
},
{
"introduced": "8.15.0"
},
{
"last_affected": "8.15.0"
},
{
"introduced": "8.14.1"
},
{
"last_affected": "8.14.1"
},
{
"introduced": "8.14.0"
},
{
"last_affected": "8.14.0"
},
{
"introduced": "8.13.0"
},
{
"last_affected": "8.13.0"
},
{
"introduced": "8.12.1"
},
{
"last_affected": "8.12.1"
},
{
"introduced": "8.12.0"
},
{
"last_affected": "8.12.0"
},
{
"introduced": "8.11.1"
},
{
"last_affected": "8.11.1"
},
{
"introduced": "8.11.0"
},
{
"last_affected": "8.11.0"
},
{
"introduced": "8.10.1"
},
{
"last_affected": "8.10.1"
},
{
"introduced": "8.10.0"
},
{
"last_affected": "8.10.0"
},
{
"introduced": "8.9.1"
},
{
"last_affected": "8.9.1"
},
{
"introduced": "8.9.0"
},
{
"last_affected": "8.9.0"
},
{
"introduced": "8.8.0"
},
{
"last_affected": "8.8.0"
},
{
"introduced": "8.7.1"
},
{
"last_affected": "8.7.1"
},
{
"introduced": "8.7.0"
},
{
"last_affected": "8.7.0"
},
{
"introduced": "8.6.0"
},
{
"last_affected": "8.6.0"
},
{
"introduced": "8.5.0"
},
{
"last_affected": "8.5.0"
},
{
"introduced": "8.4.0"
},
{
"last_affected": "8.4.0"
},
{
"introduced": "8.3.0"
},
{
"last_affected": "8.3.0"
},
{
"introduced": "8.2.1"
},
{
"last_affected": "8.2.1"
},
{
"introduced": "8.2.0"
},
{
"last_affected": "8.2.0"
},
{
"introduced": "8.1.2"
},
{
"last_affected": "8.1.2"
},
{
"introduced": "8.1.1"
},
{
"last_affected": "8.1.1"
},
{
"introduced": "8.1.0"
},
{
"last_affected": "8.1.0"
},
{
"introduced": "8.0.1"
},
{
"last_affected": "8.0.1"
},
{
"introduced": "8.0.0"
},
{
"last_affected": "8.0.0"
},
{
"introduced": "7.88.1"
},
{
"last_affected": "7.88.1"
},
{
"introduced": "7.88.0"
},
{
"last_affected": "7.88.0"
},
{
"introduced": "7.87.0"
},
{
"last_affected": "7.87.0"
},
{
"introduced": "7.86.0"
},
{
"last_affected": "7.86.0"
},
{
"introduced": "7.85.0"
},
{
"last_affected": "7.85.0"
},
{
"introduced": "7.84.0"
},
{
"last_affected": "7.84.0"
},
{
"introduced": "7.83.1"
},
{
"last_affected": "7.83.1"
},
{
"introduced": "7.83.0"
},
{
"last_affected": "7.83.0"
},
{
"introduced": "7.82.0"
},
{
"last_affected": "7.82.0"
},
{
"introduced": "7.81.0"
},
{
"last_affected": "7.81.0"
},
{
"introduced": "7.80.0"
},
{
"last_affected": "7.80.0"
},
{
"introduced": "7.79.1"
},
{
"last_affected": "7.79.1"
},
{
"introduced": "7.79.0"
},
{
"last_affected": "7.79.0"
},
{
"introduced": "7.78.0"
},
{
"last_affected": "7.78.0"
},
{
"introduced": "7.77.0"
},
{
"last_affected": "7.77.0"
},
{
"introduced": "7.76.1"
},
{
"last_affected": "7.76.1"
},
{
"introduced": "7.76.0"
},
{
"last_affected": "7.76.0"
},
{
"introduced": "7.75.0"
},
{
"last_affected": "7.75.0"
},
{
"introduced": "7.74.0"
},
{
"last_affected": "7.74.0"
},
{
"introduced": "7.73.0"
},
{
"last_affected": "7.73.0"
},
{
"introduced": "7.72.0"
},
{
"last_affected": "7.72.0"
},
{
"introduced": "7.71.1"
},
{
"last_affected": "7.71.1"
},
{
"introduced": "7.71.0"
},
{
"last_affected": "7.71.0"
},
{
"introduced": "7.70.0"
},
{
"last_affected": "7.70.0"
},
{
"introduced": "7.69.1"
},
{
"last_affected": "7.69.1"
},
{
"introduced": "7.69.0"
},
{
"last_affected": "7.69.0"
}
],
"source": "AFFECTED_FIELD"
}
],
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/9xxx/CVE-2026-9547.json",
"cna_assigner": "curl"
}