From 9aff8afc62ae2bc6ee03fe0c1f6f9595bc6fe85f Mon Sep 17 00:00:00 2001 From: Victor Julien Date: Thu, 28 Mar 2024 15:09:31 +0100 Subject: [PATCH] util/file: add validation check for extreme data chunk sizes --- src/util-file.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/util-file.c b/src/util-file.c index a1c30d89ec..fdb8d740d8 100644 --- a/src/util-file.c +++ b/src/util-file.c @@ -662,6 +662,9 @@ static int FileStoreNoStoreCheck(File *ff) static int AppendData( const StreamingBufferConfig *sbcfg, File *file, const uint8_t *data, uint32_t data_len) { + DEBUG_VALIDATE_BUG_ON( + data_len > BIT_U32(26)); // 64MiB as a limit per chunk seems already excessive + SCLogDebug("file %p data_len %u", file, data_len); if (StreamingBufferAppendNoTrack(file->sb, sbcfg, data, data_len) != 0) { SCLogDebug("file %p StreamingBufferAppendNoTrack failed", file);