RHEL 6 : nasm (Unpatched Vulnerability)

critical Nessus Plugin ID 195779

Synopsis

The remote Red Hat 6 host is affected by multiple vulnerabilities that will not be patched.

Description

The remote Redhat Enterprise Linux 6 host has one or more packages installed that are affected by multiple vulnerabilities that have been acknowledged by the vendor but will not be patched.

- nasm: double-free vulnerability in pp_tokline asm/preproc.c (CVE-2020-24978)

- In Netwide Assembler (NASM) 2.14rc0, preproc.c allows remote attackers to cause a denial of service (heap- based buffer overflow and application crash) or possibly have unspecified other impact via a crafted file.
(CVE-2017-11111)

- In Netwide Assembler (NASM) 2.14rc0, there is an illegal address access in the function paste_tokens() in preproc.c, aka a NULL pointer dereference. It will lead to remote denial of service. (CVE-2017-14228)

- In Netwide Assembler (NASM) 2.14rc0, there is a SEGV on unknown address that will cause a remote denial of service attack, because asm/preproc.c mishandles macro calls that have the wrong number of arguments.
(CVE-2017-17810)

- In Netwide Assembler (NASM) 2.14rc0, there is a heap-based buffer overflow that will cause a remote denial of service attack, related to a strcpy in paste_tokens in asm/preproc.c, a similar issue to CVE-2017-11111. (CVE-2017-17811)

- In Netwide Assembler (NASM) 2.14rc0, there is a heap-based buffer over-read in the function detoken() in asm/preproc.c that will cause a remote denial of service attack. (CVE-2017-17812)

- In Netwide Assembler (NASM) 2.14rc0, there is a use-after-free in the pp_list_one_macro function in asm/preproc.c that will cause a remote denial of service attack, related to mishandling of line-syntax errors. (CVE-2017-17813)

- In Netwide Assembler (NASM) 2.14rc0, there is a use-after-free in do_directive in asm/preproc.c that will cause a remote denial of service attack. (CVE-2017-17814)

- In Netwide Assembler (NASM) 2.14rc0, there is an illegal address access in is_mmacro() in asm/preproc.c that will cause a remote denial of service attack, because of a missing check for the relationship between minimum and maximum parameter counts. (CVE-2017-17815)

- In Netwide Assembler (NASM) 2.14rc0, there is a use-after-free in pp_getline in asm/preproc.c that will cause a remote denial of service attack. (CVE-2017-17816)

- In Netwide Assembler (NASM) 2.14rc0, there is a use-after-free in pp_verror in asm/preproc.c that will cause a remote denial of service attack. (CVE-2017-17817)

- In Netwide Assembler (NASM) 2.14rc0, there is a heap-based buffer over-read that will cause a remote denial of service attack, related to a while loop in paste_tokens in asm/preproc.c. (CVE-2017-17818)

- In Netwide Assembler (NASM) 2.14rc0, there is an illegal address access in the function find_cc() in asm/preproc.c that will cause a remote denial of service attack, because pointers associated with skip_white_ calls are not validated. (CVE-2017-17819)

- In Netwide Assembler (NASM) 2.14rc0, there is a use-after-free in pp_list_one_macro in asm/preproc.c that will lead to a remote denial of service attack, related to mishandling of operand-type errors.
(CVE-2017-17820)

- NASM nasm-2.13.03 nasm- 2.14rc15 version 2.14rc15 and earlier contains a memory corruption (crashed) of nasm when handling a crafted file due to function assemble_file(inname, depend_ptr) at asm/nasm.c:482.
vulnerability in function assemble_file(inname, depend_ptr) at asm/nasm.c:482. that can result in aborting/crash nasm program. This attack appear to be exploitable via a specially crafted asm file..
(CVE-2018-1000667)

- Netwide Assembler (NASM) 2.14rc0 has a division-by-zero vulnerability in the expr5 function in asm/eval.c via a malformed input file. (CVE-2018-10016)

- Netwide Assembler (NASM) 2.13 has a stack-based buffer over-read in the disasm function of the disasm/disasm.c file. Remote attackers could leverage this vulnerability to cause a denial of service or possibly have unspecified other impact via a crafted ELF file. (CVE-2018-10254)

- Netwide Assembler (NASM) 2.14rc0 has an endless while loop in the assemble_file function of asm/nasm.c because of a globallineno integer overflow. (CVE-2018-10316)

- Netwide Assembler (NASM) 2.14rc15 has a buffer over-read in x86/regflags.c. (CVE-2018-16382)

- Netwide Assembler (NASM) through 2.14rc16 has memory leaks that may lead to DoS, related to nasm_malloc in nasmlib/malloc.c. (CVE-2018-19213)

