guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

02/02: gnu: xorg-server: Fix CVE-2020-14347 via graft.


From: guix-commits
Subject: 02/02: gnu: xorg-server: Fix CVE-2020-14347 via graft.
Date: Sat, 1 Aug 2020 11:13:19 -0400 (EDT)

mhw pushed a commit to branch master
in repository guix.

commit cf1d1f4f79ddf3a75b960ef52116221cc9732600
Author: Mark H Weaver <mhw@netris.org>
AuthorDate: Sat Aug 1 03:16:40 2020 -0400

    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.
---
 gnu/local.mk                                       |  1 +
 .../patches/xorg-server-CVE-2020-14347.patch       | 33 ++++++++++++++++++++++
 gnu/packages/xorg.scm                              | 14 +++++++--
 3 files changed, 46 insertions(+), 2 deletions(-)

diff --git a/gnu/local.mk b/gnu/local.mk
index 181212c..b7c98ae 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1650,6 +1650,7 @@ dist_patch_DATA =                                         
\
   %D%/packages/patches/xf86-video-voodoo-pcitag.patch          \
   %D%/packages/patches/xfce4-panel-plugins.patch               \
   %D%/packages/patches/xfce4-settings-defaults.patch           \
+  %D%/packages/patches/xorg-server-CVE-2020-14347.patch                \
   %D%/packages/patches/xplanet-1.3.1-cxx11-eof.patch           \
   %D%/packages/patches/xplanet-1.3.1-libdisplay_DisplayOutput.cpp.patch        
\
   %D%/packages/patches/xplanet-1.3.1-libimage_gif.c.patch      \
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 0000000..c54b93d
--- /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
+
diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm
index b58a552..560e6b6 100644
--- a/gnu/packages/xorg.scm
+++ b/gnu/packages/xorg.scm
@@ -5327,6 +5327,7 @@ over Xlib, including:
   (package
     (name "xorg-server")
     (version "1.20.8")
+    (replacement xorg-server/fixed)
     (source
       (origin
         (method url-fetch)
@@ -5450,6 +5451,16 @@ communicates with the user via graphical controls such 
as buttons and
 draggable titlebars and borders.")
     (license license:x11)))
 
+(define xorg-server/fixed  ; Fixes CVE-2020-14347
+  (package
+    (inherit xorg-server)
+    (source
+     (origin
+       (inherit (package-source xorg-server))
+       (patches
+        (append (origin-patches (package-source xorg-server))
+                (search-patches "xorg-server-CVE-2020-14347.patch")))))))
+
 ;; This package is intended to be used when building GTK+.
 ;; Note: It's currently marked as "hidden" to avoid having two non-eq?
 ;; packages with the same name and version.
@@ -5468,8 +5479,7 @@ draggable titlebars and borders.")
                  "18bfl04ihw1jr3h0fs522nnxxq5ixjay77y9dcymnkzk23q8cndx")))))))
 
 (define-public xorg-server-xwayland
-  (package
-    (inherit xorg-server)
+  (package/inherit xorg-server
     (name "xorg-server-xwayland")
     (inputs
      `(("wayland" ,wayland)



reply via email to

[Prev in Thread] Current Thread [Next in Thread]