Vulnerabilities > CVE-2018-20651 - NULL Pointer Dereference vulnerability in GNU Binutils 2.31.1

047910
CVSS 5.5 - MEDIUM
Attack vector
LOCAL
Attack complexity
LOW
Privileges required
NONE
Confidentiality impact
NONE
Integrity impact
NONE
Availability impact
HIGH
local
low complexity
gnu
CWE-476
nessus

Summary

A NULL pointer dereference was discovered in elf_link_add_object_symbols in elflink.c in the Binary File Descriptor (BFD) library (aka libbfd), as distributed in GNU Binutils 2.31.1. This occurs for a crafted ET_DYN with no program headers. A specially crafted ELF file allows remote attackers to cause a denial of service, as demonstrated by ld.

Vulnerable Configurations

Part Description Count
Application
Gnu
1

Common Weakness Enumeration (CWE)

Nessus

  • NASL familyPhotonOS Local Security Checks
    NASL idPHOTONOS_PHSA-2019-3_0-0022_BINUTILS.NASL
    descriptionAn update of the binutils package has been released.
    last seen2020-06-01
    modified2020-06-02
    plugin id126474
    published2019-07-04
    reporterThis script is Copyright (C) 2019-2020 and is owned by Tenable, Inc. or an Affiliate thereof.
    sourcehttps://www.tenable.com/plugins/nessus/126474
    titlePhoton OS 3.0: Binutils PHSA-2019-3.0-0022
    code
    #
    # (C) Tenable Network Security, Inc.
    #
    
    # The descriptive text and package checks in this plugin were
    # extracted from VMware Security Advisory PHSA-2019-3.0-0022. The text
    # itself is copyright (C) VMware, Inc.
    
    include("compat.inc");
    
    if (description)
    {
      script_id(126474);
      script_version("1.2");
      script_cvs_date("Date: 2020/01/07");
    
      script_cve_id(
        "CVE-2018-20623",
        "CVE-2018-20651",
        "CVE-2018-20671",
        "CVE-2019-9071",
        "CVE-2019-9073",
        "CVE-2019-9074"
      );
    
      script_name(english:"Photon OS 3.0: Binutils PHSA-2019-3.0-0022");
      script_summary(english:"Checks the rpm output for the updated packages.");
    
      script_set_attribute(attribute:"synopsis", value:
    "The remote PhotonOS host is missing multiple security updates.");
      script_set_attribute(attribute:"description", value:
    "An update of the binutils package has been released.");
      script_set_attribute(attribute:"see_also", value:"https://github.com/vmware/photon/wiki/Security-Updates-3.0-0022.md");
      script_set_attribute(attribute:"solution", value:
    "Update the affected Linux packages.");
      script_set_cvss_base_vector("CVSS2#AV:N/AC:M/Au:N/C:N/I:N/A:P");
      script_set_cvss_temporal_vector("CVSS2#E:U/RL:OF/RC:C");
      script_set_cvss3_base_vector("CVSS:3.0/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H");
      script_set_cvss3_temporal_vector("CVSS:3.0/E:U/RL:O/RC:C");
      script_set_attribute(attribute:"cvss_score_source", value:"CVE-2019-9074");
    
      script_set_attribute(attribute:"exploitability_ease", value:"No known exploits are available");
    
      script_set_attribute(attribute:"vuln_publication_date", value:"2018/12/31");
      script_set_attribute(attribute:"patch_publication_date", value:"2019/06/25");
      script_set_attribute(attribute:"plugin_publication_date", value:"2019/07/04");
    
      script_set_attribute(attribute:"plugin_type", value:"local");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:vmware:photonos:binutils");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:vmware:photonos:3.0");
      script_end_attributes();
    
      script_category(ACT_GATHER_INFO);
      script_family(english:"PhotonOS Local Security Checks");
    
      script_copyright(english:"This script is Copyright (C) 2019-2020 and is owned by Tenable, Inc. or an Affiliate thereof.");
    
      script_dependencies("ssh_get_info.nasl");
      script_require_keys("Host/local_checks_enabled", "Host/PhotonOS/release", "Host/PhotonOS/rpm-list");
    
      exit(0);
    }
    
    include("audit.inc");
    include("global_settings.inc");
    include("rpm.inc");
    
    if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
    
    release = get_kb_item("Host/PhotonOS/release");
    if (isnull(release) || release !~ "^VMware Photon") audit(AUDIT_OS_NOT, "PhotonOS");
    if (release !~ "^VMware Photon (?:Linux|OS) 3\.0(\D|$)") audit(AUDIT_OS_NOT, "PhotonOS 3.0");
    
    if (!get_kb_item("Host/PhotonOS/rpm-list")) audit(AUDIT_PACKAGE_LIST_MISSING);
    
    cpu = get_kb_item("Host/cpu");
    if (isnull(cpu)) audit(AUDIT_UNKNOWN_ARCH);
    if ("x86_64" >!< cpu && cpu !~ "^i[3-6]86$") audit(AUDIT_LOCAL_CHECKS_NOT_IMPLEMENTED, "PhotonOS", cpu);
    
    flag = 0;
    
    if (rpm_check(release:"PhotonOS-3.0", reference:"binutils-2.31.1-5.ph3")) flag++;
    if (rpm_check(release:"PhotonOS-3.0", reference:"binutils-debuginfo-2.31.1-5.ph3")) flag++;
    if (rpm_check(release:"PhotonOS-3.0", reference:"binutils-devel-2.31.1-5.ph3")) flag++;
    
    if (flag)
    {
      security_report_v4(
        port       : 0,
        severity   : SECURITY_WARNING,
        extra      : rpm_report_get()
      );
      exit(0);
    }
    else
    {
      tested = pkg_tests_get();
      if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested);
      else audit(AUDIT_PACKAGE_NOT_INSTALLED, "binutils");
    }
    
  • NASL familySuSE Local Security Checks
    NASL idOPENSUSE-2019-2432.NASL
    descriptionThis update for binutils fixes the following issues : binutils was updated to current 2.32 branch [jsc#ECO-368]. Includes following security fixes : - CVE-2018-17358: Fixed invalid memory access in _bfd_stab_section_find_nearest_line in syms.c (bsc#1109412) - CVE-2018-17359: Fixed invalid memory access exists in bfd_zalloc in opncls.c (bsc#1109413) - CVE-2018-17360: Fixed heap-based buffer over-read in bfd_getl32 in libbfd.c (bsc#1109414) - CVE-2018-17985: Fixed a stack consumption problem caused by the cplus_demangle_type (bsc#1116827) - CVE-2018-18309: Fixed an invalid memory address dereference was discovered in read_reloc in reloc.c (bsc#1111996) - CVE-2018-18483: Fixed get_count function provided by libiberty that allowed attackers to cause a denial of service or other unspecified impact (bsc#1112535) - CVE-2018-18484: Fixed stack exhaustion in the C++ demangling functions provided by libiberty, caused by recursive stack frames (bsc#1112534) - CVE-2018-18605: Fixed a heap-based buffer over-read issue was discovered in the function sec_merge_hash_lookup causing a denial of service (bsc#1113255) - CVE-2018-18606: Fixed a NULL pointer dereference in _bfd_add_merge_section when attempting to merge sections with large alignments, causing denial of service (bsc#1113252) - CVE-2018-18607: Fixed a NULL pointer dereference in elf_link_input_bfd when used for finding STT_TLS symbols without any TLS section, causing denial of service (bsc#1113247) - CVE-2018-19931: Fixed a heap-based buffer overflow in bfd_elf32_swap_phdr_in in elfcode.h (bsc#1118831) - CVE-2018-19932: Fixed an integer overflow and infinite loop caused by the IS_CONTAINED_BY_LMA (bsc#1118830) - CVE-2018-20623: Fixed a use-after-free in the error function in elfcomm.c (bsc#1121035) - CVE-2018-20651: Fixed a denial of service via a NULL pointer dereference in elf_link_add_object_symbols in elflink.c (bsc#1121034) - CVE-2018-20671: Fixed an integer overflow that can trigger a heap-based buffer overflow in load_specific_debug_section in objdump.c (bsc#1121056) - CVE-2018-1000876: Fixed integer overflow in bfd_get_dynamic_reloc_upper_bound,bfd_canonicalize_dynam ic_reloc in objdump (bsc#1120640) - CVE-2019-1010180: Fixed an out of bound memory access that could lead to crashes (bsc#1142772) - enable xtensa architecture (Tensilica lc6 and related) - Use -ffat-lto-objects in order to provide assembly for static libs (bsc#1141913). - Fixed some LTO build issues (bsc#1133131 bsc#1133232). - riscv: Don
    last seen2020-06-01
    modified2020-06-02
    plugin id130576
    published2019-11-06
    reporterThis script is Copyright (C) 2019 and is owned by Tenable, Inc. or an Affiliate thereof.
    sourcehttps://www.tenable.com/plugins/nessus/130576
    titleopenSUSE Security Update : binutils (openSUSE-2019-2432)
    code
    #
    # (C) Tenable Network Security, Inc.
    #
    # The descriptive text and package checks in this plugin were
    # extracted from openSUSE Security Update openSUSE-2019-2432.
    #
    # The text description of this plugin is (C) SUSE LLC.
    #
    
    include("compat.inc");
    
    if (description)
    {
      script_id(130576);
      script_version("1.2");
      script_cvs_date("Date: 2019/12/17");
    
      script_cve_id("CVE-2018-1000876", "CVE-2018-17358", "CVE-2018-17359", "CVE-2018-17360", "CVE-2018-17985", "CVE-2018-18309", "CVE-2018-18483", "CVE-2018-18484", "CVE-2018-18605", "CVE-2018-18606", "CVE-2018-18607", "CVE-2018-19931", "CVE-2018-19932", "CVE-2018-20623", "CVE-2018-20651", "CVE-2018-20671", "CVE-2018-6323", "CVE-2018-6543", "CVE-2018-6759", "CVE-2018-6872", "CVE-2018-7208", "CVE-2018-7568", "CVE-2018-7569", "CVE-2018-7570", "CVE-2018-7642", "CVE-2018-7643", "CVE-2018-8945", "CVE-2019-1010180");
    
      script_name(english:"openSUSE Security Update : binutils (openSUSE-2019-2432)");
      script_summary(english:"Check for the openSUSE-2019-2432 patch");
    
      script_set_attribute(
        attribute:"synopsis", 
        value:"The remote openSUSE host is missing a security update."
      );
      script_set_attribute(
        attribute:"description", 
        value:
    "This update for binutils fixes the following issues :
    
    binutils was updated to current 2.32 branch [jsc#ECO-368].
    
    Includes following security fixes :
    
      - CVE-2018-17358: Fixed invalid memory access in
        _bfd_stab_section_find_nearest_line in syms.c
        (bsc#1109412)
    
      - CVE-2018-17359: Fixed invalid memory access exists in
        bfd_zalloc in opncls.c (bsc#1109413)
    
      - CVE-2018-17360: Fixed heap-based buffer over-read in
        bfd_getl32 in libbfd.c (bsc#1109414)
    
      - CVE-2018-17985: Fixed a stack consumption problem caused
        by the cplus_demangle_type (bsc#1116827)
    
      - CVE-2018-18309: Fixed an invalid memory address
        dereference was discovered in read_reloc in reloc.c
        (bsc#1111996)
    
      - CVE-2018-18483: Fixed get_count function provided by
        libiberty that allowed attackers to cause a denial of
        service or other unspecified impact (bsc#1112535)
    
      - CVE-2018-18484: Fixed stack exhaustion in the C++
        demangling functions provided by libiberty, caused by
        recursive stack frames (bsc#1112534)
    
      - CVE-2018-18605: Fixed a heap-based buffer over-read
        issue was discovered in the function
        sec_merge_hash_lookup causing a denial of service
        (bsc#1113255)
    
      - CVE-2018-18606: Fixed a NULL pointer dereference in
        _bfd_add_merge_section when attempting to merge sections
        with large alignments, causing denial of service
        (bsc#1113252)
    
      - CVE-2018-18607: Fixed a NULL pointer dereference in
        elf_link_input_bfd when used for finding STT_TLS symbols
        without any TLS section, causing denial of service
        (bsc#1113247)
    
      - CVE-2018-19931: Fixed a heap-based buffer overflow in
        bfd_elf32_swap_phdr_in in elfcode.h (bsc#1118831)
    
      - CVE-2018-19932: Fixed an integer overflow and infinite
        loop caused by the IS_CONTAINED_BY_LMA (bsc#1118830)
    
      - CVE-2018-20623: Fixed a use-after-free in the error
        function in elfcomm.c (bsc#1121035)
    
      - CVE-2018-20651: Fixed a denial of service via a NULL
        pointer dereference in elf_link_add_object_symbols in
        elflink.c (bsc#1121034)
    
      - CVE-2018-20671: Fixed an integer overflow that can
        trigger a heap-based buffer overflow in
        load_specific_debug_section in objdump.c (bsc#1121056)
    
      - CVE-2018-1000876: Fixed integer overflow in
        bfd_get_dynamic_reloc_upper_bound,bfd_canonicalize_dynam
        ic_reloc in objdump (bsc#1120640)
    
      - CVE-2019-1010180: Fixed an out of bound memory access
        that could lead to crashes (bsc#1142772)
    
      - enable xtensa architecture (Tensilica lc6 and related)
    
      - Use -ffat-lto-objects in order to provide assembly for
        static libs (bsc#1141913).
    
      - Fixed some LTO build issues (bsc#1133131 bsc#1133232).
    
      - riscv: Don't check ABI flags if no code section
    
      - Fixed a segfault in ld when building some versions of
        pacemaker (bsc#1154025, bsc#1154016).
    
      - Add avr, epiphany and rx to target_list so that the
        common binutils can handle all objects we can create
        with crosses (bsc#1152590).
    
    Update to binutils 2.32 :
    
      - The binutils now support for the C-SKY processor series.
    
      - The x86 assembler now supports a -mvexwig=[0|1] option
        to control encoding of VEX.W-ignored (WIG) VEX
        instructions. It also has a new -mx86-used-note=[yes|no]
        option to generate (or not) x86 GNU property notes. 
    
      - The MIPS assembler now supports the Loongson EXTensions
        R2 (EXT2), the Loongson EXTensions (EXT) instructions,
        the Loongson Content Address Memory (CAM) ASE and the
        Loongson MultiMedia extensions Instructions (MMI) ASE.
    
      - The addr2line, c++filt, nm and objdump tools now have a
        default limit on the maximum amount of recursion that is
        allowed whilst demangling strings. This limit can be
        disabled if necessary.
    
      - Objdump's --disassemble option can now take a parameter,
        specifying the starting symbol for disassembly.
        Disassembly will continue from this symbol up to the
        next symbol or the end of the function.
    
      - The BFD linker will now report property change in linker
        map file when merging GNU properties.
    
      - The BFD linker's -t option now doesn't report members
        within archives, unless -t is given twice. This makes it
        more useful when generating a list of files that should
        be packaged for a linker bug report.
    
      - The GOLD linker has improved warning messages for
        relocations that refer to discarded sections.
    
      - Improve relro support on s390 [fate#326356]
    
      - Fix broken debug symbols (bsc#1118644)
    
      - Handle ELF compressed header alignment correctly.
    
    This update was imported from the SUSE:SLE-15-SP1:Update update
    project."
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.opensuse.org/show_bug.cgi?id=1109412"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.opensuse.org/show_bug.cgi?id=1109413"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.opensuse.org/show_bug.cgi?id=1109414"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.opensuse.org/show_bug.cgi?id=1111996"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.opensuse.org/show_bug.cgi?id=1112534"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.opensuse.org/show_bug.cgi?id=1112535"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.opensuse.org/show_bug.cgi?id=1113247"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.opensuse.org/show_bug.cgi?id=1113252"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.opensuse.org/show_bug.cgi?id=1113255"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.opensuse.org/show_bug.cgi?id=1116827"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.opensuse.org/show_bug.cgi?id=1118644"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.opensuse.org/show_bug.cgi?id=1118830"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.opensuse.org/show_bug.cgi?id=1118831"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.opensuse.org/show_bug.cgi?id=1120640"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.opensuse.org/show_bug.cgi?id=1121034"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.opensuse.org/show_bug.cgi?id=1121035"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.opensuse.org/show_bug.cgi?id=1121056"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.opensuse.org/show_bug.cgi?id=1133131"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.opensuse.org/show_bug.cgi?id=1133232"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.opensuse.org/show_bug.cgi?id=1141913"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.opensuse.org/show_bug.cgi?id=1142772"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.opensuse.org/show_bug.cgi?id=1152590"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.opensuse.org/show_bug.cgi?id=1154016"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.opensuse.org/show_bug.cgi?id=1154025"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://features.opensuse.org/326356"
      );
      script_set_attribute(
        attribute:"solution", 
        value:"Update the affected binutils packages."
      );
      script_set_cvss_base_vector("CVSS2#AV:N/AC:M/Au:N/C:P/I:P/A:P");
      script_set_cvss_temporal_vector("CVSS2#E:POC/RL:OF/RC:C");
      script_set_cvss3_base_vector("CVSS:3.0/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H");
      script_set_cvss3_temporal_vector("CVSS:3.0/E:P/RL:O/RC:C");
      script_set_attribute(attribute:"cvss_score_source", value:"CVE-2019-1010180");
      script_set_attribute(attribute:"exploitability_ease", value:"Exploits are available");
      script_set_attribute(attribute:"exploit_available", value:"true");
    
      script_set_attribute(attribute:"plugin_type", value:"local");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:binutils-devel");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:binutils-devel-32bit");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:binutils-gold");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:binutils-gold-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-aarch64-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-aarch64-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-aarch64-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-arm-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-arm-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-arm-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-avr-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-avr-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-avr-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-epiphany-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-epiphany-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-epiphany-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-hppa-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-hppa-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-hppa-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-hppa64-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-hppa64-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-hppa64-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-i386-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-i386-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-i386-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-ia64-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-ia64-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-ia64-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-m68k-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-m68k-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-m68k-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-mips-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-mips-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-mips-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-ppc-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-ppc-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-ppc-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-ppc64-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-ppc64-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-ppc64-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-ppc64le-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-ppc64le-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-ppc64le-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-riscv64-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-riscv64-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-riscv64-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-rx-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-rx-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-rx-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-s390-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-s390-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-s390-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-s390x-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-s390x-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-s390x-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-sparc-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-sparc-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-sparc-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-sparc64-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-sparc64-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-sparc64-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-spu-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-spu-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:cross-spu-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:novell:opensuse:15.1");
    
      script_set_attribute(attribute:"vuln_publication_date", value:"2018/01/26");
      script_set_attribute(attribute:"patch_publication_date", value:"2019/11/05");
      script_set_attribute(attribute:"plugin_publication_date", value:"2019/11/06");
      script_set_attribute(attribute:"generated_plugin", value:"current");
      script_end_attributes();
    
      script_category(ACT_GATHER_INFO);
      script_copyright(english:"This script is Copyright (C) 2019 and is owned by Tenable, Inc. or an Affiliate thereof.");
      script_family(english:"SuSE Local Security Checks");
    
      script_dependencies("ssh_get_info.nasl");
      script_require_keys("Host/local_checks_enabled", "Host/SuSE/release", "Host/SuSE/rpm-list", "Host/cpu");
    
      exit(0);
    }
    
    
    include("audit.inc");
    include("global_settings.inc");
    include("rpm.inc");
    
    if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
    release = get_kb_item("Host/SuSE/release");
    if (isnull(release) || release =~ "^(SLED|SLES)") audit(AUDIT_OS_NOT, "openSUSE");
    if (release !~ "^(SUSE15\.1)$") audit(AUDIT_OS_RELEASE_NOT, "openSUSE", "15.1", release);
    if (!get_kb_item("Host/SuSE/rpm-list")) audit(AUDIT_PACKAGE_LIST_MISSING);
    
    ourarch = get_kb_item("Host/cpu");
    if (!ourarch) audit(AUDIT_UNKNOWN_ARCH);
    if (ourarch !~ "^(i586|i686|x86_64)$") audit(AUDIT_ARCH_NOT, "i586 / i686 / x86_64", ourarch);
    
    flag = 0;
    
    if ( rpm_check(release:"SUSE15.1", reference:"binutils-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", reference:"binutils-debuginfo-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", reference:"binutils-debugsource-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", reference:"binutils-devel-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", reference:"binutils-gold-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", reference:"binutils-gold-debuginfo-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"binutils-devel-32bit-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-aarch64-binutils-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-aarch64-binutils-debuginfo-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-aarch64-binutils-debugsource-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-arm-binutils-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-arm-binutils-debuginfo-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-arm-binutils-debugsource-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-avr-binutils-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-avr-binutils-debuginfo-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-avr-binutils-debugsource-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-epiphany-binutils-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-epiphany-binutils-debuginfo-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-epiphany-binutils-debugsource-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-hppa-binutils-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-hppa-binutils-debuginfo-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-hppa-binutils-debugsource-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-hppa64-binutils-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-hppa64-binutils-debuginfo-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-hppa64-binutils-debugsource-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-i386-binutils-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-i386-binutils-debuginfo-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-i386-binutils-debugsource-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-ia64-binutils-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-ia64-binutils-debuginfo-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-ia64-binutils-debugsource-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-m68k-binutils-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-m68k-binutils-debuginfo-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-m68k-binutils-debugsource-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-mips-binutils-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-mips-binutils-debuginfo-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-mips-binutils-debugsource-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-ppc-binutils-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-ppc-binutils-debuginfo-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-ppc-binutils-debugsource-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-ppc64-binutils-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-ppc64-binutils-debuginfo-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-ppc64-binutils-debugsource-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-ppc64le-binutils-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-ppc64le-binutils-debuginfo-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-ppc64le-binutils-debugsource-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-riscv64-binutils-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-riscv64-binutils-debuginfo-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-riscv64-binutils-debugsource-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-rx-binutils-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-rx-binutils-debuginfo-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-rx-binutils-debugsource-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-s390-binutils-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-s390-binutils-debuginfo-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-s390-binutils-debugsource-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-s390x-binutils-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-s390x-binutils-debuginfo-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-s390x-binutils-debugsource-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-sparc-binutils-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-sparc-binutils-debuginfo-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-sparc-binutils-debugsource-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-sparc64-binutils-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-sparc64-binutils-debuginfo-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-sparc64-binutils-debugsource-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-spu-binutils-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-spu-binutils-debuginfo-2.32-lp151.3.3.1") ) flag++;
    if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"cross-spu-binutils-debugsource-2.32-lp151.3.3.1") ) flag++;
    
    if (flag)
    {
      if (report_verbosity > 0) security_warning(port:0, extra:rpm_report_get());
      else security_warning(0);
      exit(0);
    }
    else
    {
      tested = pkg_tests_get();
      if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested);
      else audit(AUDIT_PACKAGE_NOT_INSTALLED, "binutils / binutils-debuginfo / binutils-debugsource / etc");
    }
    
  • NASL familySuSE Local Security Checks
    NASL idSUSE_SU-2019-2650-1.NASL
    descriptionThis update for binutils fixes the following issues : binutils was updated to current 2.32 branch @7b468db3 [jsc#ECO-368] : Includes the following security fixes : CVE-2018-17358: Fixed invalid memory access in _bfd_stab_section_find_nearest_line in syms.c (bsc#1109412) CVE-2018-17359: Fixed invalid memory access exists in bfd_zalloc in opncls.c (bsc#1109413) CVE-2018-17360: Fixed heap-based buffer over-read in bfd_getl32 in libbfd.c (bsc#1109414) CVE-2018-17985: Fixed a stack consumption problem caused by the cplus_demangle_type (bsc#1116827) CVE-2018-18309: Fixed an invalid memory address dereference was discovered in read_reloc in reloc.c (bsc#1111996) CVE-2018-18483: Fixed get_count function provided by libiberty that allowed attackers to cause a denial of service or other unspecified impact (bsc#1112535) CVE-2018-18484: Fixed stack exhaustion in the C++ demangling functions provided by libiberty, caused by recursive stack frames (bsc#1112534) CVE-2018-18605: Fixed a heap-based buffer over-read issue was discovered in the function sec_merge_hash_lookup causing a denial of service (bsc#1113255) CVE-2018-18606: Fixed a NULL pointer dereference in _bfd_add_merge_section when attempting to merge sections with large alignments, causing denial of service (bsc#1113252) CVE-2018-18607: Fixed a NULL pointer dereference in elf_link_input_bfd when used for finding STT_TLS symbols without any TLS section, causing denial of service (bsc#1113247) CVE-2018-19931: Fixed a heap-based buffer overflow in bfd_elf32_swap_phdr_in in elfcode.h (bsc#1118831) CVE-2018-19932: Fixed an integer overflow and infinite loop caused by the IS_CONTAINED_BY_LMA (bsc#1118830) CVE-2018-20623: Fixed a use-after-free in the error function in elfcomm.c (bsc#1121035) CVE-2018-20651: Fixed a denial of service via a NULL pointer dereference in elf_link_add_object_symbols in elflink.c (bsc#1121034) CVE-2018-20671: Fixed an integer overflow that can trigger a heap-based buffer overflow in load_specific_debug_section in objdump.c (bsc#1121056) CVE-2018-1000876: Fixed integer overflow in bfd_get_dynamic_reloc_upper_bound,bfd_canonicalize_dynamic_reloc in objdump (bsc#1120640) CVE-2019-1010180: Fixed an out of bound memory access that could lead to crashes (bsc#1142772) Enable xtensa architecture (Tensilica lc6 and related) Use -ffat-lto-objects in order to provide assembly for static libs (bsc#1141913). Fixed some LTO problems (bsc#1133131 bsc#1133232). riscv: Don
    last seen2020-06-01
    modified2020-06-02
    plugin id129879
    published2019-10-15
    reporterThis script is Copyright (C) 2019 and is owned by Tenable, Inc. or an Affiliate thereof.
    sourcehttps://www.tenable.com/plugins/nessus/129879
    titleSUSE SLED12 / SLES12 Security Update : binutils (SUSE-SU-2019:2650-1)
    code
    #
    # (C) Tenable Network Security, Inc.
    #
    # The descriptive text and package checks in this plugin were
    # extracted from SUSE update advisory SUSE-SU-2019:2650-1.
    # The text itself is copyright (C) SUSE.
    #
    
    include("compat.inc");
    
    if (description)
    {
      script_id(129879);
      script_version("1.2");
      script_cvs_date("Date: 2019/12/19");
    
      script_cve_id("CVE-2018-1000876", "CVE-2018-17358", "CVE-2018-17359", "CVE-2018-17360", "CVE-2018-17985", "CVE-2018-18309", "CVE-2018-18483", "CVE-2018-18484", "CVE-2018-18605", "CVE-2018-18606", "CVE-2018-18607", "CVE-2018-19931", "CVE-2018-19932", "CVE-2018-20623", "CVE-2018-20651", "CVE-2018-20671", "CVE-2019-1010180");
    
      script_name(english:"SUSE SLED12 / SLES12 Security Update : binutils (SUSE-SU-2019:2650-1)");
      script_summary(english:"Checks rpm output for the updated packages.");
    
      script_set_attribute(
        attribute:"synopsis", 
        value:"The remote SUSE host is missing one or more security updates."
      );
      script_set_attribute(
        attribute:"description", 
        value:
    "This update for binutils fixes the following issues :
    
    binutils was updated to current 2.32 branch @7b468db3 [jsc#ECO-368] :
    
    Includes the following security fixes :
    
    CVE-2018-17358: Fixed invalid memory access in
    _bfd_stab_section_find_nearest_line in syms.c (bsc#1109412)
    
    CVE-2018-17359: Fixed invalid memory access exists in bfd_zalloc in
    opncls.c (bsc#1109413)
    
    CVE-2018-17360: Fixed heap-based buffer over-read in bfd_getl32 in
    libbfd.c (bsc#1109414)
    
    CVE-2018-17985: Fixed a stack consumption problem caused by the
    cplus_demangle_type (bsc#1116827)
    
    CVE-2018-18309: Fixed an invalid memory address dereference was
    discovered in read_reloc in reloc.c (bsc#1111996)
    
    CVE-2018-18483: Fixed get_count function provided by libiberty that
    allowed attackers to cause a denial of service or other unspecified
    impact (bsc#1112535)
    
    CVE-2018-18484: Fixed stack exhaustion in the C++ demangling functions
    provided by libiberty, caused by recursive stack frames (bsc#1112534)
    
    CVE-2018-18605: Fixed a heap-based buffer over-read issue was
    discovered in the function sec_merge_hash_lookup causing a denial of
    service (bsc#1113255)
    
    CVE-2018-18606: Fixed a NULL pointer dereference in
    _bfd_add_merge_section when attempting to merge sections with large
    alignments, causing denial of service (bsc#1113252)
    
    CVE-2018-18607: Fixed a NULL pointer dereference in elf_link_input_bfd
    when used for finding STT_TLS symbols without any TLS section, causing
    denial of service (bsc#1113247)
    
    CVE-2018-19931: Fixed a heap-based buffer overflow in
    bfd_elf32_swap_phdr_in in elfcode.h (bsc#1118831)
    
    CVE-2018-19932: Fixed an integer overflow and infinite loop caused by
    the IS_CONTAINED_BY_LMA (bsc#1118830)
    
    CVE-2018-20623: Fixed a use-after-free in the error function in
    elfcomm.c (bsc#1121035)
    
    CVE-2018-20651: Fixed a denial of service via a NULL pointer
    dereference in elf_link_add_object_symbols in elflink.c (bsc#1121034)
    
    CVE-2018-20671: Fixed an integer overflow that can trigger a
    heap-based buffer overflow in load_specific_debug_section in objdump.c
    (bsc#1121056)
    
    CVE-2018-1000876: Fixed integer overflow in
    bfd_get_dynamic_reloc_upper_bound,bfd_canonicalize_dynamic_reloc in
    objdump (bsc#1120640)
    
    CVE-2019-1010180: Fixed an out of bound memory access that could lead
    to crashes (bsc#1142772)
    
    Enable xtensa architecture (Tensilica lc6 and related)
    
    Use -ffat-lto-objects in order to provide assembly for static libs
    (bsc#1141913).
    
    Fixed some LTO problems (bsc#1133131 bsc#1133232).
    
    riscv: Don't check ABI flags if no code section
    
    Update to binutils 2.32: The binutils now support for the C-SKY
    processor series.
    
    The x86 assembler now supports a -mvexwig=[0|1] option to control
    encoding of VEX.W-ignored (WIG) VEX instructions. It also has a new
    
    -mx86-used-note=[yes|no] option to generate (or not) x86 GNU property
    notes.
    
    The MIPS assembler now supports the Loongson EXTensions R2 (EXT2), the
    Loongson EXTensions (EXT) instructions, the Loongson Content Address
    Memory (CAM) ASE and the Loongson MultiMedia extensions Instructions
    (MMI) ASE.
    
    The addr2line, c++filt, nm and objdump tools now have a default limit
    on the maximum amount of recursion that is allowed whilst demangling
    strings. This limit can be disabled if necessary.
    
    Objdump's --disassemble option can now take a parameter, specifying
    the starting symbol for disassembly. Disassembly will continue from
    this symbol up to the next symbol or the end of the function.
    
    The BFD linker will now report property change in linker map file when
    merging GNU properties.
    
    The BFD linker's -t option now doesn't report members within archives,
    unless -t is given twice. This makes it more useful when generating a
    list of files that should be packaged for a linker bug report.
    
    The GOLD linker has improved warning messages for relocations that
    refer to discarded sections.
    
    Improve relro support on s390 [fate#326356]
    
    Handle ELF compressed header alignment correctly.
    
    Note that Tenable Network Security has extracted the preceding
    description block directly from the SUSE security advisory. Tenable
    has attempted to automatically clean and format it as much as possible
    without introducing additional issues."
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1109412"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1109413"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1109414"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1111996"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1112534"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1112535"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1113247"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1113252"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1113255"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1116827"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1118830"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1118831"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1120640"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1121034"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1121035"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1121056"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1133131"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1133232"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1141913"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1142772"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-1000876/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-17358/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-17359/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-17360/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-17985/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-18309/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-18483/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-18484/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-18605/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-18606/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-18607/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-19931/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-19932/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-20623/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-20651/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-20671/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2019-1010180/"
      );
      # https://www.suse.com/support/update/announcement/2019/suse-su-20192650-1/
      script_set_attribute(
        attribute:"see_also",
        value:"http://www.nessus.org/u?fc1443fc"
      );
      script_set_attribute(
        attribute:"solution", 
        value:
    "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 OpenStack Cloud Crowbar 8:zypper in -t patch
    SUSE-OpenStack-Cloud-Crowbar-8-2019-2650=1
    
    SUSE OpenStack Cloud 8:zypper in -t patch
    SUSE-OpenStack-Cloud-8-2019-2650=1
    
    SUSE OpenStack Cloud 7:zypper in -t patch
    SUSE-OpenStack-Cloud-7-2019-2650=1
    
    SUSE Linux Enterprise Software Development Kit 12-SP5:zypper in -t
    patch SUSE-SLE-SDK-12-SP5-2019-2650=1
    
    SUSE Linux Enterprise Software Development Kit 12-SP4:zypper in -t
    patch SUSE-SLE-SDK-12-SP4-2019-2650=1
    
    SUSE Linux Enterprise Server for SAP 12-SP3:zypper in -t patch
    SUSE-SLE-SAP-12-SP3-2019-2650=1
    
    SUSE Linux Enterprise Server for SAP 12-SP2:zypper in -t patch
    SUSE-SLE-SAP-12-SP2-2019-2650=1
    
    SUSE Linux Enterprise Server for SAP 12-SP1:zypper in -t patch
    SUSE-SLE-SAP-12-SP1-2019-2650=1
    
    SUSE Linux Enterprise Server 12-SP5:zypper in -t patch
    SUSE-SLE-SERVER-12-SP5-2019-2650=1
    
    SUSE Linux Enterprise Server 12-SP4:zypper in -t patch
    SUSE-SLE-SERVER-12-SP4-2019-2650=1
    
    SUSE Linux Enterprise Server 12-SP3-LTSS:zypper in -t patch
    SUSE-SLE-SERVER-12-SP3-2019-2650=1
    
    SUSE Linux Enterprise Server 12-SP3-BCL:zypper in -t patch
    SUSE-SLE-SERVER-12-SP3-BCL-2019-2650=1
    
    SUSE Linux Enterprise Server 12-SP2-LTSS:zypper in -t patch
    SUSE-SLE-SERVER-12-SP2-2019-2650=1
    
    SUSE Linux Enterprise Server 12-SP2-BCL:zypper in -t patch
    SUSE-SLE-SERVER-12-SP2-BCL-2019-2650=1
    
    SUSE Linux Enterprise Server 12-SP1-LTSS:zypper in -t patch
    SUSE-SLE-SERVER-12-SP1-2019-2650=1
    
    SUSE Linux Enterprise Desktop 12-SP5:zypper in -t patch
    SUSE-SLE-DESKTOP-12-SP5-2019-2650=1
    
    SUSE Linux Enterprise Desktop 12-SP4:zypper in -t patch
    SUSE-SLE-DESKTOP-12-SP4-2019-2650=1
    
    SUSE Enterprise Storage 5:zypper in -t patch
    SUSE-Storage-5-2019-2650=1
    
    SUSE Enterprise Storage 4:zypper in -t patch
    SUSE-Storage-4-2019-2650=1
    
    HPE Helion Openstack 8:zypper in -t patch
    HPE-Helion-OpenStack-8-2019-2650=1"
      );
      script_set_cvss_base_vector("CVSS2#AV:N/AC:M/Au:N/C:P/I:P/A:P");
      script_set_cvss_temporal_vector("CVSS2#E:U/RL:OF/RC:C");
      script_set_cvss3_base_vector("CVSS:3.0/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H");
      script_set_cvss3_temporal_vector("CVSS:3.0/E:U/RL:O/RC:C");
      script_set_attribute(attribute:"cvss_score_source", value:"CVE-2019-1010180");
      script_set_attribute(attribute:"exploitability_ease", value:"No known exploits are available");
    
      script_set_attribute(attribute:"plugin_type", value:"local");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:binutils-devel");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:novell:suse_linux:12");
    
      script_set_attribute(attribute:"vuln_publication_date", value:"2018/09/23");
      script_set_attribute(attribute:"patch_publication_date", value:"2019/10/14");
      script_set_attribute(attribute:"plugin_publication_date", value:"2019/10/15");
      script_set_attribute(attribute:"generated_plugin", value:"current");
      script_end_attributes();
    
      script_category(ACT_GATHER_INFO);
      script_copyright(english:"This script is Copyright (C) 2019 and is owned by Tenable, Inc. or an Affiliate thereof.");
      script_family(english:"SuSE Local Security Checks");
    
      script_dependencies("ssh_get_info.nasl");
      script_require_keys("Host/local_checks_enabled", "Host/cpu", "Host/SuSE/release", "Host/SuSE/rpm-list");
    
      exit(0);
    }
    
    
    include("audit.inc");
    include("global_settings.inc");
    include("rpm.inc");
    
    
    if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
    release = get_kb_item("Host/SuSE/release");
    if (isnull(release) || release !~ "^(SLED|SLES)") audit(AUDIT_OS_NOT, "SUSE");
    os_ver = pregmatch(pattern: "^(SLE(S|D)\d+)", string:release);
    if (isnull(os_ver)) audit(AUDIT_UNKNOWN_APP_VER, "SUSE");
    os_ver = os_ver[1];
    if (! preg(pattern:"^(SLED12|SLES12)$", string:os_ver)) audit(AUDIT_OS_NOT, "SUSE SLED12 / SLES12", "SUSE " + os_ver);
    
    if (!get_kb_item("Host/SuSE/rpm-list")) audit(AUDIT_PACKAGE_LIST_MISSING);
    
    cpu = get_kb_item("Host/cpu");
    if (isnull(cpu)) audit(AUDIT_UNKNOWN_ARCH);
    if (cpu !~ "^i[3-6]86$" && "x86_64" >!< cpu && "s390x" >!< cpu) audit(AUDIT_LOCAL_CHECKS_NOT_IMPLEMENTED, "SUSE " + os_ver, cpu);
    
    sp = get_kb_item("Host/SuSE/patchlevel");
    if (isnull(sp)) sp = "0";
    if (os_ver == "SLES12" && (! preg(pattern:"^(1|2|3|4|5)$", string:sp))) audit(AUDIT_OS_NOT, "SLES12 SP1/2/3/4/5", os_ver + " SP" + sp);
    if (os_ver == "SLED12" && (! preg(pattern:"^(4|5)$", string:sp))) audit(AUDIT_OS_NOT, "SLED12 SP4/5", os_ver + " SP" + sp);
    
    
    flag = 0;
    if (rpm_check(release:"SLES12", sp:"1", reference:"binutils-2.32-9.33.1")) flag++;
    if (rpm_check(release:"SLES12", sp:"1", reference:"binutils-debuginfo-2.32-9.33.1")) flag++;
    if (rpm_check(release:"SLES12", sp:"1", reference:"binutils-debugsource-2.32-9.33.1")) flag++;
    if (rpm_check(release:"SLES12", sp:"1", reference:"binutils-devel-2.32-9.33.1")) flag++;
    if (rpm_check(release:"SLES12", sp:"4", reference:"binutils-2.32-9.33.1")) flag++;
    if (rpm_check(release:"SLES12", sp:"4", reference:"binutils-debuginfo-2.32-9.33.1")) flag++;
    if (rpm_check(release:"SLES12", sp:"4", reference:"binutils-debugsource-2.32-9.33.1")) flag++;
    if (rpm_check(release:"SLES12", sp:"3", cpu:"x86_64", reference:"binutils-2.32-9.33.1")) flag++;
    if (rpm_check(release:"SLES12", sp:"3", cpu:"x86_64", reference:"binutils-debuginfo-2.32-9.33.1")) flag++;
    if (rpm_check(release:"SLES12", sp:"3", cpu:"x86_64", reference:"binutils-debugsource-2.32-9.33.1")) flag++;
    if (rpm_check(release:"SLES12", sp:"3", reference:"binutils-2.32-9.33.1")) flag++;
    if (rpm_check(release:"SLES12", sp:"3", reference:"binutils-debuginfo-2.32-9.33.1")) flag++;
    if (rpm_check(release:"SLES12", sp:"3", reference:"binutils-debugsource-2.32-9.33.1")) flag++;
    if (rpm_check(release:"SLES12", sp:"2", cpu:"x86_64", reference:"binutils-2.32-9.33.1")) flag++;
    if (rpm_check(release:"SLES12", sp:"2", cpu:"x86_64", reference:"binutils-debuginfo-2.32-9.33.1")) flag++;
    if (rpm_check(release:"SLES12", sp:"2", cpu:"x86_64", reference:"binutils-debugsource-2.32-9.33.1")) flag++;
    if (rpm_check(release:"SLES12", sp:"2", reference:"binutils-2.32-9.33.1")) flag++;
    if (rpm_check(release:"SLES12", sp:"2", reference:"binutils-debuginfo-2.32-9.33.1")) flag++;
    if (rpm_check(release:"SLES12", sp:"2", reference:"binutils-debugsource-2.32-9.33.1")) flag++;
    if (rpm_check(release:"SLES12", sp:"2", reference:"binutils-devel-2.32-9.33.1")) flag++;
    if (rpm_check(release:"SLES12", sp:"5", reference:"binutils-2.32-9.33.1")) flag++;
    if (rpm_check(release:"SLES12", sp:"5", reference:"binutils-debuginfo-2.32-9.33.1")) flag++;
    if (rpm_check(release:"SLES12", sp:"5", reference:"binutils-debugsource-2.32-9.33.1")) flag++;
    if (rpm_check(release:"SLED12", sp:"4", cpu:"x86_64", reference:"binutils-2.32-9.33.1")) flag++;
    if (rpm_check(release:"SLED12", sp:"4", cpu:"x86_64", reference:"binutils-debuginfo-2.32-9.33.1")) flag++;
    if (rpm_check(release:"SLED12", sp:"4", cpu:"x86_64", reference:"binutils-debugsource-2.32-9.33.1")) flag++;
    if (rpm_check(release:"SLED12", sp:"5", cpu:"x86_64", reference:"binutils-2.32-9.33.1")) flag++;
    if (rpm_check(release:"SLED12", sp:"5", cpu:"x86_64", reference:"binutils-debuginfo-2.32-9.33.1")) flag++;
    if (rpm_check(release:"SLED12", sp:"5", cpu:"x86_64", reference:"binutils-debugsource-2.32-9.33.1")) flag++;
    
    
    if (flag)
    {
      if (report_verbosity > 0) security_warning(port:0, extra:rpm_report_get());
      else security_warning(0);
      exit(0);
    }
    else
    {
      tested = pkg_tests_get();
      if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested);
      else audit(AUDIT_PACKAGE_NOT_INSTALLED, "binutils");
    }
    
  • NASL familyGentoo Local Security Checks
    NASL idGENTOO_GLSA-201908-01.NASL
    descriptionThe remote host is affected by the vulnerability described in GLSA-201908-01 (Binutils: Multiple vulnerabilities) Multiple vulnerabilities have been discovered in Binutils. Please review the referenced CVE identifiers for details. Impact : A remote attacker, by enticing a user to compile/execute a specially crafted ELF, object, PE, or binary file, could possibly cause a Denial of Service condition or have other unspecified impacts. Workaround : There is no known workaround at this time.
    last seen2020-06-01
    modified2020-06-02
    plugin id127559
    published2019-08-12
    reporterThis script is Copyright (C) 2019-2020 and is owned by Tenable, Inc. or an Affiliate thereof.
    sourcehttps://www.tenable.com/plugins/nessus/127559
    titleGLSA-201908-01 : Binutils: Multiple vulnerabilities
    code
    #
    # (C) Tenable Network Security, Inc.
    #
    # The descriptive text and package checks in this plugin were
    # extracted from Gentoo Linux Security Advisory GLSA 201908-01.
    #
    # The advisory text is Copyright (C) 2001-2020 Gentoo Foundation, Inc.
    # and licensed under the Creative Commons - Attribution / Share Alike 
    # license. See http://creativecommons.org/licenses/by-sa/3.0/
    #
    
    include("compat.inc");
    
    if (description)
    {
      script_id(127559);
      script_version("1.2");
      script_cvs_date("Date: 2020/01/06");
    
      script_cve_id("CVE-2018-10372", "CVE-2018-10373", "CVE-2018-10534", "CVE-2018-10535", "CVE-2018-12641", "CVE-2018-12697", "CVE-2018-12698", "CVE-2018-12699", "CVE-2018-12700", "CVE-2018-13033", "CVE-2018-19931", "CVE-2018-19932", "CVE-2018-20002", "CVE-2018-20651");
      script_xref(name:"GLSA", value:"201908-01");
    
      script_name(english:"GLSA-201908-01 : Binutils: Multiple vulnerabilities");
      script_summary(english:"Checks for updated package(s) in /var/db/pkg");
    
      script_set_attribute(
        attribute:"synopsis", 
        value:
    "The remote Gentoo host is missing one or more security-related
    patches."
      );
      script_set_attribute(
        attribute:"description", 
        value:
    "The remote host is affected by the vulnerability described in GLSA-201908-01
    (Binutils: Multiple vulnerabilities)
    
        Multiple vulnerabilities have been discovered in Binutils. Please review
          the referenced CVE identifiers for details.
      
    Impact :
    
        A remote attacker, by enticing a user to compile/execute a specially
          crafted ELF, object, PE, or binary file, could possibly cause a Denial of
          Service condition or have other unspecified impacts.
      
    Workaround :
    
        There is no known workaround at this time."
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://security.gentoo.org/glsa/201908-01"
      );
      script_set_attribute(
        attribute:"solution", 
        value:
    "All Binutils users should upgrade to the latest version:
          # emerge --sync
          # emerge --ask --oneshot --verbose '>=sys-devel/binutils-2.32-r1'"
      );
      script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:P/I:P/A:P");
      script_set_cvss_temporal_vector("CVSS2#E:U/RL:OF/RC:C");
      script_set_cvss3_base_vector("CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H");
      script_set_cvss3_temporal_vector("CVSS:3.0/E:U/RL:O/RC:C");
      script_set_attribute(attribute:"exploitability_ease", value:"No known exploits are available");
    
      script_set_attribute(attribute:"plugin_type", value:"local");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:gentoo:linux:binutils");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:gentoo:linux");
    
      script_set_attribute(attribute:"vuln_publication_date", value:"2018/04/25");
      script_set_attribute(attribute:"patch_publication_date", value:"2019/08/03");
      script_set_attribute(attribute:"plugin_publication_date", value:"2019/08/12");
      script_set_attribute(attribute:"generated_plugin", value:"current");
      script_end_attributes();
    
      script_category(ACT_GATHER_INFO);
      script_copyright(english:"This script is Copyright (C) 2019-2020 and is owned by Tenable, Inc. or an Affiliate thereof.");
      script_family(english:"Gentoo Local Security Checks");
    
      script_dependencies("ssh_get_info.nasl");
      script_require_keys("Host/local_checks_enabled", "Host/Gentoo/release", "Host/Gentoo/qpkg-list");
    
      exit(0);
    }
    
    
    include("audit.inc");
    include("global_settings.inc");
    include("qpkg.inc");
    
    if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
    if (!get_kb_item("Host/Gentoo/release")) audit(AUDIT_OS_NOT, "Gentoo");
    if (!get_kb_item("Host/Gentoo/qpkg-list")) audit(AUDIT_PACKAGE_LIST_MISSING);
    
    
    flag = 0;
    
    if (qpkg_check(package:"sys-devel/binutils", unaffected:make_list("ge 2.32-r1"), vulnerable:make_list("lt 2.32-r1"))) flag++;
    
    if (flag)
    {
      if (report_verbosity > 0) security_hole(port:0, extra:qpkg_report_get());
      else security_hole(0);
      exit(0);
    }
    else
    {
      tested = qpkg_tests_get();
      if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested);
      else audit(AUDIT_PACKAGE_NOT_INSTALLED, "Binutils");
    }
    
  • NASL familyPhotonOS Local Security Checks
    NASL idPHOTONOS_PHSA-2019-1_0-0242_BINUTILS.NASL
    descriptionAn update of the binutils package has been released.
    last seen2020-06-01
    modified2020-06-02
    plugin id126470
    published2019-07-04
    reporterThis script is Copyright (C) 2019-2020 and is owned by Tenable, Inc. or an Affiliate thereof.
    sourcehttps://www.tenable.com/plugins/nessus/126470
    titlePhoton OS 1.0: Binutils PHSA-2019-1.0-0242
    code
    #
    # (C) Tenable Network Security, Inc.
    #
    
    # The descriptive text and package checks in this plugin were
    # extracted from VMware Security Advisory PHSA-2019-1.0-0242. The text
    # itself is copyright (C) VMware, Inc.
    
    include("compat.inc");
    
    if (description)
    {
      script_id(126470);
      script_version("1.2");
      script_cvs_date("Date: 2020/01/07");
    
      script_cve_id("CVE-2018-20623", "CVE-2018-20651", "CVE-2018-20671");
    
      script_name(english:"Photon OS 1.0: Binutils PHSA-2019-1.0-0242");
      script_summary(english:"Checks the rpm output for the updated packages.");
    
      script_set_attribute(attribute:"synopsis", value:
    "The remote PhotonOS host is missing multiple security updates.");
      script_set_attribute(attribute:"description", value:
    "An update of the binutils package has been released.");
      script_set_attribute(attribute:"see_also", value:"https://github.com/vmware/photon/wiki/Security-Updates-1.0-242.md");
      script_set_attribute(attribute:"solution", value:
    "Update the affected Linux packages.");
      script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:P/I:P/A:P");
      script_set_cvss_temporal_vector("CVSS2#E:U/RL:OF/RC:C");
      script_set_cvss3_base_vector("CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H");
      script_set_cvss3_temporal_vector("CVSS:3.0/E:U/RL:O/RC:C");
      script_set_attribute(attribute:"cvss_score_source", value:"CVE-2019-12900");
    
      script_set_attribute(attribute:"exploitability_ease", value:"No known exploits are available");
    
      script_set_attribute(attribute:"vuln_publication_date", value:"2018/12/31");
      script_set_attribute(attribute:"patch_publication_date", value:"2019/06/28");
      script_set_attribute(attribute:"plugin_publication_date", value:"2019/07/04");
    
      script_set_attribute(attribute:"plugin_type", value:"local");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:vmware:photonos:binutils");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:vmware:photonos:1.0");
      script_end_attributes();
    
      script_category(ACT_GATHER_INFO);
      script_family(english:"PhotonOS Local Security Checks");
    
      script_copyright(english:"This script is Copyright (C) 2019-2020 and is owned by Tenable, Inc. or an Affiliate thereof.");
    
      script_dependencies("ssh_get_info.nasl");
      script_require_keys("Host/local_checks_enabled", "Host/PhotonOS/release", "Host/PhotonOS/rpm-list");
    
      exit(0);
    }
    
    include("audit.inc");
    include("global_settings.inc");
    include("rpm.inc");
    
    if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
    
    release = get_kb_item("Host/PhotonOS/release");
    if (isnull(release) || release !~ "^VMware Photon") audit(AUDIT_OS_NOT, "PhotonOS");
    if (release !~ "^VMware Photon (?:Linux|OS) 1\.0(\D|$)") audit(AUDIT_OS_NOT, "PhotonOS 1.0");
    
    if (!get_kb_item("Host/PhotonOS/rpm-list")) audit(AUDIT_PACKAGE_LIST_MISSING);
    
    cpu = get_kb_item("Host/cpu");
    if (isnull(cpu)) audit(AUDIT_UNKNOWN_ARCH);
    if ("x86_64" >!< cpu && cpu !~ "^i[3-6]86$") audit(AUDIT_LOCAL_CHECKS_NOT_IMPLEMENTED, "PhotonOS", cpu);
    
    flag = 0;
    
    if (rpm_check(release:"PhotonOS-1.0", reference:"binutils-2.31-8.ph1")) flag++;
    if (rpm_check(release:"PhotonOS-1.0", reference:"binutils-debuginfo-2.31-8.ph1")) flag++;
    if (rpm_check(release:"PhotonOS-1.0", reference:"binutils-devel-2.31-8.ph1")) flag++;
    
    if (flag)
    {
      security_report_v4(
        port       : 0,
        severity   : SECURITY_HOLE,
        extra      : rpm_report_get()
      );
      exit(0);
    }
    else
    {
      tested = pkg_tests_get();
      if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested);
      else audit(AUDIT_PACKAGE_NOT_INSTALLED, "binutils");
    }
    
  • NASL familySuSE Local Security Checks
    NASL idOPENSUSE-2019-2415.NASL
    descriptionThis update for binutils fixes the following issues : binutils was updated to current 2.32 branch [jsc#ECO-368]. Includes following security fixes : - CVE-2018-17358: Fixed invalid memory access in _bfd_stab_section_find_nearest_line in syms.c (bsc#1109412) - CVE-2018-17359: Fixed invalid memory access exists in bfd_zalloc in opncls.c (bsc#1109413) - CVE-2018-17360: Fixed heap-based buffer over-read in bfd_getl32 in libbfd.c (bsc#1109414) - CVE-2018-17985: Fixed a stack consumption problem caused by the cplus_demangle_type (bsc#1116827) - CVE-2018-18309: Fixed an invalid memory address dereference was discovered in read_reloc in reloc.c (bsc#1111996) - CVE-2018-18483: Fixed get_count function provided by libiberty that allowed attackers to cause a denial of service or other unspecified impact (bsc#1112535) - CVE-2018-18484: Fixed stack exhaustion in the C++ demangling functions provided by libiberty, caused by recursive stack frames (bsc#1112534) - CVE-2018-18605: Fixed a heap-based buffer over-read issue was discovered in the function sec_merge_hash_lookup causing a denial of service (bsc#1113255) - CVE-2018-18606: Fixed a NULL pointer dereference in _bfd_add_merge_section when attempting to merge sections with large alignments, causing denial of service (bsc#1113252) - CVE-2018-18607: Fixed a NULL pointer dereference in elf_link_input_bfd when used for finding STT_TLS symbols without any TLS section, causing denial of service (bsc#1113247) - CVE-2018-19931: Fixed a heap-based buffer overflow in bfd_elf32_swap_phdr_in in elfcode.h (bsc#1118831) - CVE-2018-19932: Fixed an integer overflow and infinite loop caused by the IS_CONTAINED_BY_LMA (bsc#1118830) - CVE-2018-20623: Fixed a use-after-free in the error function in elfcomm.c (bsc#1121035) - CVE-2018-20651: Fixed a denial of service via a NULL pointer dereference in elf_link_add_object_symbols in elflink.c (bsc#1121034) - CVE-2018-20671: Fixed an integer overflow that can trigger a heap-based buffer overflow in load_specific_debug_section in objdump.c (bsc#1121056) - CVE-2018-1000876: Fixed integer overflow in bfd_get_dynamic_reloc_upper_bound,bfd_canonicalize_dynam ic_reloc in objdump (bsc#1120640) - CVE-2019-1010180: Fixed an out of bound memory access that could lead to crashes (bsc#1142772) - enable xtensa architecture (Tensilica lc6 and related) - Use -ffat-lto-objects in order to provide assembly for static libs (bsc#1141913). - Fixed some LTO build issues (bsc#1133131 bsc#1133232). - riscv: Don
    last seen2020-06-01
    modified2020-06-02
    plugin id130420
    published2019-10-31
    reporterThis script is Copyright (C) 2019 and is owned by Tenable, Inc. or an Affiliate thereof.
    sourcehttps://www.tenable.com/plugins/nessus/130420
    titleopenSUSE Security Update : binutils (openSUSE-2019-2415)
    code
    #
    # (C) Tenable Network Security, Inc.
    #
    # The descriptive text and package checks in this plugin were
    # extracted from openSUSE Security Update openSUSE-2019-2415.
    #
    # The text description of this plugin is (C) SUSE LLC.
    #
    
    include("compat.inc");
    
    if (description)
    {
      script_id(130420);
      script_version("1.2");
      script_cvs_date("Date: 2019/12/17");
    
      script_cve_id("CVE-2018-1000876", "CVE-2018-17358", "CVE-2018-17359", "CVE-2018-17360", "CVE-2018-17985", "CVE-2018-18309", "CVE-2018-18483", "CVE-2018-18484", "CVE-2018-18605", "CVE-2018-18606", "CVE-2018-18607", "CVE-2018-19931", "CVE-2018-19932", "CVE-2018-20623", "CVE-2018-20651", "CVE-2018-20671", "CVE-2018-6323", "CVE-2018-6543", "CVE-2018-6759", "CVE-2018-6872", "CVE-2018-7208", "CVE-2018-7568", "CVE-2018-7569", "CVE-2018-7570", "CVE-2018-7642", "CVE-2018-7643", "CVE-2018-8945", "CVE-2019-1010180");
    
      script_name(english:"openSUSE Security Update : binutils (openSUSE-2019-2415)");
      script_summary(english:"Check for the openSUSE-2019-2415 patch");
    
      script_set_attribute(
        attribute:"synopsis", 
        value:"The remote openSUSE host is missing a security update."
      );
      script_set_attribute(
        attribute:"description", 
        value:
    "This update for binutils fixes the following issues :
    
    binutils was updated to current 2.32 branch [jsc#ECO-368].
    
    Includes following security fixes :
    
      - CVE-2018-17358: Fixed invalid memory access in
        _bfd_stab_section_find_nearest_line in syms.c
        (bsc#1109412)
    
      - CVE-2018-17359: Fixed invalid memory access exists in
        bfd_zalloc in opncls.c (bsc#1109413)
    
      - CVE-2018-17360: Fixed heap-based buffer over-read in
        bfd_getl32 in libbfd.c (bsc#1109414)
    
      - CVE-2018-17985: Fixed a stack consumption problem caused
        by the cplus_demangle_type (bsc#1116827)
    
      - CVE-2018-18309: Fixed an invalid memory address
        dereference was discovered in read_reloc in reloc.c
        (bsc#1111996)
    
      - CVE-2018-18483: Fixed get_count function provided by
        libiberty that allowed attackers to cause a denial of
        service or other unspecified impact (bsc#1112535)
    
      - CVE-2018-18484: Fixed stack exhaustion in the C++
        demangling functions provided by libiberty, caused by
        recursive stack frames (bsc#1112534)
    
      - CVE-2018-18605: Fixed a heap-based buffer over-read
        issue was discovered in the function
        sec_merge_hash_lookup causing a denial of service
        (bsc#1113255)
    
      - CVE-2018-18606: Fixed a NULL pointer dereference in
        _bfd_add_merge_section when attempting to merge sections
        with large alignments, causing denial of service
        (bsc#1113252)
    
      - CVE-2018-18607: Fixed a NULL pointer dereference in
        elf_link_input_bfd when used for finding STT_TLS symbols
        without any TLS section, causing denial of service
        (bsc#1113247)
    
      - CVE-2018-19931: Fixed a heap-based buffer overflow in
        bfd_elf32_swap_phdr_in in elfcode.h (bsc#1118831)
    
      - CVE-2018-19932: Fixed an integer overflow and infinite
        loop caused by the IS_CONTAINED_BY_LMA (bsc#1118830)
    
      - CVE-2018-20623: Fixed a use-after-free in the error
        function in elfcomm.c (bsc#1121035)
    
      - CVE-2018-20651: Fixed a denial of service via a NULL
        pointer dereference in elf_link_add_object_symbols in
        elflink.c (bsc#1121034)
    
      - CVE-2018-20671: Fixed an integer overflow that can
        trigger a heap-based buffer overflow in
        load_specific_debug_section in objdump.c (bsc#1121056)
    
      - CVE-2018-1000876: Fixed integer overflow in
        bfd_get_dynamic_reloc_upper_bound,bfd_canonicalize_dynam
        ic_reloc in objdump (bsc#1120640)
    
      - CVE-2019-1010180: Fixed an out of bound memory access
        that could lead to crashes (bsc#1142772)
    
      - enable xtensa architecture (Tensilica lc6 and related)
    
      - Use -ffat-lto-objects in order to provide assembly for
        static libs (bsc#1141913).
    
      - Fixed some LTO build issues (bsc#1133131 bsc#1133232).
    
      - riscv: Don't check ABI flags if no code section
    
      - Fixed a segfault in ld when building some versions of
        pacemaker (bsc#1154025, bsc#1154016).
    
      - Add avr, epiphany and rx to target_list so that the
        common binutils can handle all objects we can create
        with crosses (bsc#1152590).
    
    Update to binutils 2.32 :
    
      - The binutils now support for the C-SKY processor series.
    
      - The x86 assembler now supports a -mvexwig=[0|1] option
        to control encoding of VEX.W-ignored (WIG) VEX
        instructions. It also has a new -mx86-used-note=[yes|no]
        option to generate (or not) x86 GNU property notes. 
    
      - The MIPS assembler now supports the Loongson EXTensions
        R2 (EXT2), the Loongson EXTensions (EXT) instructions,
        the Loongson Content Address Memory (CAM) ASE and the
        Loongson MultiMedia extensions Instructions (MMI) ASE.
    
      - The addr2line, c++filt, nm and objdump tools now have a
        default limit on the maximum amount of recursion that is
        allowed whilst demangling strings. This limit can be
        disabled if necessary.
    
      - Objdump's --disassemble option can now take a parameter,
        specifying the starting symbol for disassembly.
        Disassembly will continue from this symbol up to the
        next symbol or the end of the function.
    
      - The BFD linker will now report property change in linker
        map file when merging GNU properties.
    
      - The BFD linker's -t option now doesn't report members
        within archives, unless -t is given twice. This makes it
        more useful when generating a list of files that should
        be packaged for a linker bug report.
    
      - The GOLD linker has improved warning messages for
        relocations that refer to discarded sections.
    
      - Improve relro support on s390 [fate#326356]
    
      - Fix broken debug symbols (bsc#1118644)
    
      - Handle ELF compressed header alignment correctly.
    
    This update was imported from the SUSE:SLE-15:Update update project."
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.opensuse.org/show_bug.cgi?id=1109412"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.opensuse.org/show_bug.cgi?id=1109413"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.opensuse.org/show_bug.cgi?id=1109414"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.opensuse.org/show_bug.cgi?id=1111996"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.opensuse.org/show_bug.cgi?id=1112534"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.opensuse.org/show_bug.cgi?id=1112535"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.opensuse.org/show_bug.cgi?id=1113247"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.opensuse.org/show_bug.cgi?id=1113252"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.opensuse.org/show_bug.cgi?id=1113255"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.opensuse.org/show_bug.cgi?id=1116827"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.opensuse.org/show_bug.cgi?id=1118644"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.opensuse.org/show_bug.cgi?id=1118830"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.opensuse.org/show_bug.cgi?id=1118831"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.opensuse.org/show_bug.cgi?id=1120640"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.opensuse.org/show_bug.cgi?id=1121034"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.opensuse.org/show_bug.cgi?id=1121035"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.opensuse.org/show_bug.cgi?id=1121056"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.opensuse.org/show_bug.cgi?id=1133131"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.opensuse.org/show_bug.cgi?id=1133232"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.opensuse.org/show_bug.cgi?id=1141913"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.opensuse.org/show_bug.cgi?id=1142772"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.opensuse.org/show_bug.cgi?id=1152590"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.opensuse.org/show_bug.cgi?id=1154016"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.opensuse.org/show_bug.cgi?id=1154025"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://features.opensuse.org/326356"
      );
      script_set_attribute(
        attribute:"solution", 
        value:"Update the affected binutils packages."
      );
      script_set_cvss_base_vector("CVSS2#AV:N/AC:M/Au:N/C:P/I:P/A:P");
      script_set_cvss_temporal_vector("CVSS2#E:POC/RL:OF/RC:C");
      script_set_cvss3_base_vector("CVSS:3.0/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H");
      script_set_cvss3_temporal_vector("CVSS:3.0/E:P/RL:O/RC:C");
      script_set_attribute(attribute:"cvss_score_source", value:"CVE-2019-1010180");
      script_set_attribute(attribute:"exploitability_ease", value:"Exploits are available");
      script_set_attribute(attribute:"exploit_available", value:"true");
    
      script_set_attribute(attribute:"plugin_type", value:"local");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:binutils-devel");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:binutils-devel-32bit");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:binutils-gold");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:binutils-gold-debuginfo");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:novell:opensuse:15.0");
    
      script_set_attribute(attribute:"vuln_publication_date", value:"2018/01/26");
      script_set_attribute(attribute:"patch_publication_date", value:"2019/10/30");
      script_set_attribute(attribute:"plugin_publication_date", value:"2019/10/31");
      script_set_attribute(attribute:"generated_plugin", value:"current");
      script_end_attributes();
    
      script_category(ACT_GATHER_INFO);
      script_copyright(english:"This script is Copyright (C) 2019 and is owned by Tenable, Inc. or an Affiliate thereof.");
      script_family(english:"SuSE Local Security Checks");
    
      script_dependencies("ssh_get_info.nasl");
      script_require_keys("Host/local_checks_enabled", "Host/SuSE/release", "Host/SuSE/rpm-list", "Host/cpu");
    
      exit(0);
    }
    
    
    include("audit.inc");
    include("global_settings.inc");
    include("rpm.inc");
    
    if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
    release = get_kb_item("Host/SuSE/release");
    if (isnull(release) || release =~ "^(SLED|SLES)") audit(AUDIT_OS_NOT, "openSUSE");
    if (release !~ "^(SUSE15\.0)$") audit(AUDIT_OS_RELEASE_NOT, "openSUSE", "15.0", release);
    if (!get_kb_item("Host/SuSE/rpm-list")) audit(AUDIT_PACKAGE_LIST_MISSING);
    
    ourarch = get_kb_item("Host/cpu");
    if (!ourarch) audit(AUDIT_UNKNOWN_ARCH);
    if (ourarch !~ "^(i586|i686|x86_64)$") audit(AUDIT_ARCH_NOT, "i586 / i686 / x86_64", ourarch);
    
    flag = 0;
    
    if ( rpm_check(release:"SUSE15.0", reference:"binutils-2.32-lp150.10.1") ) flag++;
    if ( rpm_check(release:"SUSE15.0", reference:"binutils-debuginfo-2.32-lp150.10.1") ) flag++;
    if ( rpm_check(release:"SUSE15.0", reference:"binutils-debugsource-2.32-lp150.10.1") ) flag++;
    if ( rpm_check(release:"SUSE15.0", reference:"binutils-devel-2.32-lp150.10.1") ) flag++;
    if ( rpm_check(release:"SUSE15.0", reference:"binutils-gold-2.32-lp150.10.1") ) flag++;
    if ( rpm_check(release:"SUSE15.0", reference:"binutils-gold-debuginfo-2.32-lp150.10.1") ) flag++;
    if ( rpm_check(release:"SUSE15.0", cpu:"x86_64", reference:"binutils-devel-32bit-2.32-lp150.10.1") ) flag++;
    
    if (flag)
    {
      if (report_verbosity > 0) security_warning(port:0, extra:rpm_report_get());
      else security_warning(0);
      exit(0);
    }
    else
    {
      tested = pkg_tests_get();
      if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested);
      else audit(AUDIT_PACKAGE_NOT_INSTALLED, "binutils / binutils-debuginfo / binutils-debugsource / etc");
    }
    
  • NASL familySuSE Local Security Checks
    NASL idSUSE_SU-2019-2780-1.NASL
    descriptionThis update for binutils fixes the following issues : binutils was updated to current 2.32 branch [jsc#ECO-368]. Includes following security fixes : CVE-2018-17358: Fixed invalid memory access in _bfd_stab_section_find_nearest_line in syms.c (bsc#1109412) CVE-2018-17359: Fixed invalid memory access exists in bfd_zalloc in opncls.c (bsc#1109413) CVE-2018-17360: Fixed heap-based buffer over-read in bfd_getl32 in libbfd.c (bsc#1109414) CVE-2018-17985: Fixed a stack consumption problem caused by the cplus_demangle_type (bsc#1116827) CVE-2018-18309: Fixed an invalid memory address dereference was discovered in read_reloc in reloc.c (bsc#1111996) CVE-2018-18483: Fixed get_count function provided by libiberty that allowed attackers to cause a denial of service or other unspecified impact (bsc#1112535) CVE-2018-18484: Fixed stack exhaustion in the C++ demangling functions provided by libiberty, caused by recursive stack frames (bsc#1112534) CVE-2018-18605: Fixed a heap-based buffer over-read issue was discovered in the function sec_merge_hash_lookup causing a denial of service (bsc#1113255) CVE-2018-18606: Fixed a NULL pointer dereference in _bfd_add_merge_section when attempting to merge sections with large alignments, causing denial of service (bsc#1113252) CVE-2018-18607: Fixed a NULL pointer dereference in elf_link_input_bfd when used for finding STT_TLS symbols without any TLS section, causing denial of service (bsc#1113247) CVE-2018-19931: Fixed a heap-based buffer overflow in bfd_elf32_swap_phdr_in in elfcode.h (bsc#1118831) CVE-2018-19932: Fixed an integer overflow and infinite loop caused by the IS_CONTAINED_BY_LMA (bsc#1118830) CVE-2018-20623: Fixed a use-after-free in the error function in elfcomm.c (bsc#1121035) CVE-2018-20651: Fixed a denial of service via a NULL pointer dereference in elf_link_add_object_symbols in elflink.c (bsc#1121034) CVE-2018-20671: Fixed an integer overflow that can trigger a heap-based buffer overflow in load_specific_debug_section in objdump.c (bsc#1121056) CVE-2018-1000876: Fixed integer overflow in bfd_get_dynamic_reloc_upper_bound,bfd_canonicalize_dynamic_reloc in objdump (bsc#1120640) CVE-2019-1010180: Fixed an out of bound memory access that could lead to crashes (bsc#1142772) enable xtensa architecture (Tensilica lc6 and related) Use -ffat-lto-objects in order to provide assembly for static libs (bsc#1141913). Fixed some LTO build issues (bsc#1133131 bsc#1133232). riscv: Don
    last seen2020-06-01
    modified2020-06-02
    plugin id130340
    published2019-10-28
    reporterThis script is Copyright (C) 2019 and is owned by Tenable, Inc. or an Affiliate thereof.
    sourcehttps://www.tenable.com/plugins/nessus/130340
    titleSUSE SLED15 / SLES15 Security Update : binutils (SUSE-SU-2019:2780-1)
    code
    #
    # (C) Tenable Network Security, Inc.
    #
    # The descriptive text and package checks in this plugin were
    # extracted from SUSE update advisory SUSE-SU-2019:2780-1.
    # The text itself is copyright (C) SUSE.
    #
    
    include("compat.inc");
    
    if (description)
    {
      script_id(130340);
      script_version("1.2");
      script_cvs_date("Date: 2019/12/18");
    
      script_cve_id("CVE-2018-1000876", "CVE-2018-17358", "CVE-2018-17359", "CVE-2018-17360", "CVE-2018-17985", "CVE-2018-18309", "CVE-2018-18483", "CVE-2018-18484", "CVE-2018-18605", "CVE-2018-18606", "CVE-2018-18607", "CVE-2018-19931", "CVE-2018-19932", "CVE-2018-20623", "CVE-2018-20651", "CVE-2018-20671", "CVE-2018-6323", "CVE-2018-6543", "CVE-2018-6759", "CVE-2018-6872", "CVE-2018-7208", "CVE-2018-7568", "CVE-2018-7569", "CVE-2018-7570", "CVE-2018-7642", "CVE-2018-7643", "CVE-2018-8945", "CVE-2019-1010180");
    
      script_name(english:"SUSE SLED15 / SLES15 Security Update : binutils (SUSE-SU-2019:2780-1)");
      script_summary(english:"Checks rpm output for the updated packages.");
    
      script_set_attribute(
        attribute:"synopsis", 
        value:"The remote SUSE host is missing one or more security updates."
      );
      script_set_attribute(
        attribute:"description", 
        value:
    "This update for binutils fixes the following issues :
    
    binutils was updated to current 2.32 branch [jsc#ECO-368].
    
    Includes following security fixes :
    
    CVE-2018-17358: Fixed invalid memory access in
    _bfd_stab_section_find_nearest_line in syms.c (bsc#1109412)
    
    CVE-2018-17359: Fixed invalid memory access exists in bfd_zalloc in
    opncls.c (bsc#1109413)
    
    CVE-2018-17360: Fixed heap-based buffer over-read in bfd_getl32 in
    libbfd.c (bsc#1109414)
    
    CVE-2018-17985: Fixed a stack consumption problem caused by the
    cplus_demangle_type (bsc#1116827)
    
    CVE-2018-18309: Fixed an invalid memory address dereference was
    discovered in read_reloc in reloc.c (bsc#1111996)
    
    CVE-2018-18483: Fixed get_count function provided by libiberty that
    allowed attackers to cause a denial of service or other unspecified
    impact (bsc#1112535)
    
    CVE-2018-18484: Fixed stack exhaustion in the C++ demangling functions
    provided by libiberty, caused by recursive stack frames (bsc#1112534)
    
    CVE-2018-18605: Fixed a heap-based buffer over-read issue was
    discovered in the function sec_merge_hash_lookup causing a denial of
    service (bsc#1113255)
    
    CVE-2018-18606: Fixed a NULL pointer dereference in
    _bfd_add_merge_section when attempting to merge sections with large
    alignments, causing denial of service (bsc#1113252)
    
    CVE-2018-18607: Fixed a NULL pointer dereference in elf_link_input_bfd
    when used for finding STT_TLS symbols without any TLS section, causing
    denial of service (bsc#1113247)
    
    CVE-2018-19931: Fixed a heap-based buffer overflow in
    bfd_elf32_swap_phdr_in in elfcode.h (bsc#1118831)
    
    CVE-2018-19932: Fixed an integer overflow and infinite loop caused by
    the IS_CONTAINED_BY_LMA (bsc#1118830)
    
    CVE-2018-20623: Fixed a use-after-free in the error function in
    elfcomm.c (bsc#1121035)
    
    CVE-2018-20651: Fixed a denial of service via a NULL pointer
    dereference in elf_link_add_object_symbols in elflink.c (bsc#1121034)
    
    CVE-2018-20671: Fixed an integer overflow that can trigger a
    heap-based buffer overflow in load_specific_debug_section in objdump.c
    (bsc#1121056)
    
    CVE-2018-1000876: Fixed integer overflow in
    bfd_get_dynamic_reloc_upper_bound,bfd_canonicalize_dynamic_reloc in
    objdump (bsc#1120640)
    
    CVE-2019-1010180: Fixed an out of bound memory access that could lead
    to crashes (bsc#1142772)
    
    enable xtensa architecture (Tensilica lc6 and related)
    
    Use -ffat-lto-objects in order to provide assembly for static libs
    (bsc#1141913).
    
    Fixed some LTO build issues (bsc#1133131 bsc#1133232).
    
    riscv: Don't check ABI flags if no code section
    
    Fixed a segfault in ld when building some versions of pacemaker
    (bsc#1154025, bsc#1154016).
    
    Add avr, epiphany and rx to target_list so that the common binutils
    can handle all objects we can create with crosses (bsc#1152590).
    
    Update to binutils 2.32: The binutils now support for the C-SKY
    processor series.
    
    The x86 assembler now supports a -mvexwig=[0|1] option to control
    encoding of VEX.W-ignored (WIG) VEX instructions. It also has a new
    
    -mx86-used-note=[yes|no] option to generate (or not) x86 GNU property
    notes.
    
    The MIPS assembler now supports the Loongson EXTensions R2 (EXT2), the
    Loongson EXTensions (EXT) instructions, the Loongson Content Address
    Memory (CAM) ASE and the Loongson MultiMedia extensions Instructions
    (MMI) ASE.
    
    The addr2line, c++filt, nm and objdump tools now have a default limit
    on the maximum amount of recursion that is allowed whilst demangling
    strings. This limit can be disabled if necessary.
    
    Objdump's --disassemble option can now take a parameter, specifying
    the starting symbol for disassembly. Disassembly will continue from
    this symbol up to the next symbol or the end of the function.
    
    The BFD linker will now report property change in linker map file when
    merging GNU properties.
    
    The BFD linker's -t option now doesn't report members within archives,
    unless -t is given twice. This makes it more useful when generating a
    list of files that should be packaged for a linker bug report.
    
    The GOLD linker has improved warning messages for relocations that
    refer to discarded sections.
    
    Improve relro support on s390 [fate#326356]
    
    Fix broken debug symbols (bsc#1118644)
    
    Handle ELF compressed header alignment correctly.
    
    Note that Tenable Network Security has extracted the preceding
    description block directly from the SUSE security advisory. Tenable
    has attempted to automatically clean and format it as much as possible
    without introducing additional issues."
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1109412"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1109413"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1109414"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1111996"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1112534"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1112535"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1113247"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1113252"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1113255"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1116827"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1118644"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1118830"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1118831"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1120640"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1121034"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1121035"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1121056"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1133131"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1133232"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1141913"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1142772"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1152590"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1154016"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1154025"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-1000876/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-17358/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-17359/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-17360/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-17985/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-18309/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-18483/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-18484/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-18605/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-18606/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-18607/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-19931/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-19932/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-20623/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-20651/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-20671/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-6323/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-6543/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-6759/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-6872/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-7208/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-7568/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-7569/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-7570/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-7642/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-7643/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-8945/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2019-1010180/"
      );
      # https://www.suse.com/support/update/announcement/2019/suse-su-20192780-1/
      script_set_attribute(
        attribute:"see_also",
        value:"http://www.nessus.org/u?390f7f64"
      );
      script_set_attribute(
        attribute:"solution", 
        value:
    "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:zypper in
    -t patch SUSE-SLE-Module-Packagehub-Subpackages-15-2019-2780=1
    
    SUSE Linux Enterprise Module for Open Buildservice Development Tools
    15:zypper in -t patch
    SUSE-SLE-Module-Development-Tools-OBS-15-2019-2780=1
    
    SUSE Linux Enterprise Module for Development Tools 15:zypper in -t
    patch SUSE-SLE-Module-Development-Tools-15-2019-2780=1
    
    SUSE Linux Enterprise Module for Basesystem 15:zypper in -t patch
    SUSE-SLE-Module-Basesystem-15-2019-2780=1"
      );
      script_set_cvss_base_vector("CVSS2#AV:N/AC:M/Au:N/C:P/I:P/A:P");
      script_set_cvss_temporal_vector("CVSS2#E:POC/RL:OF/RC:C");
      script_set_cvss3_base_vector("CVSS:3.0/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H");
      script_set_cvss3_temporal_vector("CVSS:3.0/E:P/RL:O/RC:C");
      script_set_attribute(attribute:"cvss_score_source", value:"CVE-2019-1010180");
      script_set_attribute(attribute:"exploitability_ease", value:"Exploits are available");
      script_set_attribute(attribute:"exploit_available", value:"true");
    
      script_set_attribute(attribute:"plugin_type", value:"local");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:binutils-devel");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:binutils-gold");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:binutils-gold-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-arm-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-arm-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-arm-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-avr-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-avr-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-avr-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-epiphany-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-epiphany-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-epiphany-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-hppa-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-hppa-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-hppa-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-hppa64-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-hppa64-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-hppa64-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-i386-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-i386-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-i386-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-ia64-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-ia64-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-ia64-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-m68k-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-m68k-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-m68k-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-mips-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-mips-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-mips-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-ppc-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-ppc-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-ppc-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-ppc64-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-ppc64-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-ppc64-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-riscv64-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-riscv64-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-riscv64-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-rx-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-rx-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-rx-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-s390-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-s390-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-s390-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-sparc-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-sparc-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-sparc-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-sparc64-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-sparc64-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-sparc64-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-spu-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-spu-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-spu-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:novell:suse_linux:15");
    
      script_set_attribute(attribute:"vuln_publication_date", value:"2018/01/26");
      script_set_attribute(attribute:"patch_publication_date", value:"2019/10/25");
      script_set_attribute(attribute:"plugin_publication_date", value:"2019/10/28");
      script_set_attribute(attribute:"generated_plugin", value:"current");
      script_end_attributes();
    
      script_category(ACT_GATHER_INFO);
      script_copyright(english:"This script is Copyright (C) 2019 and is owned by Tenable, Inc. or an Affiliate thereof.");
      script_family(english:"SuSE Local Security Checks");
    
      script_dependencies("ssh_get_info.nasl");
      script_require_keys("Host/local_checks_enabled", "Host/cpu", "Host/SuSE/release", "Host/SuSE/rpm-list");
    
      exit(0);
    }
    
    
    include("audit.inc");
    include("global_settings.inc");
    include("rpm.inc");
    
    
    if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
    release = get_kb_item("Host/SuSE/release");
    if (isnull(release) || release !~ "^(SLED|SLES)") audit(AUDIT_OS_NOT, "SUSE");
    os_ver = pregmatch(pattern: "^(SLE(S|D)\d+)", string:release);
    if (isnull(os_ver)) audit(AUDIT_UNKNOWN_APP_VER, "SUSE");
    os_ver = os_ver[1];
    if (! preg(pattern:"^(SLED15|SLES15)$", string:os_ver)) audit(AUDIT_OS_NOT, "SUSE SLED15 / SLES15", "SUSE " + os_ver);
    
    if (!get_kb_item("Host/SuSE/rpm-list")) audit(AUDIT_PACKAGE_LIST_MISSING);
    
    cpu = get_kb_item("Host/cpu");
    if (isnull(cpu)) audit(AUDIT_UNKNOWN_ARCH);
    if (cpu !~ "^i[3-6]86$" && "x86_64" >!< cpu && "s390x" >!< cpu) audit(AUDIT_LOCAL_CHECKS_NOT_IMPLEMENTED, "SUSE " + os_ver, cpu);
    
    sp = get_kb_item("Host/SuSE/patchlevel");
    if (isnull(sp)) sp = "0";
    if (os_ver == "SLES15" && (! preg(pattern:"^(0)$", string:sp))) audit(AUDIT_OS_NOT, "SLES15 SP0", os_ver + " SP" + sp);
    if (os_ver == "SLED15" && (! preg(pattern:"^(0)$", string:sp))) audit(AUDIT_OS_NOT, "SLED15 SP0", os_ver + " SP" + sp);
    
    
    flag = 0;
    if (rpm_check(release:"SLES15", sp:"0", cpu:"x86_64", reference:"binutils-debugsource-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", cpu:"x86_64", reference:"binutils-devel-32bit-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"binutils-debuginfo-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"binutils-debugsource-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"binutils-gold-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"binutils-gold-debuginfo-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"binutils-debuginfo-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"binutils-debugsource-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"binutils-gold-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"binutils-gold-debuginfo-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"cross-arm-binutils-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"cross-arm-binutils-debuginfo-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"cross-arm-binutils-debugsource-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"cross-avr-binutils-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"cross-avr-binutils-debuginfo-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"cross-avr-binutils-debugsource-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"cross-epiphany-binutils-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"cross-epiphany-binutils-debuginfo-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"cross-epiphany-binutils-debugsource-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"cross-hppa-binutils-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"cross-hppa-binutils-debuginfo-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"cross-hppa-binutils-debugsource-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"cross-hppa64-binutils-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"cross-hppa64-binutils-debuginfo-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"cross-hppa64-binutils-debugsource-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"cross-i386-binutils-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"cross-i386-binutils-debuginfo-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"cross-i386-binutils-debugsource-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"cross-ia64-binutils-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"cross-ia64-binutils-debuginfo-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"cross-ia64-binutils-debugsource-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"cross-m68k-binutils-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"cross-m68k-binutils-debuginfo-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"cross-m68k-binutils-debugsource-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"cross-mips-binutils-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"cross-mips-binutils-debuginfo-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"cross-mips-binutils-debugsource-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"cross-ppc-binutils-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"cross-ppc-binutils-debuginfo-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"cross-ppc-binutils-debugsource-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"cross-ppc64-binutils-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"cross-ppc64-binutils-debuginfo-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"cross-ppc64-binutils-debugsource-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"cross-riscv64-binutils-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"cross-riscv64-binutils-debuginfo-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"cross-riscv64-binutils-debugsource-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"cross-rx-binutils-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"cross-rx-binutils-debuginfo-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"cross-rx-binutils-debugsource-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"cross-s390-binutils-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"cross-s390-binutils-debuginfo-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"cross-s390-binutils-debugsource-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"cross-sparc-binutils-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"cross-sparc-binutils-debuginfo-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"cross-sparc-binutils-debugsource-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"cross-sparc64-binutils-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"cross-sparc64-binutils-debuginfo-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"cross-sparc64-binutils-debugsource-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"cross-spu-binutils-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"cross-spu-binutils-debuginfo-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"cross-spu-binutils-debugsource-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"binutils-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"binutils-debuginfo-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"binutils-debugsource-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"0", reference:"binutils-devel-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", cpu:"x86_64", reference:"binutils-debugsource-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", cpu:"x86_64", reference:"binutils-devel-32bit-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"binutils-debuginfo-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"binutils-debugsource-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"binutils-gold-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"binutils-gold-debuginfo-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"binutils-debuginfo-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"binutils-debugsource-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"binutils-gold-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"binutils-gold-debuginfo-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"cross-arm-binutils-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"cross-arm-binutils-debuginfo-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"cross-arm-binutils-debugsource-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"cross-avr-binutils-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"cross-avr-binutils-debuginfo-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"cross-avr-binutils-debugsource-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"cross-epiphany-binutils-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"cross-epiphany-binutils-debuginfo-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"cross-epiphany-binutils-debugsource-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"cross-hppa-binutils-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"cross-hppa-binutils-debuginfo-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"cross-hppa-binutils-debugsource-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"cross-hppa64-binutils-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"cross-hppa64-binutils-debuginfo-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"cross-hppa64-binutils-debugsource-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"cross-i386-binutils-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"cross-i386-binutils-debuginfo-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"cross-i386-binutils-debugsource-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"cross-ia64-binutils-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"cross-ia64-binutils-debuginfo-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"cross-ia64-binutils-debugsource-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"cross-m68k-binutils-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"cross-m68k-binutils-debuginfo-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"cross-m68k-binutils-debugsource-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"cross-mips-binutils-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"cross-mips-binutils-debuginfo-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"cross-mips-binutils-debugsource-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"cross-ppc-binutils-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"cross-ppc-binutils-debuginfo-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"cross-ppc-binutils-debugsource-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"cross-ppc64-binutils-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"cross-ppc64-binutils-debuginfo-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"cross-ppc64-binutils-debugsource-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"cross-riscv64-binutils-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"cross-riscv64-binutils-debuginfo-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"cross-riscv64-binutils-debugsource-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"cross-rx-binutils-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"cross-rx-binutils-debuginfo-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"cross-rx-binutils-debugsource-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"cross-s390-binutils-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"cross-s390-binutils-debuginfo-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"cross-s390-binutils-debugsource-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"cross-sparc-binutils-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"cross-sparc-binutils-debuginfo-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"cross-sparc-binutils-debugsource-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"cross-sparc64-binutils-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"cross-sparc64-binutils-debuginfo-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"cross-sparc64-binutils-debugsource-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"cross-spu-binutils-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"cross-spu-binutils-debuginfo-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"cross-spu-binutils-debugsource-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"binutils-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"binutils-debuginfo-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"binutils-debugsource-2.32-6.8.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"0", reference:"binutils-devel-2.32-6.8.1")) flag++;
    
    
    if (flag)
    {
      if (report_verbosity > 0) security_warning(port:0, extra:rpm_report_get());
      else security_warning(0);
      exit(0);
    }
    else
    {
      tested = pkg_tests_get();
      if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested);
      else audit(AUDIT_PACKAGE_NOT_INSTALLED, "binutils");
    }
    
  • NASL familyUbuntu Local Security Checks
    NASL idUBUNTU_USN-4336-1.NASL
    descriptionIt was discovered that GNU binutils contained a large number of security issues. If a user or automated system were tricked into processing a specially crafted file, a remote attacker could cause GNU binutils to crash, resulting in a denial of service, or possibly execute arbitrary code. Note that Tenable Network Security has extracted the preceding description block directly from the Ubuntu security advisory. Tenable has attempted to automatically clean and format it as much as possible without introducing additional issues.
    last seen2020-04-30
    modified2020-04-24
    plugin id135966
    published2020-04-24
    reporterUbuntu Security Notice (C) 2020 Canonical, Inc. / NASL script (C) 2020 and is owned by Tenable, Inc. or an Affiliate thereof.
    sourcehttps://www.tenable.com/plugins/nessus/135966
    titleUbuntu 18.04 LTS : binutils vulnerabilities (USN-4336-1)
    code
    #
    # (C) Tenable Network Security, Inc.
    #
    # The descriptive text and package checks in this plugin were
    # extracted from Ubuntu Security Notice USN-4336-1. The text 
    # itself is copyright (C) Canonical, Inc. See 
    # <http://www.ubuntu.com/usn/>. Ubuntu(R) is a registered 
    # trademark of Canonical, Inc.
    #
    
    include("compat.inc");
    
    if (description)
    {
      script_id(135966);
      script_version("1.2");
      script_set_attribute(attribute:"plugin_modification_date", value:"2020/04/28");
    
      script_cve_id("CVE-2018-1000876", "CVE-2018-10372", "CVE-2018-10373", "CVE-2018-10534", "CVE-2018-10535", "CVE-2018-12641", "CVE-2018-12697", "CVE-2018-12698", "CVE-2018-12699", "CVE-2018-12700", "CVE-2018-12934", "CVE-2018-13033", "CVE-2018-17358", "CVE-2018-17359", "CVE-2018-17360", "CVE-2018-17794", "CVE-2018-17985", "CVE-2018-18309", "CVE-2018-18483", "CVE-2018-18484", "CVE-2018-18605", "CVE-2018-18606", "CVE-2018-18607", "CVE-2018-18700", "CVE-2018-18701", "CVE-2018-19931", "CVE-2018-19932", "CVE-2018-20002", "CVE-2018-20623", "CVE-2018-20651", "CVE-2018-20671", "CVE-2018-8945", "CVE-2018-9138", "CVE-2019-12972", "CVE-2019-14250", "CVE-2019-14444", "CVE-2019-17450", "CVE-2019-17451", "CVE-2019-9070", "CVE-2019-9071", "CVE-2019-9073", "CVE-2019-9074", "CVE-2019-9075", "CVE-2019-9077");
      script_xref(name:"USN", value:"4336-1");
    
      script_name(english:"Ubuntu 18.04 LTS : binutils vulnerabilities (USN-4336-1)");
      script_summary(english:"Checks dpkg output for updated packages.");
    
      script_set_attribute(
        attribute:"synopsis", 
        value:
    "The remote Ubuntu host is missing one or more security-related
    patches."
      );
      script_set_attribute(
        attribute:"description", 
        value:
    "It was discovered that GNU binutils contained a large number of
    security issues. If a user or automated system were tricked into
    processing a specially crafted file, a remote attacker could cause GNU
    binutils to crash, resulting in a denial of service, or possibly
    execute arbitrary code.
    
    Note that Tenable Network Security has extracted the preceding
    description block directly from the Ubuntu security advisory. Tenable
    has attempted to automatically clean and format it as much as possible
    without introducing additional issues."
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://usn.ubuntu.com/4336-1/"
      );
      script_set_attribute(
        attribute:"solution", 
        value:"Update the affected binutils and / or binutils-multiarch packages."
      );
      script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:P/I:P/A:P");
      script_set_cvss_temporal_vector("CVSS2#E:U/RL:OF/RC:C");
      script_set_cvss3_base_vector("CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H");
      script_set_cvss3_temporal_vector("CVSS:3.0/E:U/RL:O/RC:C");
      script_set_attribute(attribute:"exploitability_ease", value:"No known exploits are available");
    
      script_set_attribute(attribute:"plugin_type", value:"local");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:binutils-multiarch");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:canonical:ubuntu_linux:18.04:-:lts");
    
      script_set_attribute(attribute:"vuln_publication_date", value:"2018/03/22");
      script_set_attribute(attribute:"patch_publication_date", value:"2020/04/22");
      script_set_attribute(attribute:"plugin_publication_date", value:"2020/04/24");
      script_set_attribute(attribute:"generated_plugin", value:"current");
      script_end_attributes();
    
      script_category(ACT_GATHER_INFO);
      script_copyright(english:"Ubuntu Security Notice (C) 2020 Canonical, Inc. / NASL script (C) 2020 and is owned by Tenable, Inc. or an Affiliate thereof.");
      script_family(english:"Ubuntu Local Security Checks");
    
      script_dependencies("ssh_get_info.nasl");
      script_require_keys("Host/cpu", "Host/Ubuntu", "Host/Ubuntu/release", "Host/Debian/dpkg-l");
    
      exit(0);
    }
    
    
    include("audit.inc");
    include("ubuntu.inc");
    include("misc_func.inc");
    
    if ( ! get_kb_item("Host/local_checks_enabled") ) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
    release = get_kb_item("Host/Ubuntu/release");
    if ( isnull(release) ) audit(AUDIT_OS_NOT, "Ubuntu");
    release = chomp(release);
    if (! preg(pattern:"^(18\.04)$", string:release)) audit(AUDIT_OS_NOT, "Ubuntu 18.04", "Ubuntu " + release);
    if ( ! get_kb_item("Host/Debian/dpkg-l") ) audit(AUDIT_PACKAGE_LIST_MISSING);
    
    cpu = get_kb_item("Host/cpu");
    if (isnull(cpu)) audit(AUDIT_UNKNOWN_ARCH);
    if ("x86_64" >!< cpu && cpu !~ "^i[3-6]86$") audit(AUDIT_LOCAL_CHECKS_NOT_IMPLEMENTED, "Ubuntu", cpu);
    
    flag = 0;
    
    if (ubuntu_check(osver:"18.04", pkgname:"binutils", pkgver:"2.30-21ubuntu1~18.04.3")) flag++;
    if (ubuntu_check(osver:"18.04", pkgname:"binutils-multiarch", pkgver:"2.30-21ubuntu1~18.04.3")) flag++;
    
    if (flag)
    {
      security_report_v4(
        port       : 0,
        severity   : SECURITY_HOLE,
        extra      : ubuntu_report_get()
      );
      exit(0);
    }
    else
    {
      tested = ubuntu_pkg_tests_get();
      if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested);
      else audit(AUDIT_PACKAGE_NOT_INSTALLED, "binutils / binutils-multiarch");
    }
    
  • NASL familyHuawei Local Security Checks
    NASL idEULEROS_SA-2019-1642.NASL
    descriptionAccording to the versions of the binutils packages installed, the EulerOS installation on the remote host is affected by the following vulnerabilities : - An issue was discovered in the Binary File Descriptor (BFD) library (aka libbfd), as distributed in GNU Binutils 2.31. An invalid memory access exists in _bfd_stab_section_find_nearest_line in syms.c. Attackers could leverage this vulnerability to cause a denial of service (application crash) via a crafted ELF file.(CVE-2018-17358) - An issue was discovered in the Binary File Descriptor (BFD) library (aka libbfd), as distributed in GNU Binutils 2.31. a heap-based buffer over-read in bfd_getl32 in libbfd.c allows an attacker to cause a denial of service through a crafted PE file. This vulnerability can be triggered by the executable objdump.(CVE-2018-17360) - An issue was discovered in the Binary File Descriptor (BFD) library (aka libbfd), as distributed in GNU Binutils 2.31. a heap-based buffer over-read in bfd_getl32 in libbfd.c allows an attacker to cause a denial of service through a crafted PE file. This vulnerability can be triggered by the executable objdump.(CVE-2018-20623) - A NULL pointer dereference was discovered in elf_link_add_object_symbols in elflink.c in the Binary File Descriptor (BFD) library (aka libbfd), as distributed in GNU Binutils 2.31.1. This occurs for a crafted ET_DYN with no program headers. A specially crafted ELF file allows remote attackers to cause a denial of service, as demonstrated by ld.(CVE-2018-20651) Note that Tenable Network Security has extracted the preceding description block directly from the EulerOS security advisory. Tenable has attempted to automatically clean and format it as much as possible without introducing additional issues.
    last seen2020-05-03
    modified2019-06-27
    plugin id126269
    published2019-06-27
    reporterThis script is Copyright (C) 2019-2020 and is owned by Tenable, Inc. or an Affiliate thereof.
    sourcehttps://www.tenable.com/plugins/nessus/126269
    titleEulerOS 2.0 SP8 : binutils (EulerOS-SA-2019-1642)
    code
    #
    # (C) Tenable Network Security, Inc.
    #
    
    include("compat.inc");
    
    if (description)
    {
      script_id(126269);
      script_version("1.3");
      script_set_attribute(attribute:"plugin_modification_date", value:"2020/05/01");
    
      script_cve_id(
        "CVE-2018-17358",
        "CVE-2018-17360",
        "CVE-2018-20623",
        "CVE-2018-20651"
      );
    
      script_name(english:"EulerOS 2.0 SP8 : binutils (EulerOS-SA-2019-1642)");
      script_summary(english:"Checks the rpm output for the updated packages.");
    
      script_set_attribute(attribute:"synopsis", value:
    "The remote EulerOS host is missing multiple security updates.");
      script_set_attribute(attribute:"description", value:
    "According to the versions of the binutils packages installed, the
    EulerOS installation on the remote host is affected by the following
    vulnerabilities :
    
      - An issue was discovered in the Binary File Descriptor
        (BFD) library (aka libbfd), as distributed in GNU
        Binutils 2.31. An invalid memory access exists in
        _bfd_stab_section_find_nearest_line in syms.c.
        Attackers could leverage this vulnerability to cause a
        denial of service (application crash) via a crafted ELF
        file.(CVE-2018-17358)
    
      - An issue was discovered in the Binary File Descriptor
        (BFD) library (aka libbfd), as distributed in GNU
        Binutils 2.31. a heap-based buffer over-read in
        bfd_getl32 in libbfd.c allows an attacker to cause a
        denial of service through a crafted PE file. This
        vulnerability can be triggered by the executable
        objdump.(CVE-2018-17360)
    
      - An issue was discovered in the Binary File Descriptor
        (BFD) library (aka libbfd), as distributed in GNU
        Binutils 2.31. a heap-based buffer over-read in
        bfd_getl32 in libbfd.c allows an attacker to cause a
        denial of service through a crafted PE file. This
        vulnerability can be triggered by the executable
        objdump.(CVE-2018-20623)
    
      - A NULL pointer dereference was discovered in
        elf_link_add_object_symbols in elflink.c in the Binary
        File Descriptor (BFD) library (aka libbfd), as
        distributed in GNU Binutils 2.31.1. This occurs for a
        crafted ET_DYN with no program headers. A specially
        crafted ELF file allows remote attackers to cause a
        denial of service, as demonstrated by
        ld.(CVE-2018-20651)
    
    Note that Tenable Network Security has extracted the preceding
    description block directly from the EulerOS security advisory. Tenable
    has attempted to automatically clean and format it as much as possible
    without introducing additional issues.");
      # https://developer.huaweicloud.com/ict/en/site-euleros/euleros/security-advisories/EulerOS-SA-2019-1642
      script_set_attribute(attribute:"see_also", value:"http://www.nessus.org/u?03f972ee");
      script_set_attribute(attribute:"solution", value:
    "Update the affected binutils packages.");
      script_set_cvss_base_vector("CVSS2#AV:N/AC:M/Au:N/C:N/I:N/A:P");
      script_set_cvss_temporal_vector("CVSS2#E:U/RL:OF/RC:C");
      script_set_cvss3_base_vector("CVSS:3.0/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H");
      script_set_cvss3_temporal_vector("CVSS:3.0/E:U/RL:O/RC:C");
      script_set_attribute(attribute:"exploitability_ease", value:"No known exploits are available");
    
      script_set_attribute(attribute:"patch_publication_date", value:"2019/06/27");
      script_set_attribute(attribute:"plugin_publication_date", value:"2019/06/27");
    
      script_set_attribute(attribute:"plugin_type", value:"local");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:huawei:euleros:binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:huawei:euleros:binutils-devel");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:huawei:euleros:2.0");
      script_set_attribute(attribute:"generated_plugin", value:"current");
      script_end_attributes();
    
      script_category(ACT_GATHER_INFO);
      script_family(english:"Huawei Local Security Checks");
    
      script_copyright(english:"This script is Copyright (C) 2019-2020 and is owned by Tenable, Inc. or an Affiliate thereof.");
    
      script_dependencies("ssh_get_info.nasl");
      script_require_keys("Host/local_checks_enabled", "Host/EulerOS/release", "Host/EulerOS/rpm-list", "Host/EulerOS/sp");
      script_exclude_keys("Host/EulerOS/uvp_version");
    
      exit(0);
    }
    
    include("audit.inc");
    include("global_settings.inc");
    include("rpm.inc");
    
    if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
    
    release = get_kb_item("Host/EulerOS/release");
    if (isnull(release) || release !~ "^EulerOS") audit(AUDIT_OS_NOT, "EulerOS");
    if (release !~ "^EulerOS release 2\.0(\D|$)") audit(AUDIT_OS_NOT, "EulerOS 2.0");
    
    sp = get_kb_item("Host/EulerOS/sp");
    if (isnull(sp) || sp !~ "^(8)$") audit(AUDIT_OS_NOT, "EulerOS 2.0 SP8");
    
    uvp = get_kb_item("Host/EulerOS/uvp_version");
    if (!empty_or_null(uvp)) audit(AUDIT_OS_NOT, "EulerOS 2.0 SP8", "EulerOS UVP " + uvp);
    
    if (!get_kb_item("Host/EulerOS/rpm-list")) audit(AUDIT_PACKAGE_LIST_MISSING);
    
    cpu = get_kb_item("Host/cpu");
    if (isnull(cpu)) audit(AUDIT_UNKNOWN_ARCH);
    if ("x86_64" >!< cpu && cpu !~ "^i[3-6]86$" && "aarch64" >!< cpu) audit(AUDIT_LOCAL_CHECKS_NOT_IMPLEMENTED, "EulerOS", cpu);
    if ("aarch64" >!< cpu) audit(AUDIT_ARCH_NOT, "aarch64", cpu);
    
    flag = 0;
    
    pkgs = ["binutils-2.31.1-13.h3.eulerosv2r8",
            "binutils-devel-2.31.1-13.h3.eulerosv2r8"];
    
    foreach (pkg in pkgs)
      if (rpm_check(release:"EulerOS-2.0", sp:"8", reference:pkg)) flag++;
    
    if (flag)
    {
      security_report_v4(
        port       : 0,
        severity   : SECURITY_WARNING,
        extra      : rpm_report_get()
      );
      exit(0);
    }
    else
    {
      tested = pkg_tests_get();
      if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested);
      else audit(AUDIT_PACKAGE_NOT_INSTALLED, "binutils");
    }
    
  • NASL familySuSE Local Security Checks
    NASL idSUSE_SU-2019-2779-1.NASL
    descriptionThis update for binutils fixes the following issues : binutils was updated to current 2.32 branch [jsc#ECO-368]. Includes following security fixes : CVE-2018-17358: Fixed invalid memory access in _bfd_stab_section_find_nearest_line in syms.c (bsc#1109412) CVE-2018-17359: Fixed invalid memory access exists in bfd_zalloc in opncls.c (bsc#1109413) CVE-2018-17360: Fixed heap-based buffer over-read in bfd_getl32 in libbfd.c (bsc#1109414) CVE-2018-17985: Fixed a stack consumption problem caused by the cplus_demangle_type (bsc#1116827) CVE-2018-18309: Fixed an invalid memory address dereference was discovered in read_reloc in reloc.c (bsc#1111996) CVE-2018-18483: Fixed get_count function provided by libiberty that allowed attackers to cause a denial of service or other unspecified impact (bsc#1112535) CVE-2018-18484: Fixed stack exhaustion in the C++ demangling functions provided by libiberty, caused by recursive stack frames (bsc#1112534) CVE-2018-18605: Fixed a heap-based buffer over-read issue was discovered in the function sec_merge_hash_lookup causing a denial of service (bsc#1113255) CVE-2018-18606: Fixed a NULL pointer dereference in _bfd_add_merge_section when attempting to merge sections with large alignments, causing denial of service (bsc#1113252) CVE-2018-18607: Fixed a NULL pointer dereference in elf_link_input_bfd when used for finding STT_TLS symbols without any TLS section, causing denial of service (bsc#1113247) CVE-2018-19931: Fixed a heap-based buffer overflow in bfd_elf32_swap_phdr_in in elfcode.h (bsc#1118831) CVE-2018-19932: Fixed an integer overflow and infinite loop caused by the IS_CONTAINED_BY_LMA (bsc#1118830) CVE-2018-20623: Fixed a use-after-free in the error function in elfcomm.c (bsc#1121035) CVE-2018-20651: Fixed a denial of service via a NULL pointer dereference in elf_link_add_object_symbols in elflink.c (bsc#1121034) CVE-2018-20671: Fixed an integer overflow that can trigger a heap-based buffer overflow in load_specific_debug_section in objdump.c (bsc#1121056) CVE-2018-1000876: Fixed integer overflow in bfd_get_dynamic_reloc_upper_bound,bfd_canonicalize_dynamic_reloc in objdump (bsc#1120640) CVE-2019-1010180: Fixed an out of bound memory access that could lead to crashes (bsc#1142772) enable xtensa architecture (Tensilica lc6 and related) Use -ffat-lto-objects in order to provide assembly for static libs (bsc#1141913). Fixed some LTO build issues (bsc#1133131 bsc#1133232). riscv: Don
    last seen2020-06-01
    modified2020-06-02
    plugin id130257
    published2019-10-25
    reporterThis script is Copyright (C) 2019 and is owned by Tenable, Inc. or an Affiliate thereof.
    sourcehttps://www.tenable.com/plugins/nessus/130257
    titleSUSE SLED15 / SLES15 Security Update : binutils (SUSE-SU-2019:2779-1)
    code
    #
    # (C) Tenable Network Security, Inc.
    #
    # The descriptive text and package checks in this plugin were
    # extracted from SUSE update advisory SUSE-SU-2019:2779-1.
    # The text itself is copyright (C) SUSE.
    #
    
    include("compat.inc");
    
    if (description)
    {
      script_id(130257);
      script_version("1.2");
      script_cvs_date("Date: 2019/12/18");
    
      script_cve_id("CVE-2018-1000876", "CVE-2018-17358", "CVE-2018-17359", "CVE-2018-17360", "CVE-2018-17985", "CVE-2018-18309", "CVE-2018-18483", "CVE-2018-18484", "CVE-2018-18605", "CVE-2018-18606", "CVE-2018-18607", "CVE-2018-19931", "CVE-2018-19932", "CVE-2018-20623", "CVE-2018-20651", "CVE-2018-20671", "CVE-2018-6323", "CVE-2018-6543", "CVE-2018-6759", "CVE-2018-6872", "CVE-2018-7208", "CVE-2018-7568", "CVE-2018-7569", "CVE-2018-7570", "CVE-2018-7642", "CVE-2018-7643", "CVE-2018-8945", "CVE-2019-1010180");
    
      script_name(english:"SUSE SLED15 / SLES15 Security Update : binutils (SUSE-SU-2019:2779-1)");
      script_summary(english:"Checks rpm output for the updated packages.");
    
      script_set_attribute(
        attribute:"synopsis", 
        value:"The remote SUSE host is missing one or more security updates."
      );
      script_set_attribute(
        attribute:"description", 
        value:
    "This update for binutils fixes the following issues :
    
    binutils was updated to current 2.32 branch [jsc#ECO-368].
    
    Includes following security fixes :
    
    CVE-2018-17358: Fixed invalid memory access in
    _bfd_stab_section_find_nearest_line in syms.c (bsc#1109412)
    
    CVE-2018-17359: Fixed invalid memory access exists in bfd_zalloc in
    opncls.c (bsc#1109413)
    
    CVE-2018-17360: Fixed heap-based buffer over-read in bfd_getl32 in
    libbfd.c (bsc#1109414)
    
    CVE-2018-17985: Fixed a stack consumption problem caused by the
    cplus_demangle_type (bsc#1116827)
    
    CVE-2018-18309: Fixed an invalid memory address dereference was
    discovered in read_reloc in reloc.c (bsc#1111996)
    
    CVE-2018-18483: Fixed get_count function provided by libiberty that
    allowed attackers to cause a denial of service or other unspecified
    impact (bsc#1112535)
    
    CVE-2018-18484: Fixed stack exhaustion in the C++ demangling functions
    provided by libiberty, caused by recursive stack frames (bsc#1112534)
    
    CVE-2018-18605: Fixed a heap-based buffer over-read issue was
    discovered in the function sec_merge_hash_lookup causing a denial of
    service (bsc#1113255)
    
    CVE-2018-18606: Fixed a NULL pointer dereference in
    _bfd_add_merge_section when attempting to merge sections with large
    alignments, causing denial of service (bsc#1113252)
    
    CVE-2018-18607: Fixed a NULL pointer dereference in elf_link_input_bfd
    when used for finding STT_TLS symbols without any TLS section, causing
    denial of service (bsc#1113247)
    
    CVE-2018-19931: Fixed a heap-based buffer overflow in
    bfd_elf32_swap_phdr_in in elfcode.h (bsc#1118831)
    
    CVE-2018-19932: Fixed an integer overflow and infinite loop caused by
    the IS_CONTAINED_BY_LMA (bsc#1118830)
    
    CVE-2018-20623: Fixed a use-after-free in the error function in
    elfcomm.c (bsc#1121035)
    
    CVE-2018-20651: Fixed a denial of service via a NULL pointer
    dereference in elf_link_add_object_symbols in elflink.c (bsc#1121034)
    
    CVE-2018-20671: Fixed an integer overflow that can trigger a
    heap-based buffer overflow in load_specific_debug_section in objdump.c
    (bsc#1121056)
    
    CVE-2018-1000876: Fixed integer overflow in
    bfd_get_dynamic_reloc_upper_bound,bfd_canonicalize_dynamic_reloc in
    objdump (bsc#1120640)
    
    CVE-2019-1010180: Fixed an out of bound memory access that could lead
    to crashes (bsc#1142772)
    
    enable xtensa architecture (Tensilica lc6 and related)
    
    Use -ffat-lto-objects in order to provide assembly for static libs
    (bsc#1141913).
    
    Fixed some LTO build issues (bsc#1133131 bsc#1133232).
    
    riscv: Don't check ABI flags if no code section
    
    Fixed a segfault in ld when building some versions of pacemaker
    (bsc#1154025, bsc#1154016).
    
    Add avr, epiphany and rx to target_list so that the common binutils
    can handle all objects we can create with crosses (bsc#1152590).
    
    Update to binutils 2.32: The binutils now support for the C-SKY
    processor series.
    
    The x86 assembler now supports a -mvexwig=[0|1] option to control
    encoding of VEX.W-ignored (WIG) VEX instructions. It also has a new
    
    -mx86-used-note=[yes|no] option to generate (or not) x86 GNU property
    notes.
    
    The MIPS assembler now supports the Loongson EXTensions R2 (EXT2), the
    Loongson EXTensions (EXT) instructions, the Loongson Content Address
    Memory (CAM) ASE and the Loongson MultiMedia extensions Instructions
    (MMI) ASE.
    
    The addr2line, c++filt, nm and objdump tools now have a default limit
    on the maximum amount of recursion that is allowed whilst demangling
    strings. This limit can be disabled if necessary.
    
    Objdump's --disassemble option can now take a parameter, specifying
    the starting symbol for disassembly. Disassembly will continue from
    this symbol up to the next symbol or the end of the function.
    
    The BFD linker will now report property change in linker map file when
    merging GNU properties.
    
    The BFD linker's -t option now doesn't report members within archives,
    unless -t is given twice. This makes it more useful when generating a
    list of files that should be packaged for a linker bug report.
    
    The GOLD linker has improved warning messages for relocations that
    refer to discarded sections.
    
    Improve relro support on s390 [fate#326356]
    
    Fix broken debug symbols (bsc#1118644)
    
    Handle ELF compressed header alignment correctly.
    
    Note that Tenable Network Security has extracted the preceding
    description block directly from the SUSE security advisory. Tenable
    has attempted to automatically clean and format it as much as possible
    without introducing additional issues."
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1109412"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1109413"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1109414"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1111996"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1112534"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1112535"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1113247"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1113252"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1113255"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1116827"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1118644"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1118830"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1118831"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1120640"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1121034"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1121035"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1121056"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1133131"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1133232"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1141913"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1142772"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1152590"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1154016"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=1154025"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-1000876/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-17358/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-17359/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-17360/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-17985/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-18309/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-18483/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-18484/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-18605/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-18606/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-18607/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-19931/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-19932/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-20623/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-20651/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-20671/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-6323/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-6543/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-6759/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-6872/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-7208/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-7568/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-7569/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-7570/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-7642/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-7643/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2018-8945/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2019-1010180/"
      );
      # https://www.suse.com/support/update/announcement/2019/suse-su-20192779-1/
      script_set_attribute(
        attribute:"see_also",
        value:"http://www.nessus.org/u?9f92e1f7"
      );
      script_set_attribute(
        attribute:"solution", 
        value:
    "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-SP1:zypper
    in -t patch SUSE-SLE-Module-Packagehub-Subpackages-15-SP1-2019-2779=1
    
    SUSE Linux Enterprise Module for Open Buildservice Development Tools
    15-SP1:zypper in -t patch
    SUSE-SLE-Module-Development-Tools-OBS-15-SP1-2019-2779=1
    
    SUSE Linux Enterprise Module for Development Tools 15-SP1:zypper in -t
    patch SUSE-SLE-Module-Development-Tools-15-SP1-2019-2779=1
    
    SUSE Linux Enterprise Module for Basesystem 15-SP1:zypper in -t patch
    SUSE-SLE-Module-Basesystem-15-SP1-2019-2779=1"
      );
      script_set_cvss_base_vector("CVSS2#AV:N/AC:M/Au:N/C:P/I:P/A:P");
      script_set_cvss_temporal_vector("CVSS2#E:POC/RL:OF/RC:C");
      script_set_cvss3_base_vector("CVSS:3.0/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H");
      script_set_cvss3_temporal_vector("CVSS:3.0/E:P/RL:O/RC:C");
      script_set_attribute(attribute:"cvss_score_source", value:"CVE-2019-1010180");
      script_set_attribute(attribute:"exploitability_ease", value:"Exploits are available");
      script_set_attribute(attribute:"exploit_available", value:"true");
    
      script_set_attribute(attribute:"plugin_type", value:"local");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:binutils-devel");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:binutils-gold");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:binutils-gold-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-aarch64-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-aarch64-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-aarch64-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-arm-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-arm-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-arm-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-avr-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-avr-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-avr-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-epiphany-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-epiphany-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-epiphany-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-hppa-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-hppa-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-hppa-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-hppa64-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-hppa64-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-hppa64-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-i386-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-i386-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-i386-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-ia64-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-ia64-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-ia64-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-m68k-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-m68k-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-m68k-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-mips-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-mips-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-mips-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-ppc-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-ppc-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-ppc-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-ppc64-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-ppc64-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-ppc64-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-ppc64le-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-ppc64le-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-ppc64le-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-riscv64-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-riscv64-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-riscv64-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-rx-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-rx-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-rx-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-s390-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-s390-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-s390-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-s390x-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-s390x-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-s390x-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-sparc-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-sparc-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-sparc-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-sparc64-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-sparc64-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-sparc64-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-spu-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-spu-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-spu-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-x86_64-binutils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-x86_64-binutils-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:cross-x86_64-binutils-debugsource");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:novell:suse_linux:15");
    
      script_set_attribute(attribute:"vuln_publication_date", value:"2018/01/26");
      script_set_attribute(attribute:"patch_publication_date", value:"2019/10/24");
      script_set_attribute(attribute:"plugin_publication_date", value:"2019/10/25");
      script_set_attribute(attribute:"generated_plugin", value:"current");
      script_end_attributes();
    
      script_category(ACT_GATHER_INFO);
      script_copyright(english:"This script is Copyright (C) 2019 and is owned by Tenable, Inc. or an Affiliate thereof.");
      script_family(english:"SuSE Local Security Checks");
    
      script_dependencies("ssh_get_info.nasl");
      script_require_keys("Host/local_checks_enabled", "Host/cpu", "Host/SuSE/release", "Host/SuSE/rpm-list");
    
      exit(0);
    }
    
    
    include("audit.inc");
    include("global_settings.inc");
    include("rpm.inc");
    
    
    if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
    release = get_kb_item("Host/SuSE/release");
    if (isnull(release) || release !~ "^(SLED|SLES)") audit(AUDIT_OS_NOT, "SUSE");
    os_ver = pregmatch(pattern: "^(SLE(S|D)\d+)", string:release);
    if (isnull(os_ver)) audit(AUDIT_UNKNOWN_APP_VER, "SUSE");
    os_ver = os_ver[1];
    if (! preg(pattern:"^(SLED15|SLES15)$", string:os_ver)) audit(AUDIT_OS_NOT, "SUSE SLED15 / SLES15", "SUSE " + os_ver);
    
    if (!get_kb_item("Host/SuSE/rpm-list")) audit(AUDIT_PACKAGE_LIST_MISSING);
    
    cpu = get_kb_item("Host/cpu");
    if (isnull(cpu)) audit(AUDIT_UNKNOWN_ARCH);
    if (cpu !~ "^i[3-6]86$" && "x86_64" >!< cpu && "s390x" >!< cpu) audit(AUDIT_LOCAL_CHECKS_NOT_IMPLEMENTED, "SUSE " + os_ver, cpu);
    
    sp = get_kb_item("Host/SuSE/patchlevel");
    if (isnull(sp)) sp = "0";
    if (os_ver == "SLES15" && (! preg(pattern:"^(1)$", string:sp))) audit(AUDIT_OS_NOT, "SLES15 SP1", os_ver + " SP" + sp);
    if (os_ver == "SLED15" && (! preg(pattern:"^(1)$", string:sp))) audit(AUDIT_OS_NOT, "SLED15 SP1", os_ver + " SP" + sp);
    
    
    flag = 0;
    if (rpm_check(release:"SLES15", sp:"1", cpu:"x86_64", reference:"cross-s390x-binutils-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", cpu:"x86_64", reference:"cross-s390x-binutils-debuginfo-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", cpu:"x86_64", reference:"cross-s390x-binutils-debugsource-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", cpu:"x86_64", reference:"binutils-debugsource-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", cpu:"x86_64", reference:"binutils-devel-32bit-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", cpu:"s390x", reference:"cross-x86_64-binutils-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", cpu:"s390x", reference:"cross-x86_64-binutils-debuginfo-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", cpu:"s390x", reference:"cross-x86_64-binutils-debugsource-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"binutils-debuginfo-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"binutils-debugsource-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"binutils-gold-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"binutils-gold-debuginfo-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"binutils-debuginfo-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"binutils-debugsource-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"binutils-gold-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"binutils-gold-debuginfo-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-arm-binutils-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-arm-binutils-debuginfo-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-arm-binutils-debugsource-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-avr-binutils-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-avr-binutils-debuginfo-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-avr-binutils-debugsource-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-epiphany-binutils-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-epiphany-binutils-debuginfo-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-epiphany-binutils-debugsource-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-hppa-binutils-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-hppa-binutils-debuginfo-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-hppa-binutils-debugsource-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-hppa64-binutils-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-hppa64-binutils-debuginfo-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-hppa64-binutils-debugsource-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-i386-binutils-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-i386-binutils-debuginfo-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-i386-binutils-debugsource-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-ia64-binutils-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-ia64-binutils-debuginfo-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-ia64-binutils-debugsource-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-m68k-binutils-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-m68k-binutils-debuginfo-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-m68k-binutils-debugsource-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-mips-binutils-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-mips-binutils-debuginfo-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-mips-binutils-debugsource-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-ppc-binutils-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-ppc-binutils-debuginfo-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-ppc-binutils-debugsource-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-ppc64-binutils-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-ppc64-binutils-debuginfo-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-ppc64-binutils-debugsource-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-riscv64-binutils-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-riscv64-binutils-debuginfo-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-riscv64-binutils-debugsource-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-rx-binutils-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-rx-binutils-debuginfo-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-rx-binutils-debugsource-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-s390-binutils-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-s390-binutils-debuginfo-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-s390-binutils-debugsource-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-sparc-binutils-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-sparc-binutils-debuginfo-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-sparc-binutils-debugsource-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-sparc64-binutils-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-sparc64-binutils-debuginfo-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-sparc64-binutils-debugsource-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-spu-binutils-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-spu-binutils-debuginfo-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-spu-binutils-debugsource-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-aarch64-binutils-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-aarch64-binutils-debuginfo-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-aarch64-binutils-debugsource-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-ppc64le-binutils-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-ppc64le-binutils-debuginfo-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"cross-ppc64le-binutils-debugsource-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"binutils-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"binutils-debuginfo-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"binutils-debugsource-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLES15", sp:"1", reference:"binutils-devel-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", cpu:"x86_64", reference:"cross-s390x-binutils-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", cpu:"x86_64", reference:"cross-s390x-binutils-debuginfo-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", cpu:"x86_64", reference:"cross-s390x-binutils-debugsource-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", cpu:"x86_64", reference:"binutils-debugsource-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", cpu:"x86_64", reference:"binutils-devel-32bit-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", cpu:"s390x", reference:"cross-x86_64-binutils-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", cpu:"s390x", reference:"cross-x86_64-binutils-debuginfo-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", cpu:"s390x", reference:"cross-x86_64-binutils-debugsource-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"binutils-debuginfo-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"binutils-debugsource-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"binutils-gold-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"binutils-gold-debuginfo-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"binutils-debuginfo-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"binutils-debugsource-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"binutils-gold-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"binutils-gold-debuginfo-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-arm-binutils-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-arm-binutils-debuginfo-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-arm-binutils-debugsource-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-avr-binutils-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-avr-binutils-debuginfo-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-avr-binutils-debugsource-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-epiphany-binutils-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-epiphany-binutils-debuginfo-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-epiphany-binutils-debugsource-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-hppa-binutils-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-hppa-binutils-debuginfo-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-hppa-binutils-debugsource-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-hppa64-binutils-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-hppa64-binutils-debuginfo-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-hppa64-binutils-debugsource-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-i386-binutils-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-i386-binutils-debuginfo-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-i386-binutils-debugsource-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-ia64-binutils-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-ia64-binutils-debuginfo-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-ia64-binutils-debugsource-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-m68k-binutils-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-m68k-binutils-debuginfo-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-m68k-binutils-debugsource-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-mips-binutils-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-mips-binutils-debuginfo-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-mips-binutils-debugsource-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-ppc-binutils-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-ppc-binutils-debuginfo-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-ppc-binutils-debugsource-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-ppc64-binutils-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-ppc64-binutils-debuginfo-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-ppc64-binutils-debugsource-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-riscv64-binutils-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-riscv64-binutils-debuginfo-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-riscv64-binutils-debugsource-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-rx-binutils-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-rx-binutils-debuginfo-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-rx-binutils-debugsource-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-s390-binutils-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-s390-binutils-debuginfo-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-s390-binutils-debugsource-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-sparc-binutils-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-sparc-binutils-debuginfo-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-sparc-binutils-debugsource-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-sparc64-binutils-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-sparc64-binutils-debuginfo-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-sparc64-binutils-debugsource-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-spu-binutils-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-spu-binutils-debuginfo-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-spu-binutils-debugsource-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-aarch64-binutils-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-aarch64-binutils-debuginfo-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-aarch64-binutils-debugsource-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-ppc64le-binutils-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-ppc64le-binutils-debuginfo-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"cross-ppc64le-binutils-debugsource-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"binutils-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"binutils-debuginfo-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"binutils-debugsource-2.32-7.5.1")) flag++;
    if (rpm_check(release:"SLED15", sp:"1", reference:"binutils-devel-2.32-7.5.1")) flag++;
    
    
    if (flag)
    {
      if (report_verbosity > 0) security_warning(port:0, extra:rpm_report_get());
      else security_warning(0);
      exit(0);
    }
    else
    {
      tested = pkg_tests_get();
      if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested);
      else audit(AUDIT_PACKAGE_NOT_INSTALLED, "binutils");
    }