Prettier 3.9.6. All findings are false positives from emoji/Unicode regexes, minified plugin code, and legitimate atob usage in CLI helpers. No malicious behavior.
AI breakdown
Plain-English summary of what this package does and how it behaves.
Prettier is an opinionated code formatter for source code. It provides a CLI binary and main module along with language-specific plugins for parsing and formatting.
Capabilities
- Provides CLI via bin/prettier.cjs
- Supports formatting for JS, HTML, CSS, Markdown, YAML, GraphQL and other languages via plugins
- Includes standalone and ESM module builds
Data access
- Filesystem
Network
- No network access observed
Standard Prettier distribution with zero dependencies; static findings reference obfuscation and network artifacts but are not evidenced in the manifest or package structure.
Obfuscated / hidden code
Encoded payloads decoded statically (without executing them) so you can see what they resolve to.
Multiple obfuscation patterns in index.cjs
Multiple obfuscation patterns in package/index.cjs
Multiple obfuscation patterns in plugins/acorn.js
Multiple obfuscation patterns in package/plugins/acorn.js
Multiple obfuscation patterns in doc.js
Multiple obfuscation patterns in package/doc.js
Multiple obfuscation patterns in plugins/estree.js
Multiple obfuscation patterns in package/plugins/estree.js
Multiple obfuscation patterns in plugins/markdown.js
Multiple obfuscation patterns in package/plugins/markdown.js
Multiple obfuscation patterns in standalone.js
Multiple obfuscation patterns in package/standalone.js
Multiple obfuscation patterns in plugins/acorn.mjs
Multiple obfuscation patterns in package/plugins/acorn.mjs
Multiple obfuscation patterns in doc.mjs
Multiple obfuscation patterns in package/doc.mjs
Multiple obfuscation patterns in plugins/estree.mjs
Multiple obfuscation patterns in package/plugins/estree.mjs
Multiple obfuscation patterns in internal/experimental-cli.mjs
Multiple obfuscation patterns in package/internal/experimental-cli.mjs
Multiple obfuscation patterns in plugins/markdown.mjs
Multiple obfuscation patterns in package/plugins/markdown.mjs
Multiple obfuscation patterns in standalone.mjs
Multiple obfuscation patterns in package/standalone.mjs
File internal/experimental-cli.mjs decodes a base64/hex blob and passes it to an execution sink — a common way to hide a malicious payload.
File package/internal/experimental-cli.mjs decodes a base64/hex blob and passes it to an execution sink — a common way to hide a malicious payload.
Security findings (70)
Static analysis rule matches, with the exact code that triggered them.
Multiple obfuscation patterns in index.cjs
Multiple obfuscation patterns in package/index.cjs
Multiple obfuscation patterns in plugins/acorn.js
Multiple obfuscation patterns in package/plugins/acorn.js
Multiple obfuscation patterns in plugins/angular.js
Multiple obfuscation patterns in package/plugins/angular.js
Multiple obfuscation patterns in plugins/babel.js
Multiple obfuscation patterns in package/plugins/babel.js
Multiple obfuscation patterns in doc.js
Multiple obfuscation patterns in package/doc.js
Multiple obfuscation patterns in plugins/estree.js
Multiple obfuscation patterns in package/plugins/estree.js
Multiple obfuscation patterns in plugins/glimmer.js
Multiple obfuscation patterns in package/plugins/glimmer.js
Multiple obfuscation patterns in plugins/html.js
Multiple obfuscation patterns in package/plugins/html.js
Multiple obfuscation patterns in plugins/markdown.js
Multiple obfuscation patterns in package/plugins/markdown.js
Multiple obfuscation patterns in plugins/postcss.js
Multiple obfuscation patterns in package/plugins/postcss.js
Multiple obfuscation patterns in standalone.js
Multiple obfuscation patterns in package/standalone.js
Multiple obfuscation patterns in plugins/yaml.js
Multiple obfuscation patterns in package/plugins/yaml.js
Multiple obfuscation patterns in plugins/acorn.mjs
Multiple obfuscation patterns in package/plugins/acorn.mjs
Multiple obfuscation patterns in plugins/angular.mjs
Multiple obfuscation patterns in package/plugins/angular.mjs
Multiple obfuscation patterns in plugins/babel.mjs
Multiple obfuscation patterns in package/plugins/babel.mjs
Multiple obfuscation patterns in doc.mjs
Multiple obfuscation patterns in package/doc.mjs
Multiple obfuscation patterns in plugins/estree.mjs
Multiple obfuscation patterns in package/plugins/estree.mjs
Multiple obfuscation patterns in internal/experimental-cli-worker.mjs
Multiple obfuscation patterns in package/internal/experimental-cli-worker.mjs
Multiple obfuscation patterns in internal/experimental-cli.mjs
Multiple obfuscation patterns in package/internal/experimental-cli.mjs
Multiple obfuscation patterns in plugins/glimmer.mjs
Multiple obfuscation patterns in package/plugins/glimmer.mjs
Multiple obfuscation patterns in plugins/html.mjs
Multiple obfuscation patterns in package/plugins/html.mjs
Multiple obfuscation patterns in internal/legacy-cli.mjs
Multiple obfuscation patterns in package/internal/legacy-cli.mjs
Multiple obfuscation patterns in plugins/markdown.mjs
Multiple obfuscation patterns in package/plugins/markdown.mjs
Multiple obfuscation patterns in plugins/postcss.mjs
Multiple obfuscation patterns in package/plugins/postcss.mjs
Multiple obfuscation patterns in standalone.mjs
Multiple obfuscation patterns in package/standalone.mjs
Multiple obfuscation patterns in plugins/yaml.mjs
Multiple obfuscation patterns in package/plugins/yaml.mjs
File plugins/babel.js contains a hardcoded public IP (5:8201:17) used in network code — review for hidden exfiltration or C2 endpoints.
File package/plugins/babel.js contains a hardcoded public IP (5:8201:17) used in network code — review for hidden exfiltration or C2 endpoints.
File plugins/estree.js contains a hardcoded public IP (D:d:D) used in network code — review for hidden exfiltration or C2 endpoints.
File package/plugins/estree.js contains a hardcoded public IP (D:d:D) used in network code — review for hidden exfiltration or C2 endpoints.
File plugins/meriyah.js contains a hardcoded public IP (32:16:e) used in network code — review for hidden exfiltration or C2 endpoints.
File package/plugins/meriyah.js contains a hardcoded public IP (32:16:e) used in network code — review for hidden exfiltration or C2 endpoints.
File plugins/yaml.js decodes a base64/hex blob and passes it to an execution sink — a common way to hide a malicious payload.
File package/plugins/yaml.js decodes a base64/hex blob and passes it to an execution sink — a common way to hide a malicious payload.
File plugins/babel.mjs contains a hardcoded public IP (5:8201:17) used in network code — review for hidden exfiltration or C2 endpoints.
File package/plugins/babel.mjs contains a hardcoded public IP (5:8201:17) used in network code — review for hidden exfiltration or C2 endpoints.
File plugins/estree.mjs contains a hardcoded public IP (D:d:D) used in network code — review for hidden exfiltration or C2 endpoints.
File package/plugins/estree.mjs contains a hardcoded public IP (D:d:D) used in network code — review for hidden exfiltration or C2 endpoints.
File internal/experimental-cli.mjs decodes a base64/hex blob and passes it to an execution sink — a common way to hide a malicious payload.
File package/internal/experimental-cli.mjs decodes a base64/hex blob and passes it to an execution sink — a common way to hide a malicious payload.
File plugins/meriyah.mjs contains a hardcoded public IP (32:16:e) used in network code — review for hidden exfiltration or C2 endpoints.
File package/plugins/meriyah.mjs contains a hardcoded public IP (32:16:e) used in network code — review for hidden exfiltration or C2 endpoints.
File plugins/yaml.mjs decodes a base64/hex blob and passes it to an execution sink — a common way to hide a malicious payload.
File package/plugins/yaml.mjs decodes a base64/hex blob and passes it to an execution sink — a common way to hide a malicious payload.
Files in package (102)
How ShadowCanopy checks npm packages
ShadowCanopy blocks every dependency by default and only lets through what it can verify — against live malicious-package advisories, an AI behavior scan, and a byte-for-byte hash check. It protects installs across npm, PyPI, crates.io, pkg.go.dev, RubyGems, Maven Central, NuGet, Packagist, Hex, pub.dev, Swift Package Manager.
This report reflects ShadowCanopy's threat intelligence at page load and is informational, not a warranty. Canonical URL: https://shadowcanopy.dev/packages/npm/prettier