Integer overflow in Wayland

CVE-2021-3782

An internal reference count is held on the buffer pool, incremented every time a new buffer is created from the pool. The reference count is maintained as an int; on LP64 systems this can cause the reference count to overflow if the client creates a large number of wl_shm buffer objects, or if it can coerce the server to create a large number of external references to the buffer storage. With the reference count overflowing, a use-after-free can be constructed on the wl_shm_pool tracking structure, where values may be incremented or decremented; it may also be possible to construct a limited oracle to leak 4 bytes of server-side memory to the attacking client at a time.

Vulnerability class: Integer Overflow

EPSS: 0.003 (22.0th percentile) — read the EPSS interpretation.

CVSS v3 metric

CVSS v3 base score 6.6 (Medium). Vector: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:H.

Affected products

  • Wayland
  • N/a Wayland — versions wayland 1.20.91

Weakness classification (CWE)

References

Frequently asked questions

What is CVE-2021-3782?
CVE-2021-3782 is a medium-severity vulnerability in Wayland, classified under Integer Overflow or Wraparound. CVSS score: 6.6/10. Published 2022-09-23.
How severe is CVE-2021-3782?
Medium severity. CVSS v3 base score is 6.6 out of 10.