- 264 license table entries with exact download URLs (224/264 resolved) - Complete sources/ directory with all BitBake recipes - Build configuration: tqma6ul-multi-mba6ulx, spaetzle (musl) - Full traceability for Softwarefreigabeantrag - GCC 13.4.0, Linux 6.6.102, U-Boot 2023.04, musl 1.2.4 - License distribution: GPL-2.0 (24), MIT (23), GPL-2.0+ (18), BSD-3 (16)
48 lines
1.5 KiB
Diff
48 lines
1.5 KiB
Diff
From 50ab41c3628dedeca1a331dd86dd203b73faea74 Mon Sep 17 00:00:00 2001
|
|
From: Richard Weinberger <richard@nod.at>
|
|
Date: Fri, 2 Aug 2024 12:08:45 +0200
|
|
Subject: [PATCH 5/8] dlmalloc: Fix integer overflow in sbrk()
|
|
|
|
Make sure that the new break is within mem_malloc_start
|
|
and mem_malloc_end before making progress.
|
|
ulong new = old + increment; can overflow for extremely large
|
|
increment values and memset() can get wrongly called.
|
|
|
|
Signed-off-by: Richard Weinberger <richard@nod.at>
|
|
Reviewed-by: Simon Glass <sjg@chromium.org>
|
|
|
|
CVE: CVE-2024-57258
|
|
Upstream-Status: Backport [https://source.denx.de/u-boot/u-boot/-/commit/0a10b49206a29b4aa2f80233a3e53ca0466bb0b3]
|
|
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
|
|
---
|
|
common/dlmalloc.c | 6 +++---
|
|
1 file changed, 3 insertions(+), 3 deletions(-)
|
|
|
|
diff --git a/common/dlmalloc.c b/common/dlmalloc.c
|
|
index de3f0422..bae2a27c 100644
|
|
--- a/common/dlmalloc.c
|
|
+++ b/common/dlmalloc.c
|
|
@@ -591,6 +591,9 @@ void *sbrk(ptrdiff_t increment)
|
|
ulong old = mem_malloc_brk;
|
|
ulong new = old + increment;
|
|
|
|
+ if ((new < mem_malloc_start) || (new > mem_malloc_end))
|
|
+ return (void *)MORECORE_FAILURE;
|
|
+
|
|
/*
|
|
* if we are giving memory back make sure we clear it out since
|
|
* we set MORECORE_CLEARS to 1
|
|
@@ -598,9 +601,6 @@ void *sbrk(ptrdiff_t increment)
|
|
if (increment < 0)
|
|
memset((void *)new, 0, -increment);
|
|
|
|
- if ((new < mem_malloc_start) || (new > mem_malloc_end))
|
|
- return (void *)MORECORE_FAILURE;
|
|
-
|
|
mem_malloc_brk = new;
|
|
|
|
return (void *)old;
|
|
--
|
|
2.34.1
|
|
|