From 011a13613403c42717c623b0c5fc1e69de9f65b5 Mon Sep 17 00:00:00 2001 From: Alan Modra Date: Wed, 5 Oct 2022 10:27:46 +1030 Subject: [PATCH] Re: stab nearest_line bfd_malloc_and_get_section It didn't take long for the fuzzers to avoid size checks in bfd_malloc_and_get_section. Plug this hole. * syms.c (_bfd_stab_section_find_nearest_line): Ignore fuzzed sections with no contents. --- bfd/syms.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/bfd/syms.c b/bfd/syms.c index e8077f59bf0..c9d27ebe5d4 100644 --- a/bfd/syms.c +++ b/bfd/syms.c @@ -1019,6 +1019,10 @@ _bfd_stab_section_find_nearest_line (bfd *abfd, return true; } + if ((info->stabsec->flags & SEC_HAS_CONTENTS) == 0 + || (info->strsec->flags & SEC_HAS_CONTENTS) == 0) + goto out; + stabsize = (info->stabsec->rawsize ? info->stabsec->rawsize : info->stabsec->size); -- 2.30.2