mirror of
https://git.yoctoproject.org/poky
synced 2026-06-03 13:49:49 +00:00
nasm: fix CVE-2019-14248
See: https://bugzilla.nasm.us/show_bug.cgi?id=3392576 (From OE-Core rev: 49dca79c6e5f631d1f55422864ee57c86cafe1a4) Signed-off-by: Anuj Mittal <anuj.mittal@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
dbd22b6cd7
commit
d8da51bd3b
@@ -0,0 +1,43 @@
|
|||||||
|
From 93d41d82963b2cfd0b24c906f5a8daf53281b559 Mon Sep 17 00:00:00 2001
|
||||||
|
From: "H. Peter Anvin (Intel)" <hpa@zytor.com>
|
||||||
|
Date: Fri, 16 Aug 2019 01:12:54 -0700
|
||||||
|
Subject: [PATCH] BR 3392576: don't segfault on a bad %pragma limit
|
||||||
|
|
||||||
|
Don't segfault on a bad %pragma limit. Instead treat a NULL pointer as
|
||||||
|
an empty string.
|
||||||
|
|
||||||
|
Reported-by: Ren Kimura <rkx1209dev@gmail.com>
|
||||||
|
Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
|
||||||
|
|
||||||
|
CVE: CVE-2019-14248
|
||||||
|
Upstream-Status: Backport [https://repo.or.cz/nasm.git/commit/93d41d82963b2cfd0b24c906f5a8daf53281b559]
|
||||||
|
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
|
||||||
|
---
|
||||||
|
asm/nasm.c | 7 ++++++-
|
||||||
|
1 file changed, 6 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/asm/nasm.c b/asm/nasm.c
|
||||||
|
index c84d675..65116ab 100644
|
||||||
|
--- a/asm/nasm.c
|
||||||
|
+++ b/asm/nasm.c
|
||||||
|
@@ -212,6 +212,11 @@ nasm_set_limit(const char *limit, const char *valstr)
|
||||||
|
bool rn_error;
|
||||||
|
int errlevel;
|
||||||
|
|
||||||
|
+ if (!limit)
|
||||||
|
+ limit = "";
|
||||||
|
+ if (!valstr)
|
||||||
|
+ valstr = "";
|
||||||
|
+
|
||||||
|
for (i = 0; i <= LIMIT_MAX; i++) {
|
||||||
|
if (!nasm_stricmp(limit, limit_info[i].name))
|
||||||
|
break;
|
||||||
|
@@ -204,7 +209,7 @@ nasm_set_limit(const char *limit, const char *valstr)
|
||||||
|
errlevel = ERR_WARNING|ERR_NOFILE|ERR_USAGE;
|
||||||
|
else
|
||||||
|
errlevel = ERR_WARNING|ERR_PASS1|WARN_UNKNOWN_PRAGMA;
|
||||||
|
- nasm_error(errlevel, "unknown limit: `%s'", limit);
|
||||||
|
+ nasm_error(errlevel, "invalid limit value: `%s'", valstr);
|
||||||
|
return DIRR_ERROR;
|
||||||
|
}
|
||||||
|
|
||||||
@@ -5,6 +5,7 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=90904486f8fbf1861cf42752e1a39efe"
|
|||||||
|
|
||||||
SRC_URI = "http://www.nasm.us/pub/nasm/releasebuilds/${PV}/nasm-${PV}.tar.bz2 \
|
SRC_URI = "http://www.nasm.us/pub/nasm/releasebuilds/${PV}/nasm-${PV}.tar.bz2 \
|
||||||
file://CVE-2018-19755.patch \
|
file://CVE-2018-19755.patch \
|
||||||
|
file://CVE-2019-14248.patch \
|
||||||
"
|
"
|
||||||
|
|
||||||
SRC_URI[md5sum] = "3f489aa48ad2aa1f967dc5e293bbd06f"
|
SRC_URI[md5sum] = "3f489aa48ad2aa1f967dc5e293bbd06f"
|
||||||
|
|||||||
Reference in New Issue
Block a user