Supply-chain threat intelligence

Incident detail

criticalnpm·credential theft·osv

Malicious code in motion-pull (npm)

motion-pull

Risk score

92

AI summary

Indexed incident for motion-pull (npm).

Description

motion-pull@2.3.5 impersonates the pino logger (exports module.exports.pino = middleware, uses logger-themed keywords, ships a ./pino require target). When the exported function is invoked, index.js spawns a detached node child running lib/initializeCaller.js. That script base64-decodes a hardcoded URL (https://ipcheck-hashed.vercel.app/api/auth/6c1d60d35852ef0c05df), POSTs the entire process.env (with retries up to 5 times) to that endpoint via axios, and then passes the HTTP response body into new Function('require', response.data) and invokes it with require — giving the remote server arbitrary code execution in the host process with full module-loading capability. Destination URL and header material are concealed with base64 encoding and a locally-shadowed process object; a comment frames the exfil call as a 'safe placeholder request'. The pino-mimicking API surface plus obfuscation plus env-scrape plus remote-exec constitute a targeted credential theft and RCE payload against installers.

Technical details

Affected versions

=2.3.5

Indicators

  • affected version=2.3.575%

Timeline

  1. Advisory published
  2. Indexed by ThreatPkg

Related incidents