npm package intelligence

dotenv — deep security report

ShadowCanopy's full breakdown of dotenv on npm: verdict, AI analysis, dependency chain, network behavior, prebuilds, and obfuscated code.

Safe to use
Deep-scanned by ShadowCanopy — no threats found in its code, dependencies, or network behavior.
Scanned 8/7/2026
Approveddotenv@17.4.2View on registry ↗latest: 17.4.2

The flagged patterns are legitimate: ANSI escapes implement terminal dimming in dim(), base64+decrypt implements AES-GCM decryption of .env.vault secrets (standard dotenvx feature), and LINE.exec is regex matching for .env parsing, not child_process execution. No malicious sinks or exfiltration present.

Protect your projects free

AI breakdown

Plain-English summary of what this package does and how it behaves.

Package loads environment variables from .env file. Main entry point is lib/main.js with no runtime dependencies listed.

Capabilities

  • Loads environment variables from .env file
  • Runs lint, type-check and test scripts via npm

Data access

  • Filesystem (.env files)
  • Environment variables

Network

  • No network access observed

Standard dotenv behavior with no dependencies or install scripts. Static findings report obfuscated source files and decoded payload execution that warrant code review before use.

Security findings (4)

Static analysis rule matches, with the exact code that triggered them.

mediumObfuscated source fileATK-023lib/main.js

Multiple obfuscation patterns in lib/main.js

mediumObfuscated source fileATK-023package/lib/main.js

Multiple obfuscation patterns in package/lib/main.js

highDecoded payload executedATK-026lib/main.js

File lib/main.js decodes a base64/hex blob and passes it to an execution sink — a common way to hide a malicious payload.

highDecoded payload executedATK-026package/lib/main.js

File package/lib/main.js decodes a base64/hex blob and passes it to an execution sink — a common way to hide a malicious payload.

Package metadata

LicenseBSD-2-Clause

Loads environment variables from .env file

Homepage ↗Repository ↗

Files in package (28)

LICENSEpackage/LICENSElib/cli-options.jspackage/lib/cli-options.jsconfig.jspackage/config.jslib/env-options.jspackage/lib/env-options.jslib/main.jspackage/lib/main.jspackage.jsonpackage/package.jsonCHANGELOG.mdpackage/CHANGELOG.mdREADME-es.mdpackage/README-es.mdREADME.mdpackage/README.mdSECURITY.mdpackage/SECURITY.mdskills/dotenv/SKILL.mdpackage/skills/dotenv/SKILL.mdskills/dotenvx/SKILL.mdpackage/skills/dotenvx/SKILL.mdconfig.d.tspackage/config.d.tslib/main.d.tspackage/lib/main.d.ts

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.

Protect your projects freeSee what's being blocked

This report reflects ShadowCanopy's threat intelligence at page load and is informational, not a warranty. Canonical URL: https://shadowcanopy.dev/packages/npm/dotenv