[PATCH] libssh2: free fingerprint better
authorDaniel Stenberg <daniel@haxx.se>
Mon, 8 May 2023 12:33:54 +0000 (14:33 +0200)
committerCarlos Henrique Lima Melara <charlesmelara@riseup.net>
Fri, 15 Sep 2023 17:01:23 +0000 (18:01 +0100)
Reported-by: Wei Chong Tan
Closes #11088

Gbp-Pq: Name CVE-2023-28319.patch

lib/vssh/libssh2.c

index 4703eb572de52b349820a6d4da039b4aa28cb538..c5bbdd1f2c9458e922dc68fe278ab6f42c76f8b8 100644 (file)
@@ -723,11 +723,10 @@ static CURLcode ssh_check_fingerprint(struct Curl_easy *data)
      */
     if((pub_pos != b64_pos) ||
        strncmp(fingerprint_b64, pubkey_sha256, pub_pos)) {
-      free(fingerprint_b64);
-
       failf(data,
             "Denied establishing ssh session: mismatch sha256 fingerprint. "
             "Remote %s is not equal to %s", fingerprint_b64, pubkey_sha256);
+      free(fingerprint_b64);
       state(data, SSH_SESSION_FREE);
       sshc->actualcode = CURLE_PEER_FAILED_VERIFICATION;
       return sshc->actualcode;