From 8489521c0d7a9d1336b23a4a64e5df2d0f3ba57a Mon Sep 17 00:00:00 2001 From: Xi Wang Date: Fri, 25 Nov 2011 23:02:06 -0500 Subject: CVE-2012-4562: Fix possible integer overflow in ssh_get_hexa(). No exploit known, but it is better to check the string length. --- src/dh.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/dh.c b/src/dh.c index ec291d33..9b9d2039 100644 --- a/src/dh.c +++ b/src/dh.c @@ -44,6 +44,7 @@ #include #include #include +#include #ifndef _WIN32 #include @@ -194,6 +195,9 @@ char *ssh_get_hexa(const unsigned char *what, size_t len) { char *hexa = NULL; size_t i; + if (len > (UINT_MAX - 1) / 3) + return NULL; + hexa = malloc(len * 3 + 1); if (hexa == NULL) { return NULL; -- cgit