Advisory Database
  • Advisories
  • Dependency Scanning
  1. npm
  2. ›
  3. pug
  4. ›
  5. CVE-2021-21353

CVE-2021-21353: Remote code execution via the `pretty` option.

March 3, 2021 (updated April 16, 2025)

If a remote attacker was able to control the pretty option of the pug compiler, e.g. if you spread a user provided object such as the query parameters of a request into the pug template inputs, it was possible for them to achieve remote code execution on the node.js backend.

References

  • github.com/advisories/GHSA-p493-635q-r6gr
  • github.com/pugjs/pug/commit/991e78f7c4220b2f8da042877c6f0ef5a4683be0
  • github.com/pugjs/pug/issues/3312
  • github.com/pugjs/pug/pull/3314
  • github.com/pugjs/pug/releases/tag/pug%403.0.1
  • github.com/pugjs/pug/security/advisories/GHSA-p493-635q-r6gr
  • nvd.nist.gov/vuln/detail/CVE-2021-21353
  • www.npmjs.com/package/pug
  • www.npmjs.com/package/pug-code-gen

Code Behaviors & Features

Detect and mitigate CVE-2021-21353 with GitLab Dependency Scanning

Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Dependency Scanning using SBOM also detects vulnerabilities from proprietary advisories that this site does not include. Learn more about Dependency Scanning using SBOM →

Affected versions

All versions before 3.0.1

Fixed versions

  • 3.0.1

Solution

Upgrade to version 3.0.1 or above.

Impact 9 CRITICAL

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

Learn more about CVSS

Weakness

  • CWE-74: Improper Neutralization of Special Elements in Output Used by a Downstream Component ('Injection')

Source file

npm/pug/CVE-2021-21353.yml

Spotted a mistake? Edit the file on GitLab.

  • Site Repo
  • About GitLab
  • Terms
  • Privacy Statement
  • Contact

Page generated Sun, 08 Nov 2026 00:15:24 +0000.