From 2a0a6d57df3791419dfcda070d9ba6189f518bd5 Mon Sep 17 00:00:00 2001 From: Nikias Bassen Date: Mon, 1 Jul 2024 18:27:27 +0200 Subject: tools: Fix heap buffer overflow in ideviceimagemounter --- tools/ideviceimagemounter.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'tools/ideviceimagemounter.c') diff --git a/tools/ideviceimagemounter.c b/tools/ideviceimagemounter.c index 52b0666..511583e 100644 --- a/tools/ideviceimagemounter.c +++ b/tools/ideviceimagemounter.c @@ -377,8 +377,11 @@ int main(int argc, char **argv) fprintf(stderr, "Error opening signature file '%s': %s\n", image_sig_path, strerror(errno)); goto leave; } - fstat(fileno(f), &fst); - sig = malloc(sig_length); + if (fstat(fileno(f), &fst) != 0) { + fprintf(stderr, "Error: fstat: %s\n", strerror(errno)); + goto leave; + } + sig = malloc(fst.st_size); sig_length = fread(sig, 1, fst.st_size, f); fclose(f); if (sig_length == 0) { -- cgit v1.1-32-gdbae