Vulnerability · Published Aug 16, 2025 · Assigned by GitHub_M
CVE-2025-55286z2d OOB drawing with new multi-sample anti-aliasing could lead to invalid memory access and corruption
High 7.3
In plain English
A high-severity memory corruption in z2d from vancluever. There are no confirmed reports of exploitation so far. The chance it is exploited in the next 30 days is estimated at 0.2% (higher than 4% of all known vulnerabilities).
Official description
z2d is a pure Zig 2D graphics library. z2d v0.7.0 released with a new multi-sample anti-aliasing (MSAA) method, which uses a new buffering mechanism for storing coverage data. This differs from the standard alpha mask surface used for the previous super-sample anti-aliasing (SSAA) method. Under certain circumstances where the path being drawn existed in whole or partly outside of the rendering surface, incorrect bounding could cause out-of-bounds access within the coverage buffer. This affects the higher-level drawing operations, such as Context.fill, Context.stroke, painter.fill, and painter.stroke, when either the .default or .multisample_4x anti-aliasing modes were used. .supersample_4x was not affected, nor was drawing without anti-aliasing. In non-safe optimization modes (consumers compiling with ReleaseFast or ReleaseSmall), this could potentially lead to invalid memory accesses or corruption. z2d v0.7.1 fixes this issue, and it's recommended to upgrade to v0.7.1, or, given the small period of time v0.7.0 has been released, use v0.7.1 immediately, skipping v0.7.0.
Affected products (as reported)
| Vendor | Product | Versions |
|---|---|---|
| vancluever | z2d | = 0.7.0 |
Weakness: CWE-119, CWE-122 · Vector: CVSS:4.0/AV:L/AC:H/AT:P/PR:L/UI:P/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H
References
- https://github.com/vancluever/z2d/security/advisories/GHSA-2vq8-cp8r-vcf3 x_refsource_CONFIRM
- https://github.com/vancluever/z2d/pull/137 x_refsource_MISC
- https://github.com/vancluever/z2d/commit/93e45d36af53cda0d7f454ed8440713b7ac155b6 x_refsource_MISC