aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/patches/libtasn1-CVE-2017-6891.patch
blob: 1f847ed02516467facd8a1905955ed4c33def48e (about) (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
Fix CVE-2017-6891:

https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-6891

Patch copied from upstream source repository:

https://git.savannah.gnu.org/cgit/libtasn1.git/commit/?id=5520704d075802df25ce4ffccc010ba1641bd484

From 5520704d075802df25ce4ffccc010ba1641bd484 Mon Sep 17 00:00:00 2001
From: Nikos Mavrogiannopoulos <nmav@redhat.com>
Date: Thu, 18 May 2017 18:03:34 +0200
Subject: [PATCH] asn1_find_node: added safety check on asn1_find_node()

This prevents a stack overflow in asn1_find_node() which
is triggered by too long variable names in the definitions
files. That means that applications have to deliberately
pass a too long 'name' constant to asn1_write_value()
and friends.  Reported by Jakub Jirasek.

Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
---
 lib/parser_aux.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/lib/parser_aux.c b/lib/parser_aux.c
index b4a7370..976ab38 100644
--- a/lib/parser_aux.c
+++ b/lib/parser_aux.c
@@ -120,6 +120,9 @@ asn1_find_node (asn1_node pointer, const char *name)
       if (n_end)
 	{
 	  nsize = n_end - n_start;
+	  if (nsize >= sizeof(n))
+		return NULL;
+
 	  memcpy (n, n_start, nsize);
 	  n[nsize] = 0;
 	  n_start = n_end;
@@ -158,6 +161,9 @@ asn1_find_node (asn1_node pointer, const char *name)
       if (n_end)
 	{
 	  nsize = n_end - n_start;
+	  if (nsize >= sizeof(n))
+		return NULL;
+
 	  memcpy (n, n_start, nsize);
 	  n[nsize] = 0;
 	  n_start = n_end;
-- 
2.13.0

-utils.scm, gnu/packages/patchutils.scm, gnu/packages/pdf.scm, gnu/packages/perl6.scm, gnu/packages/phabricator.scm, gnu/packages/popt.scm, gnu/packages/printers.scm, gnu/packages/prolog.scm, gnu/packages/protobuf.scm, gnu/packages/pulseaudio.scm, gnu/packages/python-crypto.scm, gnu/packages/python-web.scm, gnu/packages/python-xyz.scm, gnu/packages/qt.scm, gnu/packages/radio.scm, gnu/packages/rails.scm, gnu/packages/rdf.scm, gnu/packages/rednotebook.scm, gnu/packages/rpc.scm, gnu/packages/rsync.scm, gnu/packages/ruby.scm, gnu/packages/rust.scm, gnu/packages/scheme.scm, gnu/packages/screen.scm, gnu/packages/security-token.scm, gnu/packages/selinux.scm, gnu/packages/serialization.scm, gnu/packages/shells.scm, gnu/packages/shellutils.scm, gnu/packages/simh.scm, gnu/packages/sml.scm, gnu/packages/ssh.scm, gnu/packages/statistics.scm, gnu/packages/stenography.scm, gnu/packages/sync.scm, gnu/packages/syncthing.scm, gnu/packages/synergy.scm, gnu/packages/telephony.scm, gnu/packages/terminals.scm, gnu/packages/tex.scm, gnu/packages/texinfo.scm, gnu/packages/text-editors.scm, gnu/packages/textutils.scm, gnu/packages/time.scm, gnu/packages/tmux.scm, gnu/packages/tor.scm, gnu/packages/toys.scm, gnu/packages/version-control.scm, gnu/packages/video.scm, gnu/packages/vim.scm, gnu/packages/virtualization.scm, gnu/packages/vlang.scm, gnu/packages/vnc.scm, gnu/packages/vpn.scm, gnu/packages/web-browsers.scm, gnu/packages/web.scm, gnu/packages/wireservice.scm, gnu/packages/wm.scm, gnu/packages/wxwidgets.scm, gnu/packages/xdisorg.scm, gnu/packages/xml.scm, gnu/packages/xorg.scm, tests/lint.scm: Remove trailing ".git" from 'git-reference' URL. Ludovic Courtès 2020-06-24gnu: java-usb4java: Don't use unstable tarball....* gnu/packages/libusb.scm (java-usb4java)[source]: Download using git-fetch. Efraim Flashner 2020-05-05Merge branch 'master' into core-updatesMarius Bakke 2020-05-03gnu: libusb-0.1: fix build failure on newer gcc...* gnu/packages/libusb.scm (libusb-0.1): Disable -Werror. Signed-off-by: Jakub Kądziołka <kuba@kadziolka.net> Christopher Howard 2020-03-14Merge branch 'master' into core-updatesMarius Bakke 2020-03-13gnu: Add python-capablerobot-usbhub....* gnu/packages/libusb (python-capablerobot-usbhub): New variable. Vagrant Cascadian 2020-02-16gnu: Remove obsolete bootstrap workaround phases....* gnu/packages/admin.scm (igt-gpu-tools)[arguments]: Don't set NOCONFIGURE environment variable. * gnu/packages/algebra.scm (givaro, fflas-ffpack, linbox), * gnu/packages/arcan.scm (xarcan), * gnu/packages/audio.scm (rtmidi), * gnu/packages/cinnamon.scm (cinnamon-desktop), * gnu/packages/gnome.scm (dia, libxklavier, byzanz), * gnu/packages/image-viewers.scm (geeqie), * gnu/packages/libusb.scm (libplist), * gnu/packages/mail.scm (libetpan), * gnu/packages/networking.scm (aircrack-ng), * gnu/packages/terminals.scm (tilda, kmscon), * gnu/packages/xorg.scm (xf86-video-intel, xcompmgr) [arguments]: Same. Efraim Flashner 2020-02-14Merge branch 'master' into core-updatesMarius Bakke 2020-02-05gnu: libmtp: Update to 1.1.17....* gnu/packages/libusb.scm (libmtp): Update to 1.1.17. Marius Bakke 2020-02-05gnu: libmtp: Do not build the static library....* gnu/packages/libusb.scm (libmtp)[arguments]: Add "--disable-static" in #:configure-flags. Marius Bakke 2020-02-05gnu: libmtp: Remove unnecessary propagation....* gnu/packages/libusb.scm (libmtp)[propagated-inputs]: Move LIBGCRYPT ... [inputs]: ... here. New field. Marius Bakke 2020-01-24gnu: libimobiledevice: Fix build with Python 3.8....* gnu/packages/libusb.scm (%libimobiledevice-patches): New variable. (libimobiledevice)[source](patches): New field. [arguments]: Remove #:configure-flags. Add #:phases. [native-inputs]: Add AUTOCONF and AUTOMAKE. Marius Bakke 2020-01-19gnu: hidapi: Declare a source file-name....* gnu/packages/libusb.scm (hidapi)[source]: Add file-name field. Efraim Flashner 2020-01-17gnu: hidapi: Update to 0.9.0....This release was taken over by the libusb team. See <https://github.com/signal11/hidapi/issues/373>. * gnu/packages/libusb.scm (hidapi): Update to 0.9.0. [source, home-page]: Switch to new upstream. Tobias Geerinckx-Rice 2020-01-17gnu: hidapi: Don't use unstable tarball....* gnu/packages/libusb.scm (hidapi)[source]: Use GIT-FETCH and GIT-FILE-NAME. Tobias Geerinckx-Rice 2019-11-22gnu: libplist: Update to 2.1.0....* gnu/packages/libusb.scm (libplist): Update to 2.1.0. [source]: Use GIT-FETCH and GIT-FILE-NAME. [arguments]: Add ‘configure-later’ phase. [native-inputs]: Add autoconf, automake, and libtool. Tobias Geerinckx-Rice