Commits on Source (3)
-
Warren Togami authored
X11 clients tend to assume that pointers have buttons. This assumption means they often fail to handle the X error that is generated when querying the button mapping of a pointer device that lacks buttons. This failure to handle the X error leads to those client applications to abruptly exit. This commit assigns vestigial buttons to the gesture pointer device for the sole purpose of backward compatibility with legacy X11 clients. That technique is already employed for a different pointer, the relative pointer device, for similar reasons, so this just makes the legacy client compatibility more complete. See https://gitlab.gnome.org/GNOME/mutter/-/issues/2353
-
Peter Hutterer authored
Affected are ProcRRChangeProviderProperty and ProcRRChangeOutputProperty. See also 8f454b79 where this same bug was fixed for the core protocol and XI. This fixes an OOB read and the resulting information disclosure. Length calculation for the request was clipped to a 32-bit integer. With the correct stuff->nUnits value the expected request size was truncated, passing the REQUEST_FIXED_SIZE check. The server then proceeded with reading at least stuff->num_items bytes (depending on stuff->format) from the request and stuffing whatever it finds into the property. In the process it would also allocate at least stuff->nUnits bytes, i.e. 4GB. CVE-2023-6478, ZDI-CAN-22561 This vulnerability was discovered by: Jan-Niklas Sohn working with Trend Micro Zero Day Initiative
-
Peter Hutterer authored
button->xkb_acts is supposed to be an array sufficiently large for all our buttons, not just a single XkbActions struct. Allocating insufficient memory here means when we memcpy() later in XkbSetDeviceInfo we write into memory that wasn't ours to begin with, leading to the usual security ooopsiedaisies. CVE-2023-6377, ZDI-CAN-22412, ZDI-CAN-22413 This vulnerability was discovered by: Jan-Niklas Sohn working with Trend Micro Zero Day Initiative
Showing
- Xi/exevents.c 6 additions, 6 deletionsXi/exevents.c
- dix/devices.c 10 additions, 0 deletionsdix/devices.c
- hw/xwayland/xwayland-input.c 7 additions, 0 deletionshw/xwayland/xwayland-input.c
- randr/rrproperty.c 1 addition, 1 deletionrandr/rrproperty.c
- randr/rrproviderproperty.c 1 addition, 1 deletionrandr/rrproviderproperty.c