Integer overflow in the ProcDRI2GetBuffers function in the DRI2 extension in X.Org Server (aka xserver and xorg-server) 1.7.0 through 1.16.x before 1.16.3 allows remote authenticated users to cause a denial of service (crash) or possibly execute arbitrary code via a crafted request, which triggers an out-of-bounds read or write.
X.Org Server (aka xserver and xorg-server) 1.15.0 through 1.16.x before 1.16.3 allows remote authenticated users to cause a denial of service (out-of-bounds read or write) or possibly execute arbitrary code via a crafted length or index value to the (1) sprocdri3queryversion, (2) sprocdri3open, (3) sprocdri3pixmapfrombuffer, (4) sprocdri3bufferfrompixmap, (5) sprocdri3fencefromfd, (6) sprocdri3fdfromfence, (7) procpresentquerycapabilities, (8) sprocpresentqueryversion, (9) sprocpresentpixmap, (10) sprocpresentnotifymsc, (11) sprocpresentselectinput, or (12) sprocpresentquerycapabilities function in the (a) DRI3 or (b) Present extension.
The authentication setup in XWayland 1.16.x and 1.17.x before 1.17.2 starts the server in non-authenticating mode, which allows local users to read from or send information to arbitrary X11 clients via vectors involving a UNIX socket.