SUSE-SU-2018:3170-1

Source
https://www.suse.com/support/update/announcement/2018/suse-su-20183170-1/
Import Source
https://ftp.suse.com/pub/projects/security/osv/SUSE-SU-2018:3170-1.json
JSON Data
https://api.osv.dev/v1/vulns/SUSE-SU-2018:3170-1
Related
Published
2018-10-16T13:35:47Z
Modified
2018-10-16T13:35:47Z
Summary
Security update for binutils
Details

This update for binutils to version 2.31 fixes the following issues:

These security issues were fixed:

  • CVE-2017-15996: readelf allowed remote attackers to cause a denial of service (excessive memory allocation) or possibly have unspecified other impact via a crafted ELF file that triggered a buffer overflow on fuzzed archive header (bsc#1065643)
  • CVE-2017-15939: Binary File Descriptor (BFD) library (aka libbfd) mishandled NULL files in a .debugline file table, which allowed remote attackers to cause a denial of service (NULL pointer dereference and application crash) via a crafted ELF file, related to concatfilename (bsc#1065689)
  • CVE-2017-15938: the Binary File Descriptor (BFD) library (aka libbfd) miscalculated DWFORMrefaddr die refs in the case of a relocatable object file, which allowed remote attackers to cause a denial of service (findabstractinstancename invalid memory read, segmentation fault, and application crash) (bsc#1065693)
  • CVE-2017-16826: The coffslurpline_table function the Binary File Descriptor (BFD) library (aka libbfd) allowed remote attackers to cause a denial of service (invalid memory access and application crash) or possibly have unspecified other impact via a crafted PE file (bsc#1068640)
  • CVE-2017-16832: The pebfdread_buildid function in the Binary File Descriptor (BFD) library (aka libbfd) did not validate size and offset values in the data dictionary, which allowed remote attackers to cause a denial of service (segmentation violation and application crash) or possibly have unspecified other impact via a crafted PE file (bsc#1068643)
  • CVE-2017-16831: Binary File Descriptor (BFD) library (aka libbfd) did not validate the symbol count, which allowed remote attackers to cause a denial of service (integer overflow and application crash, or excessive memory allocation) or possibly have unspecified other impact via a crafted PE file (bsc#1068887)
  • CVE-2017-16830: The printgnuproperty_note function did not have integer-overflow protection on 32-bit platforms, which allowed remote attackers to cause a denial of service (segmentation violation and application crash) or possibly have unspecified other impact via a crafted ELF file (bsc#1068888)
  • CVE-2017-16829: The bfdelfparsegnu_properties function in the Binary File Descriptor (BFD) library (aka libbfd) did not prevent negative pointers, which allowed remote attackers to cause a denial of service (out-of-bounds read and application crash) or possibly have unspecified other impact via a crafted ELF file (bsc#1068950)
  • CVE-2017-16828: The displaydebugframes function allowed remote attackers to cause a denial of service (integer overflow and heap-based buffer over-read, and application crash) or possibly have unspecified other impact via a crafted ELF file (bsc#1069176)
  • CVE-2017-16827: The aoutgetexternalsymbols function in the Binary File Descriptor (BFD) library (aka libbfd) allowed remote attackers to cause a denial of service (slurpsymtab invalid free and application crash) or possibly have unspecified other impact via a crafted ELF file (bsc#1069202)
  • CVE-2018-6323: The elfobjectp function in the Binary File Descriptor (BFD) library (aka libbfd) had an unsigned integer overflow because bfdsizetype multiplication is not used. A crafted ELF file allowed remote attackers to cause a denial of service (application crash) or possibly have unspecified other impact (bsc#1077745)
  • CVE-2018-6543: Prevent integer overflow in the function loadspecificdebug_section() which resulted in malloc() with 0 size. A crafted ELF file allowed remote attackers to cause a denial of service (application crash) or possibly have unspecified other impact (bsc#1079103)
  • CVE-2018-6759: The bfdgetdebuglinkinfo_1 function in the Binary File Descriptor (BFD) library (aka libbfd) had an unchecked strnlen operation. Remote attackers could have leveraged this vulnerability to cause a denial of service (segmentation fault) via a crafted ELF file (bsc#1079741)
  • CVE-2018-6872: The elfparsenotes function in the Binary File Descriptor (BFD) library (aka libbfd) allowed remote attackers to cause a denial of service (out-of-bounds read and segmentation violation) via a note with a large alignment (bsc#1080556)
  • CVE-2018-7208: In the coffpointerizeaux function in the Binary File Descriptor (BFD) library (aka libbfd) an index was not validated, which allowed remote attackers to cause a denial of service (segmentation fault) or possibly have unspecified other impact via a crafted file, as demonstrated by objcopy of a COFF object (bsc#1081527)
  • CVE-2018-7570: The assignfilepositionsfornonloadsections function in the Binary File Descriptor (BFD) library (aka libbfd) allowed remote attackers to cause a denial of service (NULL pointer dereference and application crash) via an ELF file with a RELRO segment that lacks a matching LOAD segment, as demonstrated by objcopy (bsc#1083528)
  • CVE-2018-7569: The Binary File Descriptor (BFD) library (aka libbfd) allowed remote attackers to cause a denial of service (integer underflow or overflow, and application crash) via an ELF file with a corrupt DWARF FORM block, as demonstrated by nm (bsc#1083532)
  • CVE-2018-8945: The bfdsectionfrom_shdr function in the Binary File Descriptor (BFD) library (aka libbfd) allowed remote attackers to cause a denial of service (segmentation fault) via a large attribute section (bsc#1086608)
  • CVE-2018-7643: The displaydebugranges function allowed remote attackers to cause a denial of service (integer overflow and application crash) or possibly have unspecified other impact via a crafted ELF file, as demonstrated by objdump (bsc#1086784)
  • CVE-2018-7642: The swapstdrelocin function in the Binary File Descriptor (BFD) library (aka libbfd) allowed remote attackers to cause a denial of service (aout32swapstdrelocout NULL pointer dereference and application crash) via a crafted ELF file, as demonstrated by objcopy (bsc#1086786)
  • CVE-2018-7568: The parse_die function in the Binary File Descriptor (BFD) library (aka libbfd) allowed remote attackers to cause a denial of service (integer overflow and application crash) via an ELF file with corrupt dwarf1 debug information, as demonstrated by nm (bsc#1086788)
  • CVE-2018-10373: concat_filename in the Binary File Descriptor (BFD) library (aka libbfd) allowed remote attackers to cause a denial of service (NULL pointer dereference and application crash) via a crafted binary file, as demonstrated by nm-new (bsc#1090997)
  • CVE-2018-10372: processcutu_index allowed remote attackers to cause a denial of service (heap-based buffer over-read and application crash) via a crafted binary file, as demonstrated by readelf (bsc#1091015)
  • CVE-2018-10535: The ignoresectionsym function in the Binary File Descriptor (BFD) library (aka libbfd) did not validate the output_section pointer in the case of a symtab entry with a 'SECTION' type that has a '0' value, which allowed remote attackers to cause a denial of service (NULL pointer dereference and application crash) via a crafted file, as demonstrated by objcopy (bsc#1091365)
  • CVE-2018-10534: The bfdXXbfdcopyprivatebfddatacommon function in the Binary File Descriptor (BFD) library (aka libbfd) processesed a negative Data Directory size with an unbounded loop that increased the value of (externalIMAGEDEBUGDIRECTORY) *edd so that the address exceeded its own memory region, resulting in an out-of-bounds memory write, as demonstrated by objcopy copying private info with _bfdpex64bfdcopyprivatebfddatacommon in pex64igen.c (bsc#1091368)

These non-security issues were fixed:

  • The AArch64 port now supports showing disassembly notes which are emitted when inconsistencies are found with the instruction that may result in the instruction being invalid. These can be turned on with the option -M notes to objdump.
  • The AArch64 port now emits warnings when a combination of an instruction and a named register could be invalid.
  • Added O modifier to ar to display member offsets inside an archive
  • The ADR and ADRL pseudo-instructions supported by the ARM assembler now only set the bottom bit of the address of thumb function symbols if the -mthumb-interwork command line option is active.
  • Add --generate-missing-build-notes=[yes|no] option to create (or not) GNU Build Attribute notes if none are present in the input sources. Add a --enable-generate-build-notes=[yes|no] configure time option to set the default behaviour. Set the default if the configure option is not used to 'no'.
  • Remove -mold-gcc command-line option for x86 targets.
  • Add -O[2|s] command-line options to x86 assembler to enable alternate shorter instruction encoding.
  • Add support for .nops directive. It is currently supported only for x86 targets.
  • Speed up direct linking with DLLs for Cygwin and Mingw targets.
  • Add a configure option --enable-separate-code to decide whether -z separate-code should be enabled in ELF linker by default. Default to yes for Linux/x86 targets. Note that -z separate-code can increase disk and memory size.
  • RISC-V: Fix symbol address problem with versioned symbols
  • Restore riscv64-elf cross prefix via symlinks
  • Fix pacemaker libqb problem with section start/stop symbols
  • RISC-V: Don't enable relaxation in relocatable link
  • Prevent linking faiures on i386 with assertion (bsc#1085784)
  • Fix symbol size bug when relaxation deletes bytes
  • Add --debug-dump=links option to readelf and --dwarf=links option to objdump which displays the contents of any .gnudebuglink or .gnudebugaltlink sections. Add a --debug-dump=follow-links option to readelf and a --dwarf=follow-links option to objdump which causes indirect links into separate debug info files to be followed when dumping other DWARF sections.
  • Add support for loaction views in DWARF debug line information.
  • Add -z separate-code to generate separate code PT_LOAD segment.
  • Add '-z undefs' command line option as the inverse of the '-z defs' option.
  • Add -z globalaudit command line option to force audit libraries to be run for every dynamic object loaded by an executable - provided that the loader supports this functionality.
  • Tighten linker script grammar around file name specifiers to prevent the use of SORTBYALIGNMENT and SORTBYINIT_PRIORITY on filenames. These would previously be accepted but had no effect.
  • The EXCLUDEFILE directive can now be placed within any SORT* directive within input section lists.
  • Fix linker relaxation with --wrap
References

Affected packages

SUSE:Linux Enterprise Module for Basesystem 15 / binutils

Package

Name
binutils
Purl
pkg:rpm/suse/binutils&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Basesystem%2015

Affected ranges

Type
ECOSYSTEM
Events
Introduced
0Unknown introduced version / All previous versions are affected
Fixed
2.31-6.3.1

Ecosystem specific

{
    "binaries": [
        {
            "binutils-devel": "2.31-6.3.1",
            "binutils": "2.31-6.3.1"
        }
    ]
}

SUSE:Linux Enterprise Module for Development Tools 15 / binutils

Package

Name
binutils
Purl
pkg:rpm/suse/binutils&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Development%20Tools%2015

Affected ranges

Type
ECOSYSTEM
Events
Introduced
0Unknown introduced version / All previous versions are affected
Fixed
2.31-6.3.1

Ecosystem specific

{
    "binaries": [
        {
            "binutils-devel-32bit": "2.31-6.3.1"
        }
    ]
}