- Netwide Assembler (NASM) 2.14rc15 has a heap-based buffer over-read in expand_mmac_params in asm/preproc.c for insufficient input. (CVE-2018-19214)

- Netwide Assembler (NASM) 2.14rc16 has a heap-based buffer over-read in expand_mmac_params in asm/preproc.c for the special cases of the % and $ and ! characters. (CVE-2018-19215)

- There is an illegal address access at asm/preproc.c (function: is_mmacro) in Netwide Assembler (NASM) 2.14rc16 that will cause a denial of service (out-of-bounds array access) because a certain conversion can result in a negative integer. (CVE-2018-19755)

- There is a use-after-free at asm/preproc.c (function pp_getline) in Netwide Assembler (NASM) 2.14rc16 that will cause a denial of service during a line-number increment attempt. (CVE-2018-20535)

- There is a use-after-free at asm/preproc.c (function pp_getline) in Netwide Assembler (NASM) 2.14rc16 that will cause a denial of service during certain finishes tests. (CVE-2018-20538)

- Netwide Assembler (NASM) 2.13.02rc2 has a heap-based buffer over-read in the function tokenize in asm/preproc.c, related to an unterminated string. (CVE-2018-8881)

- Netwide Assembler (NASM) 2.13.02rc2 has a stack-based buffer under-read in the function ieee_shr in asm/float.c via a large shift value. (CVE-2018-8882)

- Netwide Assembler (NASM) 2.13.02rc2 has a buffer over-read in the parse_line function in asm/parser.c via uncontrolled access to nasm_reg_flags. (CVE-2018-8883)

- In Netwide Assembler (NASM) 2.14.02, stack consumption occurs in expr# functions in asm/eval.c. This potentially affects the relationships among expr0, expr1, expr2, expr3, expr4, expr5, and expr6 (and stdscan in asm/stdscan.c). This is similar to CVE-2019-6290 and CVE-2019-6291. (CVE-2019-20334)

- In Netwide Assembler (NASM) 2.15rc0, a heap-based buffer over-read occurs (via a crafted .asm file) in set_text_free when called from expand_one_smacro in asm/preproc.c. (CVE-2019-20352)

- An infinite recursion issue was discovered in eval.c in Netwide Assembler (NASM) through 2.14.02. There is a stack exhaustion problem resulting from infinite recursion in the functions expr, rexp, bexpr and cexpr in certain scenarios involving lots of '{' characters. Remote attackers could leverage this vulnerability to cause a denial-of-service via a crafted asm file. (CVE-2019-6290)

- An issue was discovered in the function expr6 in eval.c in Netwide Assembler (NASM) through 2.14.02. There is a stack exhaustion problem caused by the expr6 function making recursive calls to itself in certain scenarios involving lots of '!' or '+' or '-' characters. Remote attackers could leverage this vulnerability to cause a denial-of-service via a crafted asm file. (CVE-2019-6291)

- In Netwide Assembler (NASM) 2.14.02, there is a use-after-free in paste_tokens in asm/preproc.c.
(CVE-2019-8343)

- A Use After Free vulnerability in function new_Token in asm/preproc.c in nasm 2.14.02 allows attackers to cause a denial of service via crafted nasm command. (CVE-2020-18780)

- Buffer Overflow in Netwide Assembler (NASM) v2.15.xx allows attackers to cause a denial of service via 'crc64i' in the component 'nasmlib/crc64'. This issue is different than CVE-2019-7147. (CVE-2020-18974)

- A Segmentation Fault issue discovered in in ieee_segment function in outieee.c in nasm 2.14.03 and 2.15 allows remote attackers to cause a denial of service via crafted assembly file. (CVE-2020-21528)

- Buffer Overflow vulnerability in hash_findi function in hashtbl.c in nasm 2.15rc0 allows remote attackers to cause a denial of service via crafted asm file. (CVE-2020-21685)

- A stack-use-after-scope issue discovered in expand_mmac_params function in preproc.c in nasm before 2.15.04 allows remote attackers to cause a denial of service via crafted asm file. (CVE-2020-21686)

- Buffer Overflow vulnerability in scan function in stdscan.c in nasm 2.15rc0 allows remote attackers to cause a denial of service via crafted asm file. (CVE-2020-21687)

- In Netwide Assembler (NASM) 2.15rc10, there is heap use-after-free in saa_wbytes in nasmlib/saa.c.
(CVE-2020-24241)

- In Netwide Assembler (NASM) 2.15rc10, SEGV can be triggered in tok_text in asm/preproc.c by accessing READ memory. (CVE-2020-24242)

- An issue was discovered in NASM version 2.16rc0. There are memory leaks in nasm_calloc() in nasmlib/alloc.c. (CVE-2021-33450)

