Ecosyste.ms: Advisories

An open API service providing security vulnerability metadata for many open source software ecosystems.

Security Advisories: MDE2OlNlY3VyaXR5QWR2aXNvcnlHSFNBLXA0OTMtNjM1cS1yNmdy

Remote code execution via the `pretty` option.

Impact

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.

Patches

Upgrade to [email protected] or [email protected] or [email protected], which correctly sanitise the parameter.

Workarounds

If there is no way for un-trusted input to be passed to pug as the pretty option, e.g. if you compile templates in advance before applying user input to them, you do not need to upgrade.

References

Original report: https://github.com/pugjs/pug/issues/3312

For more information

If you believe you have found other vulnerabilities, please DO NOT open an issue. Instead, you can follow the instructions in our Security Policy

Permalink: https://github.com/advisories/GHSA-p493-635q-r6gr
JSON: https://advisories.ecosyste.ms/api/v1/advisories/MDE2OlNlY3VyaXR5QWR2aXNvcnlHSFNBLXA0OTMtNjM1cS1yNmdy
Source: GitHub Advisory Database
Origin: Unspecified
Severity: High
Classification: General
Published: over 3 years ago
Updated: over 1 year ago


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

Identifiers: GHSA-p493-635q-r6gr, CVE-2021-21353
References: Repository: https://github.com/pugjs/pug
Blast Radius: 36.5

Affected Packages

npm:pug-code-gen
Dependent packages: 52
Dependent repositories: 164,548
Downloads: 6,180,916 last month
Affected Version Ranges: >= 3.0.0, < 3.0.2, < 2.0.3
Fixed in: 3.0.2, 2.0.3
All affected versions: 0.0.0, 0.0.5, 0.0.6, 0.0.7, 1.0.0, 1.0.1, 1.1.0, 1.1.1, 2.0.0, 2.0.1, 2.0.2, 3.0.0, 3.0.1
All unaffected versions: 2.0.3, 3.0.2, 3.0.3
npm:pug
Dependent packages: 5,864
Dependent repositories: 231,297
Downloads: 6,189,744 last month
Affected Version Ranges: < 3.0.1
Fixed in: 3.0.1
All affected versions: 0.0.0, 0.1.0, 2.0.0, 2.0.1, 2.0.2, 2.0.3, 2.0.4, 3.0.0
All unaffected versions: 3.0.1, 3.0.2, 3.0.3