← Vulnerability feed

Vulnerability record · CVE-2021-32819 · published 14 May 2021

CVE-2021-32819: Squirrelly template engine config overwrite leads to RCE

Squirrelly · Squirrelly

Squirrelly, a JavaScript template engine used with ExpressJS, mixes pure template data with engine configuration options through the Express render API. An attacker who can supply template data can overwrite internal configuration options, which can trigger remote code execution in downstream applications. The flaw is fixed in version 9.0.0.

8.8 CVSS 3.1 High EPSS 58% · top 0.9% CWE-200 · Information exposure
8.8CVSS 3.1 base score, v2 6.8
58%EPSS exploitation probability, 30 days
NoNot in CISA KEV
1Affected product versions listed by NVD
8References, 2 tagged exploit
17 Jun 2026Last modified by NVD

Description

Squirrelly is a template engine implemented in JavaScript that works out of the box with ExpressJS. Squirrelly mixes pure template data with engine configuration options through the Express render API. By overwriting internal configuration options remote code execution may be triggered in downstream applications. This issue is fixed in version 9.0.0. For complete details refer to the referenced GHSL-2021-023.

CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H

Automated analysis

Generated by VULONE's analysis model from the NVD record, CISA KEV and EPSS data on 19 September 2026. Confidence: medium.

high priorityCVSS 8.8 with high EPSS and a public exploit advisory, though exploitation requires user interaction and no KEV listing.

What it is

Squirrelly, a JavaScript template engine used with ExpressJS, mixes pure template data with engine configuration options through the Express render API. An attacker who can supply template data can overwrite internal configuration options, which can trigger remote code execution in downstream applications. The flaw is fixed in version 9.0.0.

Impact

An attacker gains remote code execution in the context of the affected Node.js application, allowing arbitrary code execution, data theft, or full host compromise.

Attack surface

Reached over the network through the Express render API when untrusted template data is passed into Squirrelly; the CVSS vector indicates no privileges are required but user interaction is required (UI:R).

Exploitation

Not listed in CISA KEV, but EPSS is high (0.583, 99th percentile) and the GitHub Security Lab advisory is tagged Exploit, indicating public exploit detail exists.

What to do

  • Upgrade Squirrelly to version 9.0.0 or later.
  • Do not pass untrusted user input as template data or configuration to the Express render API.
  • Sanitize or strictly validate any data reaching template rendering paths.
  • Isolate Node.js services that render templates with least privilege and network restrictions.

Detection

  • Monitor application logs for unexpected template rendering errors or configuration changes.
  • Audit code paths where user input reaches Squirrelly render calls.
  • Watch for anomalous child process or shell execution spawned by Node.js processes.
  • Track dependency versions to confirm Squirrelly is at or above 9.0.0.

This assessment is produced automatically and is not human-reviewed. Verify against the vendor advisory before acting on it.

Affected products

1 vulnerable configurations from NVD's CPE data, grouped by vendor and product.

References

Track CVE-2021-32819 inside VULONE

Watch it alongside the ransomware crews, C2 infrastructure and forum chatter that reference it, query it through the API and pull it into your SIEM over TAXII.

Start free Open in platform

Related vulnerabilities

Same products first, then exploited flaws of the same weakness class.

9.8CVE-2024-40453Squirrelly code injection vulnerabilitysquirrellyjs squirrelly v9.0.0 and fixed in v.9.0.1 was discovered to contain a code injection vulnerability via the component options.varName.EPSS 1.1%5.9CVE-2025-68686FortiOS symbolic link patch bypass exposes sensitive informationFortiOS contains an information exposure flaw (CWE-200) that lets a remote unauthenticated attacker bypass the patch for the symbolic link persistenc…KEVEPSS 30%analysed7.5CVE-2026-20133Cisco Catalyst SD-WAN Manager insufficient file system restrictions expose dataCisco Catalyst SD-WAN Software has insufficient file system restrictions that let an attacker read sensitive files on the underlying operating system…KEVEPSS 32%analysed7.5CVE-2025-31125Vite dev server improper access control exposes arbitrary filesVite's dev server fails to restrict file access when a request uses the ?inline&import or ?raw?import query patterns, allowing content of files that …KEVEPSS 65%analysed5.5CVE-2026-20805Windows Desktop Window Manager information disclosureDesktop Windows Manager (DWM) in Microsoft Windows exposes sensitive information to an unauthorized actor, allowing a local attacker with existing ac…KEVEPSS 7.2%analysed7.5CVE-2021-41277Metabase custom GeoJSON map feature allows local file inclusionMetabase does not validate URLs supplied through the custom GeoJSON map setting (admin->settings->maps->custom maps->add a map) before loading them. …KEVEPSS 97%analysed8.6CVE-2024-24919Check Point Security Gateway information disclosure via remote access VPNCheck Point Security Gateways with Remote Access VPN or Mobile Access Software Blades enabled expose information to an unauthenticated attacker reach…KEVEPSS 100%analysed5.5CVE-2023-21237Android notification UI flaw hides foreground service alertsIn applyRemoteView of NotificationContentInflater.java, Android 13 mishandles notification UI so a foreground service notification can be hidden. The…KEVEPSS 0.27%analysed

Source: NIST National Vulnerability Database (record CVE-2021-32819), CISA KEV, FIRST EPSS (scores of 2026-09-26). This page is refreshed as NVD updates the record.