@greenlake/session@2.0.0
Malicious code in @greenlake/session (npm)
Analysis
This package is a dependency-confusion implant published under a scoped name, presenting itself as a "Compatibility shim". Its package.json declares a postinstall hook that runs beacon.cjs, and index.js additionally calls the same beacon when the module is imported, so the callback fires both at install time and on first require. beacon.cjs sends an HTTP POST to hxxp://185[.]158[.]107[.]175:8787/_ah/dc carrying a JSON body with the package name, the machine hostname, the install path (__dirname), the current working directory, the npm/node user agent and the protocol, tagged with an x-beacon-package header. index.js exports a Proxy that returns no-op functions for every property access so that a build importing the name completes instead of crashing, keeping the host silent about the substitution. The callback endpoint is a bare IP literal with no TLS.
- analyzed by
- Leitwacht
- first seen
- Oct 26, 2026, 12:38 AM
- analyzed
- Oct 26, 2026, 12:39 AM
Related advisories
- @greenlake/session@3.0.0 same package
- @greenlake/common-context@3.0.0
- birch-css-utils@1.3.0
- pdf2epub@0.1.9
- pdf2epub@0.1.12
- pdf2epub@0.1.10
- mocha-ui-themes@1.0.0
- item-validates@1.0.0
Independently detected by the Leitwacht supply-chain probe. IOCs are defanged. Published CC0. Think this is a mistake? See the dispute policy.