From 4581a1c7d304ce14e714b27522ebf3d0188d6543 Mon Sep 17 00:00:00 2001 From: Nick Clifton Date: Wed, 29 Nov 2017 17:12:12 +0000 Subject: [PATCH] Check for a NULL symbol pointer when reading relocs from a COFF based file. PR 22509 * coffcode.h (coff_slurp_reloc_table): Check for a NULL symbol pointer when processing relocs. Upstream-Status: Backport Affects: <= 2.29.1 CVE: CVE-2017-17123 Signed-off-by: Armin Kuster --- bfd/ChangeLog | 6 ++++++ bfd/coffcode.h | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) Index: git/bfd/coffcode.h =================================================================== --- git.orig/bfd/coffcode.h +++ git/bfd/coffcode.h @@ -5326,7 +5326,7 @@ coff_slurp_reloc_table (bfd * abfd, sec_ #else cache_ptr->address = dst.r_vaddr; - if (dst.r_symndx != -1) + if (dst.r_symndx != -1 && symbols != NULL) { if (dst.r_symndx < 0 || dst.r_symndx >= obj_conv_table_size (abfd)) {