Executive brief
CDT is a C++ library for generating constrained Delaunay triangulations, commonly used in computational geometry and graphics applications. An attacker can trigger a denial of service by providing specially crafted nearly-degenerate constraint edges that cause the library to read from invalid memory locations and crash the application.
Technical details
The vulnerability is an out-of-bounds read in the opposedVertexInd() function that occurs when constraint edge intersections are computed in floating point arithmetic and round outside adjacent triangle boundaries. When processing nearly-degenerate constraint edges, the function performs an invalid array access without proper bounds checking. The attack requires supplying malicious geometry data (constraint edges) to the library; no authentication or network access is required. An attacker can cause a denial of service crash of the calling process. The vulnerability is fixed in CDT version 1.4.5 and later.
Affected products
- artem-ogre CDT before 1.4.5
Timeline
- 2026-09-05: disclosed
- 1.4.5: patched