Description
@offactory/compress-fonts before 1.1.1 contains an OS command injection vulnerability that allows attackers to execute shell commands by supplying font files with crafted names. Font paths are interpolated unquoted into a FontForge command run through child_process.execSync, so shell metacharacters in file names execute commands with the Node.js process privileges.
Published: 2026-10-14
Score: 8.5 High
EPSS: 1.1% Low
KEV: No
Impact: OS Command Injection
Action: Apply Patch
AI Analysis

Impact

The vulnerability is an OS command injection (CWE‑78) that occurs when font file names containing shell metacharacters are passed unquoted into a FontForge command executed by child_process.execSync. This allows an attacker to run arbitrary shell commands with the privileges of the Node.js process, leading to full compromise of confidentiality, integrity, and availability.

Affected Systems

The affected product is compress‑fonts maintained by adamarcanov. Any release before version 1.1.1 is vulnerable; deployments that use these older releases and that process user‑supplied font files without sanitizing names are at risk.

Risk and Exploitability

Based on the description, the likely attack vector is a scenario in which an attacker can provide a crafted font file name to the application—for example, by uploading a font during an asset upload workflow or by embedding a malicious font in a build pipeline. When the application invokes FontForge through child_process.execSync, the unescaped file path causes the shell to interpret the embedded metacharacters, allowing the attacker’s commands to execute. The CVSS score of 8.5 indicates high severity, the EPSS score of 1% reflects a low but non‑zero probability of exploitation, and the vulnerability is not listed in the CISA KEV catalogue.

Generated by OpenCVE AI on October 15, 2026 at 20:55 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade compress‑fonts to version 1.1.1 or later.
  • If an upgrade is not immediately possible, reject or sanitize font file names by stripping shell metacharacters before passing to execSync.
  • Prefer using child_process.execFile or spawn instead of execSync, or update the code to properly quote the file path.

Generated by OpenCVE AI on October 15, 2026 at 20:55 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Mon, 19 Oct 2026 13:30:00 +0000

Type Values Removed Values Added
First Time appeared Adamarcanov
Adamarcanov compress-fonts
Vendors & Products Adamarcanov
Adamarcanov compress-fonts

Fri, 16 Oct 2026 18:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'total'}, 'version': '2.0.3'}


Wed, 14 Oct 2026 14:30:00 +0000

Type Values Removed Values Added
Description @offactory/compress-fonts before 1.1.1 contains an OS command injection vulnerability that allows attackers to execute shell commands by supplying font files with crafted names. Font paths are interpolated unquoted into a FontForge command run through child_process.execSync, so shell metacharacters in file names execute commands with the Node.js process privileges.
Title @offactory/compress-fonts before 1.1.1 OS Command Injection via Font File Names
Weaknesses CWE-78
References
Metrics cvssV3_1

{'score': 7.8, 'vector': 'CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H'}

cvssV4_0

{'score': 8.5, 'vector': 'CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:P/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N'}


Subscriptions

Adamarcanov Compress-fonts
cve-icon MITRE

Status: PUBLISHED

Assigner: VulnCheck

Published:

Updated: 2026-10-16T17:15:41.334Z

Reserved: 2026-10-14T13:07:36.038Z

Link: CVE-2026-110648

cve-icon Vulnrichment

Updated: 2026-10-16T16:35:45.958Z

cve-icon NVD

Status : Deferred

Published: 2026-10-14T15:17:18.510

Modified: 2026-10-16T19:03:18.127

Link: CVE-2026-110648

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-10-19T13:08:05Z

Weaknesses
  • CWE-78

    Improper Neutralization of Special Elements used in an OS Command ('OS Command Injection')