Message ID | 20250716094153.1698390-1-Deepesh.Varatharajan@windriver.com |
---|---|
State | Under Review |
Delegated to: | Steve Sakoman |
Headers | show |
Series | [walnascar,1/2] binutils: Fix CVE-2025-5245 | expand |
series LGTM On Wed, Jul 16, 2025 at 2:42 AM Varatharajan, Deepesh via lists.openembedded.org <deepesh.varatharajan=windriver.com@lists.openembedded.org> wrote: > > From: Deepesh Varatharajan <Deepesh.Varatharajan@windriver.com> > > PR32829, SEGV on objdump function debug_type_samep > u.kenum is always non-NULL, see debug_make_enum_type. > > Backport a patch from upstream to fix CVE-2025-5245 > Upstream-Status: Backport [https://sourceware.org/git/?p=binutils-gdb.git;a=patch;h=6c3458a8b7ee7d39f070c7b2350851cb2110c65a] > > Signed-off-by: Deepesh Varatharajan <Deepesh.Varatharajan@windriver.com> > --- > .../binutils/binutils-2.44.inc | 1 + > .../binutils/0018-CVE-2025-5245.patch | 38 +++++++++++++++++++ > 2 files changed, 39 insertions(+) > create mode 100644 meta/recipes-devtools/binutils/binutils/0018-CVE-2025-5245.patch > > diff --git a/meta/recipes-devtools/binutils/binutils-2.44.inc b/meta/recipes-devtools/binutils/binutils-2.44.inc > index e5df62b14e..a37f0bd27a 100644 > --- a/meta/recipes-devtools/binutils/binutils-2.44.inc > +++ b/meta/recipes-devtools/binutils/binutils-2.44.inc > @@ -42,5 +42,6 @@ SRC_URI = "\ > file://0017-CVE-2025-1181-2.patch \ > file://0016-CVE-2025-5244.patch \ > file://0016-CVE-2025-3198.patch \ > + file://0018-CVE-2025-5245.patch \ > " > S = "${WORKDIR}/git" > diff --git a/meta/recipes-devtools/binutils/binutils/0018-CVE-2025-5245.patch b/meta/recipes-devtools/binutils/binutils/0018-CVE-2025-5245.patch > new file mode 100644 > index 0000000000..d4b7d55966 > --- /dev/null > +++ b/meta/recipes-devtools/binutils/binutils/0018-CVE-2025-5245.patch > @@ -0,0 +1,38 @@ > +From: Alan Modra <amodra@gmail.com> > +Date: Tue, 1 Apr 2025 22:36:54 +1030 > + > +PR32829, SEGV on objdump function debug_type_samep > +u.kenum is always non-NULL, see debug_make_enum_type. > + > +Upstream-Status: Backport [https://sourceware.org/git/?p=binutils-gdb.git;a=commitdiff;h=6c3458a8b7ee7d39f070c7b2350851cb2110c65a] > +CVE: CVE-2025-5245 > + > +Signed-off-by: Deepesh Varatharajan <Deepesh.Varatharajan@windriver.com> > + > +diff --git a/binutils/debug.c b/binutils/debug.c > +index dcc8ccde..465b18e7 100644 > +--- a/binutils/debug.c > ++++ b/binutils/debug.c > +@@ -2554,9 +2554,6 @@ debug_write_type (struct debug_handle *info, > + case DEBUG_KIND_UNION_CLASS: > + return debug_write_class_type (info, fns, fhandle, type, tag); > + case DEBUG_KIND_ENUM: > +- if (type->u.kenum == NULL) > +- return (*fns->enum_type) (fhandle, tag, (const char **) NULL, > +- (bfd_signed_vma *) NULL); > + return (*fns->enum_type) (fhandle, tag, type->u.kenum->names, > + type->u.kenum->values); > + case DEBUG_KIND_POINTER: > +@@ -3097,9 +3094,9 @@ debug_type_samep (struct debug_handle *info, struct debug_type_s *t1, > + break; > + > + case DEBUG_KIND_ENUM: > +- if (t1->u.kenum == NULL) > +- ret = t2->u.kenum == NULL; > +- else if (t2->u.kenum == NULL) > ++ if (t1->u.kenum->names == NULL) > ++ ret = t2->u.kenum->names == NULL; > ++ else if (t2->u.kenum->names == NULL) > + ret = false; > + else > + { > -- > 2.49.0 > > > -=-=-=-=-=-=-=-=-=-=-=- > Links: You receive all messages sent to this group. > View/Reply Online (#220441): https://lists.openembedded.org/g/openembedded-core/message/220441 > Mute This Topic: https://lists.openembedded.org/mt/114182090/1997914 > Group Owner: openembedded-core+owner@lists.openembedded.org > Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [raj.khem@gmail.com] > -=-=-=-=-=-=-=-=-=-=-=- >
diff --git a/meta/recipes-devtools/binutils/binutils-2.44.inc b/meta/recipes-devtools/binutils/binutils-2.44.inc index e5df62b14e..a37f0bd27a 100644 --- a/meta/recipes-devtools/binutils/binutils-2.44.inc +++ b/meta/recipes-devtools/binutils/binutils-2.44.inc @@ -42,5 +42,6 @@ SRC_URI = "\ file://0017-CVE-2025-1181-2.patch \ file://0016-CVE-2025-5244.patch \ file://0016-CVE-2025-3198.patch \ + file://0018-CVE-2025-5245.patch \ " S = "${WORKDIR}/git" diff --git a/meta/recipes-devtools/binutils/binutils/0018-CVE-2025-5245.patch b/meta/recipes-devtools/binutils/binutils/0018-CVE-2025-5245.patch new file mode 100644 index 0000000000..d4b7d55966 --- /dev/null +++ b/meta/recipes-devtools/binutils/binutils/0018-CVE-2025-5245.patch @@ -0,0 +1,38 @@ +From: Alan Modra <amodra@gmail.com> +Date: Tue, 1 Apr 2025 22:36:54 +1030 + +PR32829, SEGV on objdump function debug_type_samep +u.kenum is always non-NULL, see debug_make_enum_type. + +Upstream-Status: Backport [https://sourceware.org/git/?p=binutils-gdb.git;a=commitdiff;h=6c3458a8b7ee7d39f070c7b2350851cb2110c65a] +CVE: CVE-2025-5245 + +Signed-off-by: Deepesh Varatharajan <Deepesh.Varatharajan@windriver.com> + +diff --git a/binutils/debug.c b/binutils/debug.c +index dcc8ccde..465b18e7 100644 +--- a/binutils/debug.c ++++ b/binutils/debug.c +@@ -2554,9 +2554,6 @@ debug_write_type (struct debug_handle *info, + case DEBUG_KIND_UNION_CLASS: + return debug_write_class_type (info, fns, fhandle, type, tag); + case DEBUG_KIND_ENUM: +- if (type->u.kenum == NULL) +- return (*fns->enum_type) (fhandle, tag, (const char **) NULL, +- (bfd_signed_vma *) NULL); + return (*fns->enum_type) (fhandle, tag, type->u.kenum->names, + type->u.kenum->values); + case DEBUG_KIND_POINTER: +@@ -3097,9 +3094,9 @@ debug_type_samep (struct debug_handle *info, struct debug_type_s *t1, + break; + + case DEBUG_KIND_ENUM: +- if (t1->u.kenum == NULL) +- ret = t2->u.kenum == NULL; +- else if (t2->u.kenum == NULL) ++ if (t1->u.kenum->names == NULL) ++ ret = t2->u.kenum->names == NULL; ++ else if (t2->u.kenum->names == NULL) + ret = false; + else + {