Description
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.
Published: 2026-07-03
Score: 7.4 High
EPSS: < 1% Very Low
KEV: No
Impact: Man‑in‑the‑middle via SSH host key mismatch bypass
Action: Upgrade libcurl
AI Analysis

Impact

The CVE involves the libcurl library mis‑enforcing SSH host key validation when using the CURLOPT_SSH_KEYFUNCTION callback for SCP or SFTP transfers. When a server presents a host key type that does not match the type already recorded for that host in the known_hosts file, the callback silently allows the connection. This weakness, classified as CWE‑347, permits an attacker who controls an impersonating SSH server to conduct a man‑in‑the‑middle attack without the client being alerted.

Affected Systems

Any application that bundles the SFTP transfers with the CURLOPT_SSH_KEYFUNCTION callback is potentially vulnerable. The product is the c is provided, so administrators must verify whether their installed libcurl contains the flaw.

Risk and Exploitability

The CVSS score of 7.4 indicates high severity, while an EPSS score below 1 % The vulnerability is not listed in CISA KEV. Exploitation requires an attacker to impersonate an SSH server presenting a mismatched host key type; the client will accept the connection silently.

Generated by OpenCVE AI on September 21, 2026 at 07:09 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade to a libcurl release that correctly enforces host key validation.
  • If an upgrade is not immediately possible, callback with custom logic that verifies the key type against the known_hosts entry before initiating the transfer.
  • Disable SCP or SFTP transfers to untrusted hosts until the vulnerability is patched, or enforce manual confirmation of host keys prior to connection establishment.

Generated by OpenCVE AI on September 21, 2026 at 07:09 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Ubuntu USN Ubuntu USN USN-8487-1 curl vulnerabilities
History

Tue, 15 Sep 2026 06:45:00 +0000

Type Values Removed Values Added
Weaknesses CWE-297

Tue, 07 Jul 2026 00:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-347
References
Metrics threat_severity

None

threat_severity

Important


Mon, 06 Jul 2026 22:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-295
CWE-307

Mon, 06 Jul 2026 18:30:00 +0000

Type Values Removed Values Added
Metrics cvssV3_1

{'score': 7.4, 'vector': 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N'}

ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'poc', 'Technical Impact': 'total'}, 'version': '2.0.3'}


Mon, 06 Jul 2026 04:45:00 +0000

Type Values Removed Values Added
Weaknesses CWE-295
CWE-307

Sun, 05 Jul 2026 20:30:00 +0000

Type Values Removed Values Added
Weaknesses CWE-295

Sun, 05 Jul 2026 09:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-295

Sun, 05 Jul 2026 01:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-295

Sat, 04 Jul 2026 09:45:00 +0000

Type Values Removed Values Added
Weaknesses CWE-295

Fri, 03 Jul 2026 21:00:00 +0000

Type Values Removed Values Added
Weaknesses CWE-287

Fri, 03 Jul 2026 10:00:00 +0000

Type Values Removed Values Added
Weaknesses CWE-287

Fri, 03 Jul 2026 08:30:00 +0000

Type Values Removed Values Added
First Time appeared Curl
Curl curl
Vendors & Products Curl
Curl curl

Fri, 03 Jul 2026 06:45:00 +0000

Type Values Removed Values Added
Description 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.
Title SSH improper host validation
References

cve-icon MITRE

Status: PUBLISHED

Assigner: curl

Published:

Updated: 2026-09-15T06:03:34.802Z

Reserved: 2026-05-26T06:45:27.665Z

Link: CVE-2026-9547

cve-icon Vulnrichment

Updated: 2026-07-06T16:48:09.620Z

cve-icon NVD

Status : Modified

Published: 2026-07-03T07:16:25.990

Modified: 2026-09-15T07:16:35.310

Link: CVE-2026-9547

cve-icon Redhat

Severity : Important

Publid Date: 2026-07-03T06:18:44Z

Links: CVE-2026-9547 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-09-21T07:15:07Z

Weaknesses