CVE-2026-58496
ThorVG: Out-of-bounds Read in SFNT/TTF Font Loader via Memory API
Thor Vector Graphics (ThorVG) is a production-ready vector graphics engine. Prior to 1.0.7, the SFNT/TTF font loader's SfntLoader::gen function in tvgSfntLoader.cpp reads data[0] through data[3] to identify the font type without first checking that the input buffer contains at least four bytes. Loading an undersized font directly from memory through public APIs such as tvg::Text::load causes an out-of-bounds read. Loading through a file path using mmap can mask the read because of page alignment; the memory-loading API directly exposes it. Depending on memory layout, a malformed short font may crash the consuming application or disclose adjacent heap memory. This issue is fixed in version 1.0.7.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- Low
- Privileges needed
- None
- User interaction
- Required
What an attacker can affect
- Confidentiality
- Low
- Integrity
- None
- Availability
- None
Exploit likelihood
What each source reports
CVE List Score used
4.3
ThorVG: Out-of-bounds Read in SFNT/TTF Font Loader via Memory API
Thor Vector Graphics (ThorVG) is a production-ready vector graphics engine. Prior to 1.0.7, the SFNT/TTF font loader's SfntLoader::gen function in tvgSfntLoader.cpp reads data[0] through data[3] to identify the font type without first checking that the input buffer contains at least four bytes. Loading an undersized font directly from memory through public APIs such as tvg::Text::load causes an out-of-bounds read. Loading through a file path using mmap can mask the read because of page alignment; the memory-loading API directly exposes it. Depending on memory layout, a malformed short font may crash the consuming application or disclose adjacent heap memory. This issue is fixed in version 1.0.7.
- Record
CVE-2026-58496- CVSS 3.1
- 4.3 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:N/A:N - Weakness
- CWE-125
- Updated
- 2026-11-02
EUVDEUVD-2026-111405
4.3
Thor Vector Graphics (ThorVG) is a production-ready vector graphics engine. Prior to 1.0.7, the SFNT/TTF font loader's SfntLoader::gen function in tvgSfntLoader.cpp reads data[0] through data[3] to identify the font type without first checking that the input buffer contains at least four bytes. Loading an undersized font directly from memory through public APIs such as tvg::Text::load causes an out-of-bounds read. Loading through a file path using mmap can mask the read because of page alignment; the memory-loading API directly exposes it. Depending on memory layout, a malformed short font may crash the consuming application or disclose adjacent heap memory. This issue is fixed in version 1.0.7.
- Record
EUVD-2026-111405- CVSS 3.1
- 4.3 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:N/A:N - Updated
- 2026-11-03
NVD
4.3
Thor Vector Graphics (ThorVG) is a production-ready vector graphics engine. Prior to 1.0.7, the SFNT/TTF font loader's SfntLoader::gen function in tvgSfntLoader.cpp reads data[0] through data[3] to identify the font type without first checking that the input buffer contains at least four bytes. Loading an undersized font directly from memory through public APIs such as tvg::Text::load causes an out-of-bounds read. Loading through a file path using mmap can mask the read because of page alignment; the memory-loading API directly exposes it. Depending on memory layout, a malformed short font may crash the consuming application or disclose adjacent heap memory. This issue is fixed in version 1.0.7.
- Record
CVE-2026-58496- CVSS 3.1
- 4.3 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:N/A:N - Weakness
- CWE-125
- Updated
- 2026-11-03
OSV
4.3
ThorVG: Out-of-bounds Read in SFNT/TTF Font Loader via Memory API
Thor Vector Graphics (ThorVG) is a production-ready vector graphics engine. Prior to 1.0.7, the SFNT/TTF font loader's SfntLoader::gen function in tvgSfntLoader.cpp reads data[0] through data[3] to identify the font type without first checking that the input buffer contains at least four bytes. Loading an undersized font directly from memory through public APIs such as tvg::Text::load causes an out-of-bounds read. Loading through a file path using mmap can mask the read because of page alignment; the memory-loading API directly exposes it. Depending on memory layout, a malformed short font may crash the consuming application or disclose adjacent heap memory. This issue is fixed in version 1.0.7.
- Record
CVE-2026-58496- CVSS 3.1
- 4.3 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:N/A:N - Weakness
- CWE-125
- Updated
- 2026-11-04
OSVDEBIAN-CVE-2026-58496
4.3
Thor Vector Graphics (ThorVG) is a production-ready vector graphics engine. Prior to 1.0.7, the SFNT/TTF font loader's SfntLoader::gen function in tvgSfntLoader.cpp reads data[0] through data[3] to identify the font type without first checking that the input buffer contains at least four bytes. Loading an undersized font directly from memory through public APIs such as tvg::Text::load causes an out-of-bounds read. Loading through a file path using mmap can mask the read because of page alignment; the memory-loading API directly exposes it. Depending on memory layout, a malformed short font may crash the consuming application or disclose adjacent heap memory. This issue is fixed in version 1.0.7.
- Record
DEBIAN-CVE-2026-58496- CVSS 3.1
- 4.3 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:N/A:N - Updated
- 2026-11-03
OSVUBUNTU-CVE-2026-58496
4.3
Thor Vector Graphics (ThorVG) is a production-ready vector graphics engine. Prior to 1.0.7, the SFNT/TTF font loader's SfntLoader::gen function in tvgSfntLoader.cpp reads data[0] through data[3] to identify the font type without first checking that the input buffer contains at least four bytes. Loading an undersized font directly from memory through public APIs such as tvg::Text::load causes an out-of-bounds read. Loading through a file path using mmap can mask the read because of page alignment; the memory-loading API directly exposes it. Depending on memory layout, a malformed short font may crash the consuming application or disclose adjacent heap memory. This issue is fixed in version 1.0.7.
- Record
UBUNTU-CVE-2026-58496- CVSS 3.1
- 4.3 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:N/A:N - Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
thorvgDebian:14 |
All versions, plus listed versions 1.0.2+dfsg-11.0.3+dfsg-11.0.3+dfsg-21.0.3+dfsg-31.0.3+dfsg2-1 Show 4 moreShow less1.0.3+dfsg2-21.0.3+dfsg2-31.0.3+dfsg2-41.0.6+dfsg-1 |
None known |
thorvgUbuntu:26.10 |
All versions, plus listed versions 1.0.3+dfsg2-41.0.6+dfsg-1 |
None known |
History
| Recorded | Changed | Sources |
|---|---|---|
| facts | EUVD, NVD, OSV | |
| references | CVE List | |
| first indexed | CVE List, EUVD, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2026-58496 is a medium vulnerability (CVSS 4.3) in Thorvg, published October 27, 2026. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.21%, the 11th percentile. No source names a fixed version.
References
github.com/thorvg/thorvg/security/advisories/GHSA-crfw-c34f-vqrj
github.com/thorvg/thorvg/commit/1dc232a33535946b5eed5fd65e993b13226da0ca
github.com/thorvg/thorvg/releases/tag/v1.0.7
github.com/CVEProject/cvelistV5/tree/main/cves/2026/58xxx/CVE-2026-58496.json
nvd.nist.gov/vuln/detail/CVE-2026-58496
security-tracker.debian.org/tracker/CVE-2026-58496
ubuntu.com/security/CVE-2026-58496
cve.org/CVERecord?id=CVE-2026-58496