- An issue was discovered in NASM version 2.16rc0. There are memory leaks in nasm_malloc() in nasmlib/alloc.c. (CVE-2021-33452)

- Buffer overflow vulnerability in quote_for_pmake in asm/nasm.c in nasm before 2.15.05 allows attackers to cause a denial of service via crafted file. (CVE-2022-29654)

- nasm v2.16 was discovered to contain a stack overflow in the Ndisasm component (CVE-2022-41420)

- NASM v2.16 was discovered to contain a null pointer deference in the NASM component (CVE-2022-44368)

- NASM 2.16 (development) is vulnerable to 476: Null Pointer Dereference via output/outaout.c.
(CVE-2022-44369)

- NASM v2.16 was discovered to contain a heap buffer overflow in the component quote_for_pmake() asm/nasm.c:856 (CVE-2022-44370)

- NASM v2.16 was discovered to contain a global buffer overflow in the component dbgdbg_typevalue at /output/outdbg.c. (CVE-2022-46456)

- NASM v2.16 was discovered to contain a segmentation violation in the component ieee_write_file at /output/outieee.c. (CVE-2022-46457)

- There exists a heap buffer overflow in nasm 2.16.02rc1 (GitHub commit: b952891). (CVE-2023-31722)

- Null pointer dereference in ieee_write_file in nasm 2.16rc0 allows attackers to cause a denial of service (crash). (CVE-2023-38665)

- Stack-based buffer over-read in function disasm in nasm 2.16 allows attackers to cause a denial of service. (CVE-2023-38667)

- Stack-based buffer over-read in disasm in nasm 2.16 allows attackers to cause a denial of service (crash).
(CVE-2023-38668)

Note that Nessus has not tested for these issues but has instead relied on the package manager's report that the package is installed.

Solution

The vendor has acknowledged the vulnerabilities but no solution has been provided. Refer to the vendor for remediation guidance.

Plugin Details

Severity: Critical

ID: 195779

File Name: redhat_unpatched-nasm-rhel6.nasl

Version: 1.0

Type: local

Agent: unix

Published: 5/11/2024

Updated: 5/11/2024

Supported Sensors: Agentless Assessment, Frictionless Assessment Agent, Frictionless Assessment AWS, Frictionless Assessment Azure, Nessus Agent, Nessus

Risk Information

VPR

Risk Factor: Medium

Score: 6.7

CVSS v2

Risk Factor: High

Base Score: 7.5

Temporal Score: 5.9

Vector: CVSS2#AV:N/AC:L/Au:N/C:P/I:P/A:P

CVSS Score Source: CVE-2020-24978

CVSS v3

Risk Factor: Critical

Base Score: 9.8

Temporal Score: 8.8

Vector: CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

Temporal Vector: CVSS:3.0/E:P/RL:O/RC:C

Vulnerability Information

CPE: cpe:/o:redhat:enterprise_linux:5, cpe:/o:redhat:enterprise_linux:6, cpe:/o:redhat:enterprise_linux:7, cpe:/o:redhat:enterprise_linux:8, p-cpe:/a:redhat:enterprise_linux:nasm

Required KB Items: Host/local_checks_enabled, Host/RedHat/release, Host/RedHat/rpm-list, Host/cpu

Exploit Available: true

Exploit Ease: Exploits are available

Vulnerability Publication Date: 7/8/2017

Reference Information

CVE: CVE-2017-11111, CVE-2017-14228, CVE-2017-17810, CVE-2017-17811, CVE-2017-17812, CVE-2017-17813, CVE-2017-17814, CVE-2017-17815, CVE-2017-17816, CVE-2017-17817, CVE-2017-17818, CVE-2017-17819, CVE-2017-17820, CVE-2018-1000667, CVE-2018-10016, CVE-2018-10254, CVE-2018-10316, CVE-2018-16382, CVE-2018-19213, CVE-2018-19214, CVE-2018-19215, CVE-2018-19755, CVE-2018-20535, CVE-2018-20538, CVE-2018-8881, CVE-2018-8882, CVE-2018-8883, CVE-2019-20334, CVE-2019-20352, CVE-2019-6290, CVE-2019-6291, CVE-2019-8343, CVE-2020-18780, CVE-2020-18974, CVE-2020-21528, CVE-2020-21685, CVE-2020-21686, CVE-2020-21687, CVE-2020-24241, CVE-2020-24242, CVE-2020-24978, CVE-2021-33450, CVE-2021-33452, CVE-2022-29654, CVE-2022-41420, CVE-2022-44368, CVE-2022-44369, CVE-2022-44370, CVE-2022-46456, CVE-2022-46457, CVE-2023-31722, CVE-2023-38665, CVE-2023-38667, CVE-2023-38668