Browse code

glibc: fix CVE-2019-9169

Change-Id: Id6afdbebeebd74f839c6aa67eb5c9fa2841f27c4
Reviewed-on: http://photon-jenkins.eng.vmware.com:8082/6847
Reviewed-by: Anish Swaminathan <anishs@vmware.com>
Tested-by: Anish Swaminathan <anishs@vmware.com>

Alexey Makhalov authored on 2019/03/09 05:12:44
Showing 2 changed files
1 1
new file mode 100644
... ...
@@ -0,0 +1,33 @@
0
+From 583dd860d5b833037175247230a328f0050dbfe9 Mon Sep 17 00:00:00 2001
1
+From: Paul Eggert <eggert@cs.ucla.edu>
2
+Date: Mon, 21 Jan 2019 11:08:13 -0800
3
+Subject: [PATCH] regex: fix read overrun [BZ #24114]
4
+
5
+Problem found by AddressSanitizer, reported by Hongxu Chen in:
6
+https://debbugs.gnu.org/34140
7
+* posix/regexec.c (proceed_next_node):
8
+Do not read past end of input buffer.
9
+---
10
+ posix/regexec.c |  6 ++++--
11
+ 1 file changed, 3 insertions(+), 3 deletions(-)
12
+
13
+diff --git a/posix/regexec.c b/posix/regexec.c
14
+index 91d5a79..084b122 100644
15
+--- a/posix/regexec.c
16
+@@ -1293,8 +1293,10 @@ proceed_next_node (const re_match_context_t *mctx, Idx nregs, regmatch_t *regs,
17
+ 	      else if (naccepted)
18
+ 		{
19
+ 		  char *buf = (char *) re_string_get_buffer (&mctx->input);
20
+-		  if (memcmp (buf + regs[subexp_idx].rm_so, buf + *pidx,
21
+-			      naccepted) != 0)
22
++		  if (mctx->input.valid_len - *pidx < naccepted
23
++		      || (memcmp (buf + regs[subexp_idx].rm_so, buf + *pidx,
24
++				  naccepted)
25
++			  != 0))
26
+ 		    return -1;
27
+ 		}
28
+ 	    }
29
+-- 
30
+2.9.3
31
+
... ...
@@ -4,7 +4,7 @@
4 4
 Summary:        Main C library
5 5
 Name:           glibc
6 6
 Version:        2.26
7
-Release:        14%{?dist}
7
+Release:        15%{?dist}
8 8
 License:        LGPLv2+
9 9
 URL:            http://www.gnu.org/software/libc
10 10
 Group:          Applications/System
... ...
@@ -30,6 +30,7 @@ Patch12:        glibc-fix-CVE-2018-11236.patch
30 30
 Patch13:        glibc-fix-CVE-2018-11237.patch
31 31
 Patch14:        glibc-Check-length-of-ifname-before-copying-it-into-to-ifreq-structure.patch
32 32
 Patch15:        glibc-fix-CVE-2018-19591.patch
33
+Patch16:        CVE-2019-9169.patch
33 34
 Provides:       rtld(GNU_HASH)
34 35
 Requires:       filesystem
35 36
 %description
... ...
@@ -99,6 +100,7 @@ sed -i 's/\\$$(pwd)/`pwd`/' timezone/Makefile
99 99
 %patch13 -p1
100 100
 %patch14 -p1
101 101
 %patch15 -p1
102
+%patch16 -p1
102 103
 
103 104
 install -vdm 755 %{_builddir}/%{name}-build
104 105
 # do not try to explicitly provide GLIBC_PRIVATE versioned libraries
... ...
@@ -303,6 +305,8 @@ grep "^FAIL: nptl/tst-eintr1" tests.sum >/dev/null && n=$((n+1)) ||:
303 303
 
304 304
 
305 305
 %changelog
306
+*   Fri Mar 08 2019 Alexey Makhalov <amakhalov@vmware.com> 2.26-15
307
+-   Fix CVE-2019-9169
306 308
 *   Wed Feb 13 2019 Alexey Makhalov <amakhalov@vmware.com> 2.26-14
307 309
 -   Fix for CVE-2018-19591.
308 310
 *   Tue Jun 26 2018 Keerthana K <keerthanak@vmware.com> 2.26-13