Vulnerabilities > CVE-2018-20671 - Integer Overflow or Wraparound vulnerability in GNU Binutils

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-190
nessus

Summary

load_specific_debug_section in objdump.c in GNU Binutils through 2.31.1 contains an integer overflow vulnerability that can trigger a heap-based buffer overflow via a crafted section size.

Common Weakness Enumeration (CWE)

Common Attack Pattern Enumeration and Classification (CAPEC)

  • Forced Integer Overflow
    This attack forces an integer variable to go out of range. The integer variable is often used as an offset such as size of memory allocation or similarly. The attacker would typically control the value of such variable and try to get it out of range. For instance the integer in question is incremented past the maximum possible value, it may wrap to become a very small, or negative number, therefore providing a very incorrect value which can lead to unexpected behavior. At worst the attacker can execute arbitrary code.

Nessus

  • NASL familyHuawei Local Security Checks
    NASL idEULEROS_SA-2020-1001.NASL
    descriptionAccording to the versions of the binutils packages installed, the EulerOS installation on the remote host is affected by the following vulnerabilities : - load_specific_debug_section in objdump.c in GNU Binutils through 2.31.1 contains an integer overflow vulnerability that can trigger a heap-based buffer overflow via a crafted section size.(CVE-2018-20671) - An issue was discovered in the Binary File Descriptor (BFD) library (aka libbfd), as distributed in GNU Binutils 2.32. There is a heap-based buffer over-read in _bfd_doprnt in bfd.c because elf_object_p in elfcode.h mishandles an e_shstrndx section of type SHT_GROUP by omitting a trailing
    last seen2020-05-03
    modified2020-01-02
    plugin id132594
    published2020-01-02
    reporterThis script is Copyright (C) 2020 and is owned by Tenable, Inc. or an Affiliate thereof.
    sourcehttps://www.tenable.com/plugins/nessus/132594
    titleEulerOS 2.0 SP8 : binutils (EulerOS-SA-2020-1001)
    code
    #
    # (C) Tenable Network Security, Inc.
    #
    
    include("compat.inc");
    
    if (description)
    {
      script_id(132594);
      script_version("1.3");
      script_set_attribute(attribute:"plugin_modification_date", value:"2020/05/01");
    
      script_cve_id(
        "CVE-2018-20671",
        "CVE-2019-12972"
      );
    
      script_name(english:"EulerOS 2.0 SP8 : binutils (EulerOS-SA-2020-1001)");
      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 :
    
      - load_specific_debug_section in objdump.c in GNU
        Binutils through 2.31.1 contains an integer overflow
        vulnerability that can trigger a heap-based buffer
        overflow via a crafted section size.(CVE-2018-20671)
    
      - An issue was discovered in the Binary File Descriptor
        (BFD) library (aka libbfd), as distributed in GNU
        Binutils 2.32. There is a heap-based buffer over-read
        in _bfd_doprnt in bfd.c because elf_object_p in
        elfcode.h mishandles an e_shstrndx section of type
        SHT_GROUP by omitting a trailing '\0'
        character.(CVE-2019-12972)
    
    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-2020-1001
      script_set_attribute(attribute:"see_also", value:"http://www.nessus.org/u?8373e156");
      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:"2020/01/02");
      script_set_attribute(attribute:"plugin_publication_date", value:"2020/01/02");
    
      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) 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.h12.eulerosv2r8",
            "binutils-devel-2.31.1-13.h12.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 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 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-2020-1074.NASL
    descriptionAccording to the versions of the binutils package installed, the EulerOS Virtualization for ARM 64 installation on the remote host is affected by the following vulnerabilities : - GNU gdb All versions is affected by: Buffer Overflow - Out of bound memory access. The impact is: Deny of Service, Memory Disclosure, and Possible Code Execution. The component is: The main gdb module. The attack vector is: Open an ELF for debugging. The fixed version is: Not fixed yet.(CVE-2019-1010180) - The _bfd_generic_read_minisymbols function in syms.c in the Binary File Descriptor (BFD) library (aka libbfd), as distributed in GNU Binutils 2.31, has a memory leak via a crafted ELF file, leading to a denial of service (memory consumption), as demonstrated by nm.(CVE-2018-20002) - binutils version 2.32 and earlier contains a Integer Overflow vulnerability in objdump, bfd_get_dynamic_reloc_upper_bound,bfd_canonicalize_dyna mic_reloc that can result in Integer overflow trigger heap overflow. Successful exploitation allows execution of arbitrary code.. This attack appear to be exploitable via Local. This vulnerability appears to have been fixed in after commit 3a551c7a1b80fca579461774860574eabfd7f18f.(CVE-2018-1000 876) - An issue was discovered in the merge_strings function in merge.c in the Binary File Descriptor (BFD) library (aka libbfd), as distributed in GNU Binutils 2.31. There is a NULL pointer dereference in _bfd_add_merge_section when attempting to merge sections with large alignments. A specially crafted ELF allows remote attackers to cause a denial of service, as demonstrated by ld.(CVE-2018-18606) - An issue was discovered in elf_link_input_bfd in elflink.c in the Binary File Descriptor (BFD) library (aka libbfd), as distributed in GNU Binutils 2.31. There is a NULL pointer dereference in elf_link_input_bfd when used for finding STT_TLS symbols without any TLS section. A specially crafted ELF allows remote attackers to cause a denial of service, as demonstrated by ld.(CVE-2018-18607) - A heap-based buffer over-read issue was discovered in the function sec_merge_hash_lookup in merge.c in the Binary File Descriptor (BFD) library (aka libbfd), as distributed in GNU Binutils 2.31, because _bfd_add_merge_section mishandles section merges when size is not a multiple of entsize. A specially crafted ELF allows remote attackers to cause a denial of service, as demonstrated by ld.(CVE-2018-18605) - An issue was discovered in the Binary File Descriptor (BFD) library (aka libbfd), as distributed in GNU Binutils 2.31. An invalid memory address dereference was discovered in read_reloc in reloc.c. The vulnerability causes a segmentation fault and application crash, which leads to denial of service, as demonstrated by objdump, because of missing _bfd_clear_contents bounds checking.(CVE-2018-18309) - An issue was discovered in the Binary File Descriptor (BFD) library (aka libbfd), as distributed in GNU Binutils 2.32. It is an integer overflow leading to a SEGV in _bfd_dwarf2_find_nearest_line in dwarf2.c, as demonstrated by nm.(CVE-2019-17451) - find_abstract_instance in dwarf2.c in the Binary File Descriptor (BFD) library (aka libbfd), as distributed in GNU Binutils 2.32, allows remote attackers to cause a denial of service (infinite recursion and application crash) via a crafted ELF file.(CVE-2019-17450) - An issue was discovered in the Binary File Descriptor (BFD) library (aka libbfd), as distributed in GNU Binutils 2.32. There is a heap-based buffer over-read in _bfd_doprnt in bfd.c because elf_object_p in elfcode.h mishandles an e_shstrndx section of type SHT_GROUP by omitting a trailing
    last seen2020-06-01
    modified2020-06-02
    plugin id132828
    published2020-01-13
    reporterThis script is Copyright (C) 2020 and is owned by Tenable, Inc. or an Affiliate thereof.
    sourcehttps://www.tenable.com/plugins/nessus/132828
    titleEulerOS Virtualization for ARM 64 3.0.5.0 : binutils (EulerOS-SA-2020-1074)
    code
    #
    # (C) Tenable Network Security, Inc.
    #
    
    include("compat.inc");
    
    if (description)
    {
      script_id(132828);
      script_version("1.2");
      script_cvs_date("Date: 2020/01/15");
    
      script_cve_id(
        "CVE-2018-1000876",
        "CVE-2018-18309",
        "CVE-2018-18605",
        "CVE-2018-18606",
        "CVE-2018-18607",
        "CVE-2018-20002",
        "CVE-2018-20671",
        "CVE-2019-1010180",
        "CVE-2019-12972",
        "CVE-2019-17450",
        "CVE-2019-17451"
      );
    
      script_name(english:"EulerOS Virtualization for ARM 64 3.0.5.0 : binutils (EulerOS-SA-2020-1074)");
      script_summary(english:"Checks the rpm output for the updated packages.");
    
      script_set_attribute(attribute:"synopsis", value:
    "The remote EulerOS Virtualization for ARM 64 host is missing multiple security
    updates.");
      script_set_attribute(attribute:"description", value:
    "According to the versions of the binutils package installed, the
    EulerOS Virtualization for ARM 64 installation on the remote host is
    affected by the following vulnerabilities :
    
      - GNU gdb All versions is affected by: Buffer Overflow -
        Out of bound memory access. The impact is: Deny of
        Service, Memory Disclosure, and Possible Code
        Execution. The component is: The main gdb module. The
        attack vector is: Open an ELF for debugging. The fixed
        version is: Not fixed yet.(CVE-2019-1010180)
    
      - The _bfd_generic_read_minisymbols function in syms.c in
        the Binary File Descriptor (BFD) library (aka libbfd),
        as distributed in GNU Binutils 2.31, has a memory leak
        via a crafted ELF file, leading to a denial of service
        (memory consumption), as demonstrated by
        nm.(CVE-2018-20002)
    
      - binutils version 2.32 and earlier contains a Integer
        Overflow vulnerability in objdump,
        bfd_get_dynamic_reloc_upper_bound,bfd_canonicalize_dyna
        mic_reloc that can result in Integer overflow trigger
        heap overflow. Successful exploitation allows execution
        of arbitrary code.. This attack appear to be
        exploitable via Local. This vulnerability appears to
        have been fixed in after commit
        3a551c7a1b80fca579461774860574eabfd7f18f.(CVE-2018-1000
        876)
    
      - An issue was discovered in the merge_strings function
        in merge.c in the Binary File Descriptor (BFD) library
        (aka libbfd), as distributed in GNU Binutils 2.31.
        There is a NULL pointer dereference in
        _bfd_add_merge_section when attempting to merge
        sections with large alignments. A specially crafted ELF
        allows remote attackers to cause a denial of service,
        as demonstrated by ld.(CVE-2018-18606)
    
      - An issue was discovered in elf_link_input_bfd in
        elflink.c in the Binary File Descriptor (BFD) library
        (aka libbfd), as distributed in GNU Binutils 2.31.
        There is a NULL pointer dereference in
        elf_link_input_bfd when used for finding STT_TLS
        symbols without any TLS section. A specially crafted
        ELF allows remote attackers to cause a denial of
        service, as demonstrated by ld.(CVE-2018-18607)
    
      - A heap-based buffer over-read issue was discovered in
        the function sec_merge_hash_lookup in merge.c in the
        Binary File Descriptor (BFD) library (aka libbfd), as
        distributed in GNU Binutils 2.31, because
        _bfd_add_merge_section mishandles section merges when
        size is not a multiple of entsize. A specially crafted
        ELF allows remote attackers to cause a denial of
        service, as demonstrated by ld.(CVE-2018-18605)
    
      - An issue was discovered in the Binary File Descriptor
        (BFD) library (aka libbfd), as distributed in GNU
        Binutils 2.31. An invalid memory address dereference
        was discovered in read_reloc in reloc.c. The
        vulnerability causes a segmentation fault and
        application crash, which leads to denial of service, as
        demonstrated by objdump, because of missing
        _bfd_clear_contents bounds checking.(CVE-2018-18309)
    
      - An issue was discovered in the Binary File Descriptor
        (BFD) library (aka libbfd), as distributed in GNU
        Binutils 2.32. It is an integer overflow leading to a
        SEGV in _bfd_dwarf2_find_nearest_line in dwarf2.c, as
        demonstrated by nm.(CVE-2019-17451)
    
      - find_abstract_instance in dwarf2.c in the Binary File
        Descriptor (BFD) library (aka libbfd), as distributed
        in GNU Binutils 2.32, allows remote attackers to cause
        a denial of service (infinite recursion and application
        crash) via a crafted ELF file.(CVE-2019-17450)
    
      - An issue was discovered in the Binary File Descriptor
        (BFD) library (aka libbfd), as distributed in GNU
        Binutils 2.32. There is a heap-based buffer over-read
        in _bfd_doprnt in bfd.c because elf_object_p in
        elfcode.h mishandles an e_shstrndx section of type
        SHT_GROUP by omitting a trailing '\0'
        character.(CVE-2019-12972)
    
      - load_specific_debug_section in objdump.c in GNU
        Binutils through 2.31.1 contains an integer overflow
        vulnerability that can trigger a heap-based buffer
        overflow via a crafted section size.(CVE-2018-20671)
    
    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-2020-1074
      script_set_attribute(attribute:"see_also", value:"http://www.nessus.org/u?043d6f7a");
      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: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:"exploitability_ease", value:"No known exploits are available");
    
      script_set_attribute(attribute:"patch_publication_date", value:"2020/01/13");
      script_set_attribute(attribute:"plugin_publication_date", value:"2020/01/13");
    
      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:"cpe:/o:huawei:euleros:uvp:3.0.5.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) 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/cpu", "Host/EulerOS/release", "Host/EulerOS/rpm-list", "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");
    uvp = get_kb_item("Host/EulerOS/uvp_version");
    if (uvp != "3.0.5.0") audit(AUDIT_OS_NOT, "EulerOS Virtualization 3.0.5.0");
    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.h12.eulerosv2r8"];
    
    foreach (pkg in pkgs)
      if (rpm_check(release:"EulerOS-2.0", 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");
    }