d780b0
From f06cf3a20dc3f54b7a9fc8127eb7719462caab39 Mon Sep 17 00:00:00 2001
d780b0
From: Kamil Dudka <kdudka@redhat.com>
d780b0
Date: Tue, 19 Mar 2019 13:32:05 +0100
d780b0
Subject: [PATCH] Resolves: CVE-2019-3858 - fix zero-byte allocation
d780b0
d780b0
... with a specially crafted SFTP packet leading to an out-of-bounds read
d780b0
d780b0
Upstream-Patch: https://libssh2.org/1.8.0-CVE/CVE-2019-3858.patch
d780b0
---
d780b0
 src/sftp.c | 4 ++++
d780b0
 1 file changed, 4 insertions(+)
d780b0
d780b0
diff --git a/src/sftp.c b/src/sftp.c
d780b0
index 7c44116..65cef85 100644
d780b0
--- a/src/sftp.c
d780b0
+++ b/src/sftp.c
d780b0
@@ -345,6 +345,10 @@ sftp_packet_read(LIBSSH2_SFTP *sftp)
d780b0
                 return _libssh2_error(session,
d780b0
                                       LIBSSH2_ERROR_CHANNEL_PACKET_EXCEEDED,
d780b0
                                       "SFTP packet too large");
d780b0
+            if (sftp->partial_len == 0)
d780b0
+                return _libssh2_error(session,
d780b0
+                                      LIBSSH2_ERROR_ALLOC,
d780b0
+                                      "Unable to allocate empty SFTP packet");
d780b0
 
d780b0
             _libssh2_debug(session, LIBSSH2_TRACE_SFTP,
d780b0
                            "Data begin - Packet Length: %lu",
d780b0
-- 
d780b0
2.17.2
d780b0