summary refs log tree commit diff
path: root/gnu/packages/patches
diff options
context:
space:
mode:
authorMark H Weaver <mhw@netris.org>2020-08-01 03:16:40 -0400
committerMark H Weaver <mhw@netris.org>2020-08-01 11:11:58 -0400
commitcf1d1f4f79ddf3a75b960ef52116221cc9732600 (patch)
tree423ce3dfa9738425fd599e7d1fd1cc3691bb356a /gnu/packages/patches
parentd7d85c6412f6c2077ea930c7e525371912100193 (diff)
downloadguix-cf1d1f4f79ddf3a75b960ef52116221cc9732600.tar.gz
gnu: xorg-server: Fix CVE-2020-14347 via graft.
* gnu/packages/patches/xorg-server-CVE-2020-14347.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/xorg.scm (xorg-server/fixed): New variable.
(xorg-server)[replacement]: New field.
(xorg-server-wayland): Use package/inherit.
Diffstat (limited to 'gnu/packages/patches')
-rw-r--r--gnu/packages/patches/xorg-server-CVE-2020-14347.patch33
1 files changed, 33 insertions, 0 deletions
diff --git a/gnu/packages/patches/xorg-server-CVE-2020-14347.patch b/gnu/packages/patches/xorg-server-CVE-2020-14347.patch
new file mode 100644
index 0000000000..c54b93d764
--- /dev/null
+++ b/gnu/packages/patches/xorg-server-CVE-2020-14347.patch
@@ -0,0 +1,33 @@
+From aac28e162e5108510065ad4c323affd6deffd816 Mon Sep 17 00:00:00 2001
+From: Matthieu Herrb <matthieu@herrb.eu>
+Date: Sat, 25 Jul 2020 19:33:23 +0200
+Subject: [PATCH] fix for ZDI-11426
+
+Avoid leaking un-initalized memory to clients by zeroing the
+whole pixmap on initial allocation.
+
+This vulnerability was discovered by:
+Jan-Niklas Sohn working with Trend Micro Zero Day Initiative
+
+Signed-off-by: Matthieu Herrb <matthieu@herrb.eu>
+Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
+---
+ dix/pixmap.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/dix/pixmap.c b/dix/pixmap.c
+index 1186d7dbb..5a0146bbb 100644
+--- a/dix/pixmap.c
++++ b/dix/pixmap.c
+@@ -116,7 +116,7 @@ AllocatePixmap(ScreenPtr pScreen, int pixDataSize)
+     if (pScreen->totalPixmapSize > ((size_t) - 1) - pixDataSize)
+         return NullPixmap;
+ 
+-    pPixmap = malloc(pScreen->totalPixmapSize + pixDataSize);
++    pPixmap = calloc(1, pScreen->totalPixmapSize + pixDataSize);
+     if (!pPixmap)
+         return NullPixmap;
+ 
+-- 
+2.27.0
+