diff options
-rw-r--r-- | gnu/local.mk | 1 | ||||
-rw-r--r-- | gnu/packages/patches/jq-CVE-2015-8863.patch | 45 | ||||
-rw-r--r-- | gnu/packages/web.scm | 8 |
3 files changed, 2 insertions, 52 deletions
diff --git a/gnu/local.mk b/gnu/local.mk index 1f9f6b36f8..c2075f7d09 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -834,7 +834,6 @@ dist_patch_DATA = \ %D%/packages/patches/jemalloc-arm-address-bits.patch \ %D%/packages/patches/jbig2dec-ignore-testtest.patch \ %D%/packages/patches/json-glib-fix-tests-32bit.patch \ - %D%/packages/patches/jq-CVE-2015-8863.patch \ %D%/packages/patches/kdbusaddons-kinit-file-name.patch \ %D%/packages/patches/khmer-use-libraries.patch \ %D%/packages/patches/libziparchive-add-includes.patch \ diff --git a/gnu/packages/patches/jq-CVE-2015-8863.patch b/gnu/packages/patches/jq-CVE-2015-8863.patch deleted file mode 100644 index 20b3bb3f06..0000000000 --- a/gnu/packages/patches/jq-CVE-2015-8863.patch +++ /dev/null @@ -1,45 +0,0 @@ -Fix CVE-2015-8863 (Off-by-one error in the tokenadd function in -jv_parse.c in jq allows remote attackers to cause a denial of service -(crash) via a long JSON-encoded number, which triggers a heap-based -buffer overflow): - -<https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2015-8863> - -Copied from upstream code repository: - -<https://github.com/stedolan/jq/commit/8eb1367ca44e772963e704a700ef72ae2e12babd> - -From 8eb1367ca44e772963e704a700ef72ae2e12babd Mon Sep 17 00:00:00 2001 -From: Nicolas Williams <nico@cryptonector.com> -Date: Sat, 24 Oct 2015 17:24:57 -0500 -Subject: [PATCH] Heap buffer overflow in tokenadd() (fix #105) - -This was an off-by one: the NUL terminator byte was not allocated on -resize. This was triggered by JSON-encoded numbers longer than 256 -bytes. ---- - jv_parse.c | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/jv_parse.c b/jv_parse.c -index 3102ed4..84245b8 100644 ---- a/jv_parse.c -+++ b/jv_parse.c -@@ -383,7 +383,7 @@ static pfunc stream_token(struct jv_parser* p, char ch) { - - static void tokenadd(struct jv_parser* p, char c) { - assert(p->tokenpos <= p->tokenlen); -- if (p->tokenpos == p->tokenlen) { -+ if (p->tokenpos >= (p->tokenlen - 1)) { - p->tokenlen = p->tokenlen*2 + 256; - p->tokenbuf = jv_mem_realloc(p->tokenbuf, p->tokenlen); - } -@@ -485,7 +485,7 @@ static pfunc check_literal(struct jv_parser* p) { - TRY(value(p, v)); - } else { - // FIXME: better parser -- p->tokenbuf[p->tokenpos] = 0; // FIXME: invalid -+ p->tokenbuf[p->tokenpos] = 0; - char* end = 0; - double d = jvp_strtod(&p->dtoa, p->tokenbuf, &end); - if (end == 0 || *end != 0) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 447a899544..86e748f950 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -4166,7 +4166,7 @@ It uses the uwsgi protocol for all the networking/interprocess communications.") (define-public jq (package (name "jq") - (version "1.5") + (version "1.6") (source (origin (method url-fetch) (uri (string-append "https://github.com/stedolan/" name @@ -4174,11 +4174,7 @@ It uses the uwsgi protocol for all the networking/interprocess communications.") "/" name "-" version ".tar.gz")) (sha256 (base32 - "0g29kyz4ykasdcrb0zmbrp2jqs9kv1wz9swx849i2d1ncknbzln4")) - ;; This patch has been pushed and the vulnerability will be - ;; fixed in the next release after 1.5. - ;; https://github.com/stedolan/jq/issues/995 - (patches (search-patches "jq-CVE-2015-8863.patch")))) + "1a76f46a652i2g333kfvrl6mp2w7whf6h1yly519izg4y967h9cn")))) (inputs `(("oniguruma" ,oniguruma))) (native-inputs |