Skip to main content

HarfBuzz EUVDEUVD-2026-105096

| CVE-2026-113680 MEDIUM
NULL Pointer Dereference (CWE-476)
2026-10-20 VulnCheck GHSA-2fqx-2h7j-c7gq
6.8
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Craft font embedding malicious wasm module
  2. Delivery
    Deliver font to wasm-shaper-enabled application
  3. Exploit
    Wasm import passes out-of-range address with non-zero length
  4. Execution
    Trigger NULL pointer dereference during shaping
  5. Impact
    Crash text-shaping application (DoS)

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A10:2025 - Mishandling of Exceptional Conditions
ASVS 5.0
V16 - Security Logging and Error Handling Null pointer safety, defensive checks
MITRE ATT&CK

1 technique across 1 tactic: Impact

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitation requires the target application to be built with HarfBuzz's EXPERIMENTAL WebAssembly shaper (the HB_WASM host-import path exercising buffer_set_contents, face_create, or font_set_coords) - this feature is not enabled in default builds, which is the dominant limiting factor. A victim must then actively shape text with an attacker-supplied, crafted font whose embedded wasm module passes out-of-range addresses with non-zero lengths (UI:P - passive user interaction opening/rendering the font). Local vector (AV:L) means the malicious font must reach a context where it is processed. Impact is confined to a crash (availability only); there is no code execution, data disclosure, or integrity impact.

Impact

This is a genuinely medium-severity, low-priority issue rather than an urgent one, and the signals are internally consistent. The CVSS 4.0 vector (AV:L/AC:L/PR:N/UI:P/VC:N/VI:N/VA:H) scores 6.8 and limits impact to availability only - a crash - with no confidentiality or integrity consequence, which matches CWE-476 (NULL pointer dereference) and the description's statement that the result is 'crashing any application that shapes text.' The attack vector is Local with passive user interaction required: a victim must shape text with an attacker-supplied font. The single most important risk-reducing factor is not captured in the CVSS score at all - the vulnerable code paths (buffer_set_contents, face_create, font_set_coords) live in HarfBuzz's EXPERIMENTAL WebAssembly shaper, which is not compiled or enabled in default builds and is absent from essentially all mainstream downstream deployments (browsers, Android, GNOME). No EPSS score, no CISA KEV listing, and no public exploit were provided in the input, so per the data this is 'no public exploit identified at time of analysis.' Net: a real but low-urgency DoS-only bug whose true exploitable population is far smaller than HarfBuzz's overall footprint would suggest.

Exploit ScenarioDerived

An attacker crafts a font file containing an embedded WebAssembly module that calls a host import (e.g. buffer_set_contents or face_create) with an out-of-range memory address and a non-zero length. When a victim application built with HarfBuzz's experimental wasm shaper loads and shapes text using that font, the invalid pointer is dereferenced and the application crashes. No public exploit code or active exploitation is indicated in the provided data; impact is limited to denial of service.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.1% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 20, 2026

NULL pointer dereference in HarfBuzz 8.0.0 through 14.6.0 lets a crafted font crash any application that shapes text with it, but only when the library is built with the experimental WebAssembly shaper enabled - a non-default compile-time option. An unauthenticated attacker supplies a malicious font whose embedded wasm module passes out-of-range addresses with non-zero lengths into the buffer_set_contents, face_create, or font_set_coords host imports, and the resulting crash yields availability-only impact (CVSS 3.1 base 6.8, AV:L/AC:L/PR:N/UI:R/A:H). No public exploit code and no confirmed active exploitation were identified at time of analysis, and the dominant risk limiter remains that default HarfBuzz builds never exercise the vulnerable code path.

RemediationAI

