From 7c9d9f47b6ee0cf87ab6124597ffa0bd40ea421f Mon Sep 17 00:00:00 2001 From: Thiruvadi Rajaraman Date: Thu, 21 Sep 2017 19:17:24 +0530 Subject: binutils: CVE-2017-9747 Source: binutils-gdb.git MR: 74036 Type: Security Fix Disposition: Backport from binutils-2_29 ChangeID: b25bffca0b51e9c13ba752534b64bd28a147a135 Description: Fix address violation parsing a corrupt ieee binary. PR binutils/21581 (ieee_archive_p): Use a static buffer to avoid compiler bugs. Affects: <= 2.28 Author: Nick Clifton Signed-off-by: Thiruvadi Rajaraman Reviewed-by: Armin Kuster Signed-off-by: Armin Kuster Signed-off-by: Armin Kuster --- meta/recipes-devtools/binutils/binutils-2.27.inc | 1 + .../binutils/binutils/CVE-2017-9747.patch | 40 ++++++++++++++++++++++ 2 files changed, 41 insertions(+) create mode 100644 meta/recipes-devtools/binutils/binutils/CVE-2017-9747.patch diff --git a/meta/recipes-devtools/binutils/binutils-2.27.inc b/meta/recipes-devtools/binutils/binutils-2.27.inc index cb745b13ba..24d4d5999e 100644 --- a/meta/recipes-devtools/binutils/binutils-2.27.inc +++ b/meta/recipes-devtools/binutils/binutils-2.27.inc @@ -82,6 +82,7 @@ SRC_URI = "\ file://CVE-2017-9749.patch \ file://CVE-2017-9746.patch \ file://CVE-2017-9748.patch \ + file://CVE-2017-9747.patch \ " S = "${WORKDIR}/git" diff --git a/meta/recipes-devtools/binutils/binutils/CVE-2017-9747.patch b/meta/recipes-devtools/binutils/binutils/CVE-2017-9747.patch new file mode 100644 index 0000000000..ee663b816e --- /dev/null +++ b/meta/recipes-devtools/binutils/binutils/CVE-2017-9747.patch @@ -0,0 +1,40 @@ +commit 62b76e4b6e0b4cb5b3e0053d1de4097b32577049 +Author: Nick Clifton +Date: Thu Jun 15 13:08:47 2017 +0100 + + Fix address violation parsing a corrupt ieee binary. + + PR binutils/21581 + (ieee_archive_p): Use a static buffer to avoid compiler bugs. + +Upstream-Status: Backport + +CVE: CVE-2017-9747 +Signed-off-by: Thiruvadi Rajaraman + +Index: git/bfd/ieee.c +=================================================================== +--- git.orig/bfd/ieee.c 2017-09-21 14:37:12.152903139 +0530 ++++ git/bfd/ieee.c 2017-09-21 14:37:12.208903477 +0530 +@@ -1353,7 +1353,7 @@ + { + char *library; + unsigned int i; +- unsigned char buffer[512]; ++ static unsigned char buffer[512]; + file_ptr buffer_offset = 0; + ieee_ar_data_type *save = abfd->tdata.ieee_ar_data; + ieee_ar_data_type *ieee; +Index: git/bfd/ChangeLog +=================================================================== +--- git.orig/bfd/ChangeLog 2017-09-21 14:37:12.152903139 +0530 ++++ git/bfd/ChangeLog 2017-09-21 14:45:57.020150977 +0530 +@@ -78,6 +78,8 @@ + PR binutils/21582 + * ieee.c (ieee_object_p): Use a static buffer to avoid compiler + bugs. ++ PR binutils/21581 ++ (ieee_archive_p): Likewise. + + 2017-04-29 Alan Modra + -- cgit 1.2.3-korg