Description (CNA)
libschrift through 0.10.2 contains a divide by zero vulnerability that allows attackers to crash applications by supplying a font with unitsPerEm of 0 in the head table. Attackers can provide a crafted TrueType font whose NaN glyph coordinates bypass clip_points(), causing an out-of-bounds raster read in draw_line() during sft_render() and crashing the process.
Affected (CNA)
| Vendor / product | Versions |
|---|---|
| tomolt / libschrift | affected 0 through 0.10.2 |
CWE
CWE-369
References
- https://github.com/tomolt/libschrift/issues/46
- https://hackmd.io/@haind-pwn/libschrift-unitsperem-zero-oob
- https://github.com/tomolt/libschrift/blob/v0.10.2/schrift.c#L542
- https://github.com/tomolt/libschrift/blob/v0.10.2/schrift.c#L1422-L1503
- https://www.vulncheck.com/advisories/libschrift-through-0.10.2-divide-by-zero-via-unitsperem-in-draw-line