From: Philippe Antoine Date: Wed, 2 Oct 2024 18:39:26 +0000 (+0200) Subject: transform/base64: check for 0-sized buffer X-Git-Tag: suricata-8.0.0-beta1~820 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=40e97423b4caca909b4bc4423b87abb1753962d1;p=thirdparty%2Fsuricata.git transform/base64: check for 0-sized buffer So as to avoid undefined behavior with a 0-sized variable length array Ticket: #7296 --- diff --git a/src/detect-transform-base64.c b/src/detect-transform-base64.c index f8d8f6e241..e0fbdeeb44 100644 --- a/src/detect-transform-base64.c +++ b/src/detect-transform-base64.c @@ -141,6 +141,9 @@ static void TransformFromBase64Decode(InspectionBuffer *buffer, void *options) } decode_length = nbytes; } + if (decode_length == 0) { + return; + } uint32_t decoded_size = Base64DecodeBufferSize(decode_length); uint8_t decoded[decoded_size];