Vendor patch status: upstream fix available (PR/commit); a released patched version is not independently confirmed from the provided data. Apply upstream commit a71aa86c2bac114fafb6b47f8da02024ecb44fa6 (PR https://github.com/harfbuzz/harfbuzz/pull/6414), which adds NULL guards to buffer_set_contents, face_create, font_set_coords, font_get_glyph_extents, and font_copy_glyph_outline and corrects the font_glyph_to_string symbol signature; if you consume HarfBuzz from a distribution, track the distro's backport of that commit rather than assuming a version-number threshold. Where patching is delayed, the highest-value control is to rebuild without the experimental WebAssembly shaper (omit the wasm-shaping configure/build option); the trade-off is loss of wasm-based custom shaping, which is acceptable for virtually all deployments since the feature is experimental. Additionally, shape untrusted or user-uploaded fonts inside a sandboxed worker or subprocess with memory/CPU limits so that a NULL dereference terminates only the isolated process rather than the host application - this is a containment measure, not a fix, and adds per-render process overhead. Applications that must support wasm shaper fonts should validate or strip embedded wasm modules from untrusted font files before shaping, at the cost of rejecting legitimate wasm-shaping fonts. No public exploit code was identified at time of analysis, and this CVE is not in CISA KEV, so remediation can be scheduled as routine maintenance rather than emergency response.

Affected VersionsENISA

harfbuzz 8.0.0 ≤14.6.0

Affected Packages

euvd harfbuzz no fix

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

HarfBuzz is the widely embedded OpenType shaping engine used by browsers, PDF renderers, office suites, and Linux desktop stacks. Since 8.0.0 it has shipped an experimental WebAssembly shaper in which a font can carry an embedded wasm module that HarfBuzz executes, calling back into the host through a set of native imports defined in src/hb-wasm-api-*.hh. Those imports translate wasm linear-memory addresses into native pointers via HB_ARRAY_APP2NATIVE / ptr_d, and the vulnerable build omitted validation that the translated pointer was non-NULL before dereferencing it. This is CWE-476 (NULL Pointer Dereference): when a module passes an out-of-range address together with a non-zero length, the translation fails and returns NULL, which is then used unchecked, faulting the host process. The upstream fix (PR 6414 / commit a71aa86c) adds explicit !info / !pos, !blob, !data, !our_coords and !s guards in buffer_set_contents, face_create, font_set_coords, font_get_glyph_extents, and font_copy_glyph_outline; it also corrects an inverted contour-count check in font_copy_glyph_outline and fixes the font_glyph_to_string native symbol signature from "(ii$*)" to "(iiii)". The CPE record cpe:2.3:a:harfbuzz:harfbuzz:* is wildcarded, so any HarfBuzz build should be version-checked rather than assumed unaffected; the vendor advisory scope is explicitly 8.0.0 through 14.6.0.

Know when Harfbuzz gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (VulnCheck) PRIMARY 6.8 MEDIUM
CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:P/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
vuln.today AI 5.5 MEDIUM

Crafted font processed locally gives AV:L with UI:R (victim must shape the font); no auth needed so PR:N; impact is a crash only, so C:N/I:N/A:H with S:U.

3.1 AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H
4.0 AV:L/AC:L/AT:N/PR:N/UI:P/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
Red Hat 5.5 MEDIUM

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Local
Attack Complexity
Low
Attack Requirements
None
Privileges Required
None
User Interaction
Passive
Vulnerable system: Confidentiality
None
Vulnerable system: Integrity
None
Vulnerable system: Availability
High
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

HarfBuzz from 8.0.0 through 14.6.0 contains a NULL pointer dereference vulnerability in the experimental WebAssembly shaper host imports buffer_set_contents, face_create, and font_set_coords. Attackers can supply a crafted font whose embedded wasm module passes out-of-range addresses with non-zero lengths, crashing any application that shapes text with the font.

Threat Intelligence Overview

EPSS Score
0.1%
Top 98% exploitable
Prevalence
Ubiquitous
HarfBuzz ships everywhere, but vulnerable experimental wasm shaper is non-default
Data Quality
5 sources
Confidence: Medium

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.1%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation· derived
None
System Exposure· derived
Small
Automatable· derived
No
Human Impact· derived
High

Priority Score

34
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +34
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

A null pointer dereference occurs when a program attempts to access memory through a pointer that has been set to NULL (address 0x0).

Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.

Vendor StatusVendor

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy