Security update for binutils

SUSE Security Update: Security update for binutils
Announcement ID: SUSE-SU-2020:3060-1
Rating: moderate
References: #1126826 #1126829 #1126831 #1140126 #1142649 #1143609 #1153768 #1153770 #1157755 #1160254 #1160590 #1163333 #1163744
Cross-References:CVE-2019-12972 CVE-2019-14250 CVE-2019-14444 CVE-2019-17450 CVE-2019-17451 CVE-2019-9074 CVE-2019-9075 CVE-2019-9077
Affected Products:
  • SUSE Linux Enterprise Module for Packagehub Subpackages 15-SP2
  • SUSE Linux Enterprise Module for Packagehub Subpackages 15-SP1
  • SUSE Linux Enterprise Module for Development Tools 15-SP2
  • SUSE Linux Enterprise Module for Development Tools 15-SP1
  • SUSE Linux Enterprise Module for Basesystem 15-SP2
  • SUSE Linux Enterprise Module for Basesystem 15-SP1

An update that solves 8 vulnerabilities, contains three features and has 5 fixes is now available.

Description:

This update for binutils fixes the following issues:
binutils was updated to version 2.35. (jsc#ECO-2373)
Update to binutils 2.35:

  • The assembler can now produce DWARF-5 format line number tables.
  • Readelf now has a "lint" mode to enable extra checks of the files it is processing.
  • Readelf will now display "[...]" when it has to truncate a symbol name. The old behaviour - of displaying as many characters as possible, up to the 80 column limit - can be restored by the use of the --silent-truncation option.
  • The linker can now produce a dependency file listing the inputs that it has processed, much like the -M -MP option supported by the compiler.

  • fix DT_NEEDED order with -flto [bsc#1163744]


Update to binutils 2.34:
  • The disassembler (objdump --disassemble) now has an option to generate ascii art thats show the arcs between that start and end points of control flow instructions.
  • The binutils tools now have support for debuginfod. Debuginfod is a HTTP service for distributing ELF/DWARF debugging information as well as source code. The tools can now connect to debuginfod servers in order to download debug information about the files that they are processing.
  • The assembler and linker now support the generation of ELF format files for the Z80 architecture.

  • Add new subpackages for libctf and libctf-nobfd.
  • Disable LTO due to bsc#1163333.
  • Includes fixes for these CVEs: bsc#1153768 aka CVE-2019-17451 aka PR25070 bsc#1153770 aka CVE-2019-17450 aka PR25078

  • fix various build fails on aarch64 (PR25210, bsc#1157755).

Update to binutils 2.33.1:
  • Adds support for the Arm Scalable Vector Extension version 2 (SVE2) instructions, the Arm Transactional Memory Extension (TME) instructions and the Armv8.1-M Mainline and M-profile Vector Extension (MVE) instructions.
  • Adds support for the Arm Cortex-A76AE, Cortex-A77 and Cortex-M35P processors and the AArch64 Cortex-A34, Cortex-A65, Cortex-A65AE, Cortex-A76AE, and Cortex-A77 processors.
  • Adds a .float16 directive for both Arm and AArch64 to allow encoding of 16-bit floating point literals.
  • For MIPS, Add -m[no-]fix-loongson3-llsc option to fix (or not) Loongson3 LLSC Errata. Add a --enable-mips-fix-loongson3-llsc=[yes|no] configure time option to set the default behavior. Set the default if the configure option is not used to "no".
  • The Cortex-A53 Erratum 843419 workaround now supports a choice of which workaround to use. The option --fix-cortex-a53-843419 now takes an optional argument --fix-cortex-a53-843419[=full|adr|adrp] which can be used to force a particular workaround to be used. See --help for AArch64 for more details.
  • Add support for GNU_PROPERTY_AARCH64_FEATURE_1_BTI and GNU_PROPERTY_AARCH64_FEATURE_1_PAC in ELF GNU program properties in the AArch64 ELF linker.
  • Add -z force-bti for AArch64 to enable GNU_PROPERTY_AARCH64_FEATURE_1_BTI on output while warning about missing GNU_PROPERTY_AARCH64_FEATURE_1_BTI on inputs and use PLTs protected with BTI.
  • Add -z pac-plt for AArch64 to pick PAC enabled PLTs.
  • Add --source-comment[=] option to objdump which if present, provides a prefix to source code lines displayed in a disassembly.
  • Add --set-section-alignment = option to objcopy to allow the changing of section alignments.
  • Add --verilog-data-width option to objcopy for verilog targets to control width of data elements in verilog hex format.
  • The separate debug info file options of readelf (--debug-dump=links and --debug-dump=follow) and objdump (--dwarf=links and --dwarf=follow-links) will now display and/or follow multiple links if more than one are present in a file. (This usually happens when gcc's -gsplit-dwarf option is used). In addition objdump's --dwarf=follow-links now also affects its other display options, so that for example, when combined with --syms it will cause the symbol tables in any linked debug info files to also be displayed. In addition when combined with --disassemble the --dwarf= follow-links option will ensure that any symbol tables in the linked files are read and used when disassembling code in the main file.
  • Add support for dumping types encoded in the Compact Type Format to objdump and readelf.
  • Includes fixes for these CVEs: bsc#1126826 aka CVE-2019-9077 aka PR1126826 bsc#1126829 aka CVE-2019-9075 aka PR1126829 bsc#1126831 aka CVE-2019-9074 aka PR24235 bsc#1140126 aka CVE-2019-12972 aka PR23405 bsc#1143609 aka CVE-2019-14444 aka PR24829 bsc#1142649 aka CVE-2019-14250 aka PR90924

  • Add xBPF target
  • Fix various problems with DWARF 5 support in gas
  • fix nm -B for objects compiled with -flto and -fcommon.

Patch Instructions:

To install this SUSE Security Update use the SUSE recommended installation methods like YaST online_update or "zypper patch".
Alternatively you can run the command listed for your product:

  • SUSE Linux Enterprise Module for Packagehub Subpackages 15-SP2:
    zypper in -t patch SUSE-SLE-Module-Packagehub-Subpackages-15-SP2-2020-3060=1
  • SUSE Linux Enterprise Module for Packagehub Subpackages 15-SP1:
    zypper in -t patch SUSE-SLE-Module-Packagehub-Subpackages-15-SP1-2020-3060=1
  • SUSE Linux Enterprise Module for Development Tools 15-SP2:
    zypper in -t patch SUSE-SLE-Module-Development-Tools-15-SP2-2020-3060=1
  • SUSE Linux Enterprise Module for Development Tools 15-SP1:
    zypper in -t patch SUSE-SLE-Module-Development-Tools-15-SP1-2020-3060=1
  • SUSE Linux Enterprise Module for Basesystem 15-SP2:
    zypper in -t patch SUSE-SLE-Module-Basesystem-15-SP2-2020-3060=1
  • SUSE Linux Enterprise Module for Basesystem 15-SP1:
    zypper in -t patch SUSE-SLE-Module-Basesystem-15-SP1-2020-3060=1

Package List:

  • SUSE Linux Enterprise Module for Packagehub Subpackages 15-SP2 (aarch64 ppc64le s390x x86_64):
    • binutils-debuginfo-2.35-7.11.1
    • binutils-debugsource-2.35-7.11.1
    • binutils-gold-2.35-7.11.1
    • binutils-gold-debuginfo-2.35-7.11.1
  • SUSE Linux Enterprise Module for Packagehub Subpackages 15-SP1 (aarch64 ppc64le s390x x86_64):
    • binutils-debuginfo-2.35-7.11.1
    • binutils-debugsource-2.35-7.11.1
    • binutils-gold-2.35-7.11.1
    • binutils-gold-debuginfo-2.35-7.11.1
  • SUSE Linux Enterprise Module for Development Tools 15-SP2 (x86_64):
    • binutils-debugsource-2.35-7.11.1
    • binutils-devel-32bit-2.35-7.11.1
  • SUSE Linux Enterprise Module for Development Tools 15-SP1 (x86_64):
    • binutils-debugsource-2.35-7.11.1
    • binutils-devel-32bit-2.35-7.11.1
  • SUSE Linux Enterprise Module for Basesystem 15-SP2 (aarch64 ppc64le s390x x86_64):
    • binutils-2.35-7.11.1
    • binutils-debuginfo-2.35-7.11.1
    • binutils-debugsource-2.35-7.11.1
    • binutils-devel-2.35-7.11.1
    • libctf-nobfd0-2.35-7.11.1
    • libctf-nobfd0-debuginfo-2.35-7.11.1
    • libctf0-2.35-7.11.1
    • libctf0-debuginfo-2.35-7.11.1
  • SUSE Linux Enterprise Module for Basesystem 15-SP1 (aarch64 ppc64le s390x x86_64):
    • binutils-2.35-7.11.1
    • binutils-debuginfo-2.35-7.11.1
    • binutils-debugsource-2.35-7.11.1
    • binutils-devel-2.35-7.11.1
    • libctf-nobfd0-2.35-7.11.1
    • libctf-nobfd0-debuginfo-2.35-7.11.1
    • libctf0-2.35-7.11.1
    • libctf0-debuginfo-2.35-7.11.1

References: