A flaw was found in Netwide Assembler (NASM). A NULL Pointer Dereference in asm/labels.c which allows the attacker to cause a denial of service via a crafted file. References: https://bugzilla.nasm.us/show_bug.cgi?id=3392513 https://fakhrizulkifli.github.io/CVE-2018-16517.html
Created nasm tracking bugs for this issue: Affects: fedora-all [bug 1626550]
Upstream Commit: https://repo.or.cz/nasm.git/blobdiff/703e5658498222c3aa77e57fefb466d264abbe58..e996d28c70d45008085322b442b44a9224308548:/asm/nasm.c
Doesn't reproduce on any RHEL version. Looks like it boils down to this (presumably "correct" logic in our older release): ```c if (!output_ins.label) nasm_error(ERR_NONFATAL, "EQU not preceded by label"); else if (output_ins.label[0] != '.' || ``` whereas mainline had: ```c if (!output_ins.label) nasm_error(ERR_NONFATAL, "EQU not preceded by label"); if (output_ins.operands == 1 && (output_ins.oprs[0].type & IMMEDIATE) && output_ins.oprs[0].wrt == NO_SEG) { ``` Patch added back the else -- i.e. the if/then should bail if !output_ins.label.