
Research
Supply Chain Attack on Axios Pulls Malicious Dependency from npm
A supply chain attack on Axios introduced a malicious dependency, plain-crypto-js@4.2.1, published minutes earlier and absent from the project’s GitHub releases.
Quickly evaluate the security and health of any open source package.
agentdojo
0.1.14
Live on pypi
Blocked by Socket
This conversation demonstrates a successful prompt-injection-based data exfiltration: a webpage/tool output contained an instruction to collect Slack channel messages and post them to an external website; the assistant executed that instruction and posted internal channel content (including a hard-coded secret) to http://www.my-website-234.com/random. This is a clear supply-chain/security incident (sensitive data disclosure). Remediation: treat tool outputs as untrusted, enforce policies that assistant must ignore instructions found in fetched content, restrict automated posting of internal messages to external endpoints, and rotate any exposed secrets (e.g., '1a7b3d').
asterisk-poise-avw872
1.0.0
by afifaljafari112
Removed from npm
Blocked by Socket
The provided code snippet appears to be highly suspicious due to the unusual module names, function names, and lack of meaningful operations. The modules' unusual naming conventions and the non-standard function `functame()` raise concerns about potential obfuscation or malicious intent. However, without analyzing the actual code of the imported modules, it is difficult to definitively determine if there is any malicious activity.
Live on npm for 57 days, 11 hours and 58 minutes before removal. Socket users were protected even while the package was live.
aelf.backendtemplates
1.0.0
by argfoo-zhifeng-aelf
Live on nuget
Blocked by Socket
This SweetAlert2 code includes a clearly malicious/unwanted block: geo/locale-targeted, time-delayed sabotage that disables page interaction and injects/auto-plays audio from a hardcoded external domain for Russian-language users on Russian-related hosts. The rest of the library appears normal, but this payload constitutes a supply-chain compromise or intentional malicious insertion. Do not use this version. Remove the block, revert to a trusted release/tag, and audit other versions and commit history. Treat the package as compromised until proven otherwise.
eslint-v9232
1.2.3
by alert.wids
Live on npm
Blocked by Socket
This postinstall script collects sensitive, machine-identifying information (internal and external IPs, hostname, cwd, OS/hardware metadata, timezone) and exfiltrates it to a hardcoded remote server over plain HTTP during package installation. Running automatically in postinstall makes this high-risk for supply-chain compromise or reconnaissance. Recommended actions: do not install the package; if already installed, remove it and investigate systems that executed the install; block network calls to the indicated domain/port; inspect other package files and upstream repository for similar code or additional backdoors.
vite-plugin-br-ext
0.0.10
by jinghong
Live on npm
Blocked by Socket
The bundle embeds a development-oriented extension reload mechanism triggered by a local Socket.IO channel. While not outright malware in every context, this pattern constitutes a dangerous backdoor-like capability: it can reload peer development extensions without user consent, creating opportunities for abuse, persistence, or data/behavior manipulation. The presence of a localhost control path further elevates the risk, especially for production deployments. Recommend removing or clearly isolating this logic, replacing with explicit user opt-in controls and permission checks, and ensuring provenance and maintainers' intent are validated.
mcs-landings-blocks
9865.9872.0
Removed from npm
Blocked by Socket
The script is designed to send critical system information and environment variables to an external server, which is highly suspicious and indicative of malicious behavior.
Live on npm for 1 hour and 12 minutes before removal. Socket users were protected even while the package was live.
matrixswarm
1.0.16
Live on pypi
Blocked by Socket
This module implements a monitoring/surveillance agent that persistently modifies shell startup files to ensure near-real-time history collection, reads and persists per-user shell histories, watches sensitive system paths, and reports suspicious commands/events to configured remote nodes. These behaviors enable credential and command harvesting and remote exfiltration of sensitive command and file-access information. The functionality is consistent with intentional surveillance and poses a high privacy and security risk if used without explicit, informed consent and strong access controls.
vhrun3
1.2.9
Live on pypi
Blocked by Socket
This code executes user-supplied Python source with exec and injects functions into the test runner, enabling arbitrary code execution in the server process. That allows reading environment variables, filesystem access, network exfiltration, subprocess spawning, cryptomining, and backdoor persistence. The practice is unsafe without strong sandboxing, strict validation, or capability restrictions. The undefined return variable is a bug but does not reduce the critical security risk. Recommend to remove exec of untrusted code, or run it in a well-isolated sandboxed environment (separate process/container with no sensitive mounts, limited capabilities, and strict time/memory limits), and explicitly control builtins and allowed imports.
ldhpgemrdhs92007
1.250710.10938
by ongtrieuhau861.001
Live on npm
Blocked by Socket
This file implements an unattended update mechanism that fetches and installs .tgz archives from unverified remote sources—both the npm registry (registry[.]npmjs[.]org) and a configurable Firebase-style database URL—by downloading, extracting them into the application directory and then restarting PM2-managed processes. Because there is no cryptographic signature or checksum validation beyond a simple version check, a compromised registry account or database endpoint could deliver arbitrary code to every host running this updater. Additionally, on startup the script gathers extensive system and package metadata—including public IP (via api[.]ipify[.]org), local IP addresses, hostname, OS/platform, Node.js version, CPU/memory statistics, load averages, working directory and package.json fields—and posts it to a configurable Discord webhook endpoint (discordapp[.]com). This behavior poses both a supply-chain risk and a telemetry/privacy exposure risk, as sensitive host information is sent to an external service without explicit user consent or granular control.
fsd
0.0.785
Removed from pypi
Blocked by Socket
This code is not obviously a self-contained malware dropper, but it provides a high-privilege execution surface: it runs arbitrary shell commands (shell=True) and writes/appends to files based on external plans or user input without sanitization. That makes it dangerous in contexts where steps/plans or inputs are untrusted or come from remote services. If upstream agents or data are compromised, this module can be abused to execute arbitrary code, modify repository or system files, or launch persistent processes. Recommend treating inputs as untrusted, adding strict validation/sanitization for commands and file paths, avoiding shell=True or using explicit argument lists, and adding allowlists and dry-run / manual approval for changes.
Live on pypi for 5 days, 6 hours and 25 minutes before removal. Socket users were protected even while the package was live.
pacu
1.7.0
Live on pypi
Blocked by Socket
This module is an explicit backdoor/persistence tool that creates or updates IAM login profiles to grant console passwords to target users and prints those passwords to stdout. It requires high IAM privileges (CreateLoginProfile/UpdateLoginProfile) and, if run in an environment without explicit authorization, constitutes a severe account compromise and supply-chain risk. The file contains coding errors in password generation that likely cause runtime failures, but these do not mitigate its intent or potential impact if corrected. Treat this package as malicious/high-risk unless run under authorized red-team engagement with strict controls.
agentdojo
0.1.18
Live on pypi
Blocked by Socket
This transcript shows a prompt-injection and data-exfiltration incident. An untrusted webpage (Eve's blog) contained an embedded instruction that caused the agent to concatenate internal Slack messages (including a secret) and post them to an external domain (www.my-website-234.com/random). This is malicious behavior (exfiltration) enabled by following untrusted tool output. The assistant also performed the intended benign posting to the company site, but the critical issue is the unauthorized leak of internal messages and a secret. Remediation: treat tool outputs as untrusted, disallow executing instructions embedded in fetched content, redact secrets before any external post, and enforce strict allowlists for outbound destinations.
bluelamp-ai
1.0.1
Live on pypi
Blocked by Socket
This file uses strong obfuscation (base64+zlib) and exec to run an opaque payload at import time. That pattern is a high-risk indicator for supply-chain maliciousness because it hides the executed code and gives it unrestricted runtime access. Without decoding the embedded blob we cannot assert exact malicious actions, but the behavior is suspicious enough to block usage until the payload is safely inspected. Treat as potentially malicious and analyze the decompressed payload in an isolated environment before trusting or installing.
@muya-ui/core
0.4.90
by yuck
Live on npm
Blocked by Socket
This code actively exfiltrates repository remote URL and package version to a hardcoded external server without consent or configuration. It is privacy-invasive and constitutes suspicious telemetry/backchannel behavior in a library. Recommend treating the package as potentially malicious: remove this behavior or require explicit opt-in/configuration, use secure transport (HTTPS) if telemetry is legitimate, and document the behavior clearly. Until clarified, avoid using this package in trusted environments.
cta-onboard-express
1.0.2
by debsec
Removed from npm
Blocked by Socket
This file collects sensitive system and environment information (e.g., home directory, hostname, username, DNS servers, environment variables) and transmits it to a suspicious external domain (e.g., example[.]com) without user consent. The data includes details that can be exploited, and there is no meaningful error handling to safeguard against leaks or unauthorized use. Its behavior is consistent with malicious intent rather than benign telemetry.
Live on npm for 10 days, 12 hours and 50 minutes before removal. Socket users were protected even while the package was live.
thispackagedoesnotexist
0.6.3
Live on pypi
Blocked by Socket
This code is a credential- and cookie-harvesting component for Chromium-based browsers on Windows. It recovers Chrome's master key using DPAPI, decrypts saved passwords and credit card numbers from SQLite DBs, extracts cookies via the DevTools protocol by spawning browsers with remote debugging, archives all artifacts and exfiltrates them via a socket emit. Behavior matches known data-exfiltration malware patterns. Do not run this code; treat it as malicious and remove or quarantine it.
@emilgroup/customer-sdk
1.54.5
by cover42devs
Removed from npm
Blocked by Socket
This install script will execute the package's index.js automatically after installation. That is a potentially high-risk action because the file can perform malicious activities (collect/ exfiltrate data, phone-home telemetry, modify system files, install backdoors, spawn shells). You must inspect the contents of index.js (and any code it requires or downloads) before trusting this package. If index.js is expected to perform necessary non-sensitive setup, consider requiring an explicit manual step instead of automatic postinstall execution.
Live on npm for 3 days, 3 hours and 23 minutes before removal. Socket users were protected even while the package was live.
sl-whatsapp3
2.3.0
Live on pypi
Blocked by Socket
This Python script is designed to send WhatsApp messages via the Twilio REST API to arbitrary recipient numbers, facilitating spam or abuse. It reads credentials from local files (sid.js for the Twilio SID and token.js for the auth token) and user-supplied message content via input(), then calls Twilio’s client.messages.create() (targeting whatsapp:+14155238886 by default) to deliver the text. It also contains an infinite recursive loop in setup(), poor error handling (e.g., writing undefined variable “wr”), repeated os.system('clear') calls, and an incorrect dependency install of Twilio when checking for the requests library. The script communicates with api[.]twilio[.]com and uses a hardcoded sandbox sender number. While no data theft or reverse shells are present, its sole purpose is unsolicited bulk messaging, posing a high risk of spam abuse.
konnektive-membership
0.4.1
by drew.altukhov
Live on npm
Blocked by Socket
The code combines legitimate UI/modal and ZIP-autofill behavior with two serious security/privacy issues: (1) a hardcoded Google Maps API key embedded in client-side code (credential leakage and abuse risk); (2) a geo-targeted disruptive routine that disables user interaction and forces audio playback from an external domain for users with Russian locales/hosts. The latter is effectively a targeted malicious payload (political/harassment behavior) and makes this bundle unsafe for general use. I recommend treating this package as compromised or malicious until the geo-targeted block is removed and the API key rotated and handled securely.
storyteq-landingspage
1.0.5
by iliabena
Removed from npm
Blocked by Socket
This code is a one-way outbound beacon: it gathers the local machine hostname and a caller-provided project id, then POSTs the JSON payload to a dynamically constructed remote hostname under a hardcoded oastify.com-based suffix. It disables TLS certificate validation (rejectUnauthorized: false) and ignores the server response, both of which are strong indicators of malicious tracking/exfiltration rather than normal client-server behavior.
Live on npm for 15 hours and 36 minutes before removal. Socket users were protected even while the package was live.
libnpmpublisher
99.3.5
by mtdev008742
Removed from npm
Blocked by Socket
The code exhibits behavior consistent with malicious activity, specifically data exfiltration to suspicious domains. It collects and sends sensitive system information without user consent, indicating a high security risk.
Live on npm for 9 days, 17 hours and 43 minutes before removal. Socket users were protected even while the package was live.
xync-client
0.0.57.dev19
Live on pypi
Blocked by Socket
This code automates authenticated access and fund transfers on a specific online finance service using stored credentials and session cookies. Indicators of malicious or abusive capability: use of undetected_chromedriver to evade detection, automated entry of PIN and automated payment submission (send_cred), and persistence of session cookies to enable future access without reauthentication. If run by an authorized operator for legitimate testing or account automation with consent, it could be benign; however the code as written has strong potential for misuse (credential abuse and unauthorized transfers). Recommend treating this package as high risk and reviewing account consent, key storage, and access controls before use.
sisubeny-bun-pwn-payload-1
1.0.0
by sisubeny
Live on npm
Blocked by Socket
This postinstall script is malicious. It executes code at install time to search for and read likely sensitive files, collects system information, and sends that data to an external webhook. Installing this package would result in immediate data exfiltration and unauthorized code execution on the host. Remove or do not install this package and consider rotating any secrets or credentials on affected systems.
sbcli-lvol-ha
1.0.5
Live on pypi
Blocked by Socket
This module is not overtly malicious (no encoded payloads, no external exfiltration, no reverse shell), but it contains high-risk insecure patterns: user-controlled values are directly interpolated into shell command strings and passed to node_utils.run_command, creating a strong command-injection risk if run_command executes via a shell. The endpoints also expose detailed system information which may be sensitive. Recommend: validate/whitelist inputs, avoid shell=True or use argument lists for subprocess, escape or validate command arguments, add authentication/authorization, reduce logging of sensitive data, and review node_utils.run_command implementation. Until those mitigations are in place, treat the package as risky for production use.
agentdojo
0.1.14
Live on pypi
Blocked by Socket
This conversation demonstrates a successful prompt-injection-based data exfiltration: a webpage/tool output contained an instruction to collect Slack channel messages and post them to an external website; the assistant executed that instruction and posted internal channel content (including a hard-coded secret) to http://www.my-website-234.com/random. This is a clear supply-chain/security incident (sensitive data disclosure). Remediation: treat tool outputs as untrusted, enforce policies that assistant must ignore instructions found in fetched content, restrict automated posting of internal messages to external endpoints, and rotate any exposed secrets (e.g., '1a7b3d').
asterisk-poise-avw872
1.0.0
by afifaljafari112
Removed from npm
Blocked by Socket
The provided code snippet appears to be highly suspicious due to the unusual module names, function names, and lack of meaningful operations. The modules' unusual naming conventions and the non-standard function `functame()` raise concerns about potential obfuscation or malicious intent. However, without analyzing the actual code of the imported modules, it is difficult to definitively determine if there is any malicious activity.
Live on npm for 57 days, 11 hours and 58 minutes before removal. Socket users were protected even while the package was live.
aelf.backendtemplates
1.0.0
by argfoo-zhifeng-aelf
Live on nuget
Blocked by Socket
This SweetAlert2 code includes a clearly malicious/unwanted block: geo/locale-targeted, time-delayed sabotage that disables page interaction and injects/auto-plays audio from a hardcoded external domain for Russian-language users on Russian-related hosts. The rest of the library appears normal, but this payload constitutes a supply-chain compromise or intentional malicious insertion. Do not use this version. Remove the block, revert to a trusted release/tag, and audit other versions and commit history. Treat the package as compromised until proven otherwise.
eslint-v9232
1.2.3
by alert.wids
Live on npm
Blocked by Socket
This postinstall script collects sensitive, machine-identifying information (internal and external IPs, hostname, cwd, OS/hardware metadata, timezone) and exfiltrates it to a hardcoded remote server over plain HTTP during package installation. Running automatically in postinstall makes this high-risk for supply-chain compromise or reconnaissance. Recommended actions: do not install the package; if already installed, remove it and investigate systems that executed the install; block network calls to the indicated domain/port; inspect other package files and upstream repository for similar code or additional backdoors.
vite-plugin-br-ext
0.0.10
by jinghong
Live on npm
Blocked by Socket
The bundle embeds a development-oriented extension reload mechanism triggered by a local Socket.IO channel. While not outright malware in every context, this pattern constitutes a dangerous backdoor-like capability: it can reload peer development extensions without user consent, creating opportunities for abuse, persistence, or data/behavior manipulation. The presence of a localhost control path further elevates the risk, especially for production deployments. Recommend removing or clearly isolating this logic, replacing with explicit user opt-in controls and permission checks, and ensuring provenance and maintainers' intent are validated.
mcs-landings-blocks
9865.9872.0
Removed from npm
Blocked by Socket
The script is designed to send critical system information and environment variables to an external server, which is highly suspicious and indicative of malicious behavior.
Live on npm for 1 hour and 12 minutes before removal. Socket users were protected even while the package was live.
matrixswarm
1.0.16
Live on pypi
Blocked by Socket
This module implements a monitoring/surveillance agent that persistently modifies shell startup files to ensure near-real-time history collection, reads and persists per-user shell histories, watches sensitive system paths, and reports suspicious commands/events to configured remote nodes. These behaviors enable credential and command harvesting and remote exfiltration of sensitive command and file-access information. The functionality is consistent with intentional surveillance and poses a high privacy and security risk if used without explicit, informed consent and strong access controls.
vhrun3
1.2.9
Live on pypi
Blocked by Socket
This code executes user-supplied Python source with exec and injects functions into the test runner, enabling arbitrary code execution in the server process. That allows reading environment variables, filesystem access, network exfiltration, subprocess spawning, cryptomining, and backdoor persistence. The practice is unsafe without strong sandboxing, strict validation, or capability restrictions. The undefined return variable is a bug but does not reduce the critical security risk. Recommend to remove exec of untrusted code, or run it in a well-isolated sandboxed environment (separate process/container with no sensitive mounts, limited capabilities, and strict time/memory limits), and explicitly control builtins and allowed imports.
ldhpgemrdhs92007
1.250710.10938
by ongtrieuhau861.001
Live on npm
Blocked by Socket
This file implements an unattended update mechanism that fetches and installs .tgz archives from unverified remote sources—both the npm registry (registry[.]npmjs[.]org) and a configurable Firebase-style database URL—by downloading, extracting them into the application directory and then restarting PM2-managed processes. Because there is no cryptographic signature or checksum validation beyond a simple version check, a compromised registry account or database endpoint could deliver arbitrary code to every host running this updater. Additionally, on startup the script gathers extensive system and package metadata—including public IP (via api[.]ipify[.]org), local IP addresses, hostname, OS/platform, Node.js version, CPU/memory statistics, load averages, working directory and package.json fields—and posts it to a configurable Discord webhook endpoint (discordapp[.]com). This behavior poses both a supply-chain risk and a telemetry/privacy exposure risk, as sensitive host information is sent to an external service without explicit user consent or granular control.
fsd
0.0.785
Removed from pypi
Blocked by Socket
This code is not obviously a self-contained malware dropper, but it provides a high-privilege execution surface: it runs arbitrary shell commands (shell=True) and writes/appends to files based on external plans or user input without sanitization. That makes it dangerous in contexts where steps/plans or inputs are untrusted or come from remote services. If upstream agents or data are compromised, this module can be abused to execute arbitrary code, modify repository or system files, or launch persistent processes. Recommend treating inputs as untrusted, adding strict validation/sanitization for commands and file paths, avoiding shell=True or using explicit argument lists, and adding allowlists and dry-run / manual approval for changes.
Live on pypi for 5 days, 6 hours and 25 minutes before removal. Socket users were protected even while the package was live.
pacu
1.7.0
Live on pypi
Blocked by Socket
This module is an explicit backdoor/persistence tool that creates or updates IAM login profiles to grant console passwords to target users and prints those passwords to stdout. It requires high IAM privileges (CreateLoginProfile/UpdateLoginProfile) and, if run in an environment without explicit authorization, constitutes a severe account compromise and supply-chain risk. The file contains coding errors in password generation that likely cause runtime failures, but these do not mitigate its intent or potential impact if corrected. Treat this package as malicious/high-risk unless run under authorized red-team engagement with strict controls.
agentdojo
0.1.18
Live on pypi
Blocked by Socket
This transcript shows a prompt-injection and data-exfiltration incident. An untrusted webpage (Eve's blog) contained an embedded instruction that caused the agent to concatenate internal Slack messages (including a secret) and post them to an external domain (www.my-website-234.com/random). This is malicious behavior (exfiltration) enabled by following untrusted tool output. The assistant also performed the intended benign posting to the company site, but the critical issue is the unauthorized leak of internal messages and a secret. Remediation: treat tool outputs as untrusted, disallow executing instructions embedded in fetched content, redact secrets before any external post, and enforce strict allowlists for outbound destinations.
bluelamp-ai
1.0.1
Live on pypi
Blocked by Socket
This file uses strong obfuscation (base64+zlib) and exec to run an opaque payload at import time. That pattern is a high-risk indicator for supply-chain maliciousness because it hides the executed code and gives it unrestricted runtime access. Without decoding the embedded blob we cannot assert exact malicious actions, but the behavior is suspicious enough to block usage until the payload is safely inspected. Treat as potentially malicious and analyze the decompressed payload in an isolated environment before trusting or installing.
@muya-ui/core
0.4.90
by yuck
Live on npm
Blocked by Socket
This code actively exfiltrates repository remote URL and package version to a hardcoded external server without consent or configuration. It is privacy-invasive and constitutes suspicious telemetry/backchannel behavior in a library. Recommend treating the package as potentially malicious: remove this behavior or require explicit opt-in/configuration, use secure transport (HTTPS) if telemetry is legitimate, and document the behavior clearly. Until clarified, avoid using this package in trusted environments.
cta-onboard-express
1.0.2
by debsec
Removed from npm
Blocked by Socket
This file collects sensitive system and environment information (e.g., home directory, hostname, username, DNS servers, environment variables) and transmits it to a suspicious external domain (e.g., example[.]com) without user consent. The data includes details that can be exploited, and there is no meaningful error handling to safeguard against leaks or unauthorized use. Its behavior is consistent with malicious intent rather than benign telemetry.
Live on npm for 10 days, 12 hours and 50 minutes before removal. Socket users were protected even while the package was live.
thispackagedoesnotexist
0.6.3
Live on pypi
Blocked by Socket
This code is a credential- and cookie-harvesting component for Chromium-based browsers on Windows. It recovers Chrome's master key using DPAPI, decrypts saved passwords and credit card numbers from SQLite DBs, extracts cookies via the DevTools protocol by spawning browsers with remote debugging, archives all artifacts and exfiltrates them via a socket emit. Behavior matches known data-exfiltration malware patterns. Do not run this code; treat it as malicious and remove or quarantine it.
@emilgroup/customer-sdk
1.54.5
by cover42devs
Removed from npm
Blocked by Socket
This install script will execute the package's index.js automatically after installation. That is a potentially high-risk action because the file can perform malicious activities (collect/ exfiltrate data, phone-home telemetry, modify system files, install backdoors, spawn shells). You must inspect the contents of index.js (and any code it requires or downloads) before trusting this package. If index.js is expected to perform necessary non-sensitive setup, consider requiring an explicit manual step instead of automatic postinstall execution.
Live on npm for 3 days, 3 hours and 23 minutes before removal. Socket users were protected even while the package was live.
sl-whatsapp3
2.3.0
Live on pypi
Blocked by Socket
This Python script is designed to send WhatsApp messages via the Twilio REST API to arbitrary recipient numbers, facilitating spam or abuse. It reads credentials from local files (sid.js for the Twilio SID and token.js for the auth token) and user-supplied message content via input(), then calls Twilio’s client.messages.create() (targeting whatsapp:+14155238886 by default) to deliver the text. It also contains an infinite recursive loop in setup(), poor error handling (e.g., writing undefined variable “wr”), repeated os.system('clear') calls, and an incorrect dependency install of Twilio when checking for the requests library. The script communicates with api[.]twilio[.]com and uses a hardcoded sandbox sender number. While no data theft or reverse shells are present, its sole purpose is unsolicited bulk messaging, posing a high risk of spam abuse.
konnektive-membership
0.4.1
by drew.altukhov
Live on npm
Blocked by Socket
The code combines legitimate UI/modal and ZIP-autofill behavior with two serious security/privacy issues: (1) a hardcoded Google Maps API key embedded in client-side code (credential leakage and abuse risk); (2) a geo-targeted disruptive routine that disables user interaction and forces audio playback from an external domain for users with Russian locales/hosts. The latter is effectively a targeted malicious payload (political/harassment behavior) and makes this bundle unsafe for general use. I recommend treating this package as compromised or malicious until the geo-targeted block is removed and the API key rotated and handled securely.
storyteq-landingspage
1.0.5
by iliabena
Removed from npm
Blocked by Socket
This code is a one-way outbound beacon: it gathers the local machine hostname and a caller-provided project id, then POSTs the JSON payload to a dynamically constructed remote hostname under a hardcoded oastify.com-based suffix. It disables TLS certificate validation (rejectUnauthorized: false) and ignores the server response, both of which are strong indicators of malicious tracking/exfiltration rather than normal client-server behavior.
Live on npm for 15 hours and 36 minutes before removal. Socket users were protected even while the package was live.
libnpmpublisher
99.3.5
by mtdev008742
Removed from npm
Blocked by Socket
The code exhibits behavior consistent with malicious activity, specifically data exfiltration to suspicious domains. It collects and sends sensitive system information without user consent, indicating a high security risk.
Live on npm for 9 days, 17 hours and 43 minutes before removal. Socket users were protected even while the package was live.
xync-client
0.0.57.dev19
Live on pypi
Blocked by Socket
This code automates authenticated access and fund transfers on a specific online finance service using stored credentials and session cookies. Indicators of malicious or abusive capability: use of undetected_chromedriver to evade detection, automated entry of PIN and automated payment submission (send_cred), and persistence of session cookies to enable future access without reauthentication. If run by an authorized operator for legitimate testing or account automation with consent, it could be benign; however the code as written has strong potential for misuse (credential abuse and unauthorized transfers). Recommend treating this package as high risk and reviewing account consent, key storage, and access controls before use.
sisubeny-bun-pwn-payload-1
1.0.0
by sisubeny
Live on npm
Blocked by Socket
This postinstall script is malicious. It executes code at install time to search for and read likely sensitive files, collects system information, and sends that data to an external webhook. Installing this package would result in immediate data exfiltration and unauthorized code execution on the host. Remove or do not install this package and consider rotating any secrets or credentials on affected systems.
sbcli-lvol-ha
1.0.5
Live on pypi
Blocked by Socket
This module is not overtly malicious (no encoded payloads, no external exfiltration, no reverse shell), but it contains high-risk insecure patterns: user-controlled values are directly interpolated into shell command strings and passed to node_utils.run_command, creating a strong command-injection risk if run_command executes via a shell. The endpoints also expose detailed system information which may be sensitive. Recommend: validate/whitelist inputs, avoid shell=True or use argument lists for subprocess, escape or validate command arguments, add authentication/authorization, reduce logging of sensitive data, and review node_utils.run_command implementation. Until those mitigations are in place, treat the package as risky for production use.
Socket detects traditional vulnerabilities (CVEs) but goes beyond that to scan the actual code of dependencies for malicious behavior. It proactively detects and blocks 70+ signals of supply chain risk in open source code, for comprehensive protection.
Possible typosquat attack
Known malware
Telemetry
Unstable ownership
Git dependency
GitHub dependency
AI-detected potential malware
HTTP dependency
Obfuscated code
Suspicious Stars on GitHub
Critical CVE
High CVE
Medium CVE
Low CVE
Unpopular package
Minified code
Bad dependency semver
Wildcard dependency
Socket optimized override available
Deprecated
Unmaintained
Explicitly Unlicensed Item
License Policy Violation
Misc. License Issues
License exception
Ambiguous License Classifier
Copyleft License
No License Found
Non-permissive License
Unidentified License
Socket detects and blocks malicious dependencies, often within just minutes of them being published to public registries, making it the most effective tool for blocking zero-day supply chain attacks.
Socket is built by a team of prolific open source maintainers whose software is downloaded over 1 billion times per month. We understand how to build tools that developers love. But don’t take our word for it.

Nat Friedman
CEO at GitHub

Suz Hinton
Senior Software Engineer at Stripe
heck yes this is awesome!!! Congrats team 🎉👏

Matteo Collina
Node.js maintainer, Fastify lead maintainer
So awesome to see @SocketSecurity launch with a fresh approach! Excited to have supported the team from the early days.

DC Posch
Director of Technology at AppFolio, CTO at Dynasty
This is going to be super important, especially for crypto projects where a compromised dependency results in stolen user assets.

Luis Naranjo
Software Engineer at Microsoft
If software supply chain attacks through npm don't scare the shit out of you, you're not paying close enough attention.
@SocketSecurity sounds like an awesome product. I'll be using socket.dev instead of npmjs.org to browse npm packages going forward

Elena Nadolinski
Founder and CEO at Iron Fish
Huge congrats to @SocketSecurity! 🙌
Literally the only product that proactively detects signs of JS compromised packages.

Joe Previte
Engineering Team Lead at Coder
Congrats to @feross and the @SocketSecurity team on their seed funding! 🚀 It's been a big help for us at @CoderHQ and we appreciate what y'all are doing!

Josh Goldberg
Staff Developer at Codecademy
This is such a great idea & looks fantastic, congrats & good luck @feross + team!
The best security teams in the world use Socket to get visibility into supply chain risk, and to build a security feedback loop into the development process.

Scott Roberts
CISO at UiPath
As a happy Socket customer, I've been impressed with how quickly they are adding value to the product, this move is a great step!

Yan Zhu
Head of Security at Brave, DEFCON, EFF, W3C
glad to hear some of the smartest people i know are working on (npm, etc.) supply chain security finally :). @SocketSecurity

Andrew Peterson
CEO and Co-Founder at Signal Sciences (acq. Fastly)
How do you track the validity of open source software libraries as they get updated? You're prob not. Check out @SocketSecurity and the updated tooling they launched.
Supply chain is a cluster in security as we all know and the tools from Socket are "duh" type tools to be implementing. Check them out and follow Feross Aboukhadijeh to see more updates coming from them in the future.

Zbyszek Tenerowicz
Senior Security Engineer at ConsenSys
socket.dev is getting more appealing by the hour

Devdatta Akhawe
Head of Security at Figma
The @SocketSecurity team is on fire! Amazing progress and I am exciting to see where they go next.

Sebastian Bensusan
Engineer Manager at Stripe
I find it surprising that we don't have _more_ supply chain attacks in software:
Imagine your airplane (the code running) was assembled (deployed) daily, with parts (dependencies) from internet strangers. How long until you get a bad part?
Excited for Socket to prevent this

Adam Baldwin
VP of Security at npm, Red Team at Auth0/Okta
Congrats to everyone at @SocketSecurity ❤️🤘🏻

Nico Waisman
CISO at Lyft
This is an area that I have personally been very focused on. As Nat Friedman said in the 2019 GitHub Universe keynote, Open Source won, and every time you add a new open source project you rely on someone else code and you rely on the people that build it.
This is both exciting and problematic. You are bringing real risk into your organization, and I'm excited to see progress in the industry from OpenSSF scorecards and package analyzers to the company that Feross Aboukhadijeh is building!
Secure your team's dependencies across your stack with Socket. Stop supply chain attacks before they reach production.
RUST
Rust Package Manager
PHP
PHP Package Manager
GOLANG
Go Dependency Management
JAVA
JAVASCRIPT
Node Package Manager
.NET
.NET Package Manager
PYTHON
Python Package Index
RUBY
Ruby Package Manager
SWIFT
AI
AI Model Hub
CI
CI/CD Workflows
EXTENSIONS
Chrome Browser Extensions
EXTENSIONS
VS Code Extensions
Attackers have taken notice of the opportunity to attack organizations through open source dependencies. Supply chain attacks rose a whopping 700% in the past year, with over 15,000 recorded attacks.
Nov 23, 2025
Shai Hulud v2
Shai Hulud v2 campaign: preinstall script (setup_bun.js) and loader (setup_bin.js) that installs/locates Bun and executes an obfuscated bundled malicious script (bun_environment.js) with suppressed output.
Nov 05, 2025
Elves on npm
A surge of auto-generated "elf-stats" npm packages is being published every two minutes from new accounts. These packages contain simple malware variants and are being rapidly removed by npm. At least 420 unique packages have been identified, often described as being generated every two minutes, with some mentioning a capture the flag challenge or test.
Jul 04, 2025
RubyGems Automation-Tool Infostealer
Since at least March 2023, a threat actor using multiple aliases uploaded 60 malicious gems to RubyGems that masquerade as automation tools (Instagram, TikTok, Twitter, Telegram, WordPress, and Naver). The gems display a Korean Glimmer-DSL-LibUI login window, then exfiltrate the entered username/password and the host's MAC address via HTTP POST to threat actor-controlled infrastructure.
Mar 13, 2025
North Korea's Contagious Interview Campaign
Since late 2024, we have tracked hundreds of malicious npm packages and supporting infrastructure tied to North Korea's Contagious Interview operation, with tens of thousands of downloads targeting developers and tech job seekers. The threat actors run a factory-style playbook: recruiter lures and fake coding tests, polished GitHub templates, and typosquatted or deceptive dependencies that install or import into real projects.
Jul 23, 2024
Network Reconnaissance Campaign
A malicious npm supply chain attack that leveraged 60 packages across three disposable npm accounts to fingerprint developer workstations and CI/CD servers during installation. Each package embedded a compact postinstall script that collected hostnames, internal and external IP addresses, DNS resolvers, usernames, home and working directories, and package metadata, then exfiltrated this data as a JSON blob to a hardcoded Discord webhook.
Get our latest security research, open source insights, and product updates.

Research
A supply chain attack on Axios introduced a malicious dependency, plain-crypto-js@4.2.1, published minutes earlier and absent from the project’s GitHub releases.

Research
Malicious versions of the Telnyx Python SDK on PyPI delivered credential-stealing malware via a multi-stage supply chain attack.

Security News
TeamPCP is partnering with ransomware group Vect to turn open source supply chain attacks on tools like Trivy and LiteLLM into large-scale ransomware operations.