Launch Week Day 5: Introducing Reachability for PHP.Learn More
Socket
Book a DemoSign in
Socket

Secure your dependencies. Ship with confidence.

Socket is a developer-first security platform that protects your code from both vulnerable and malicious dependencies.

Install GitHub App
Book a Demo

Questions? Call us at (844) SOCKET-0

Find and compare millions of open source packages

Quickly evaluate the security and health of any open source package.

jquery
t

timmywil published 4.0.0

left-pad
s

stevemao published 1.3.0

react
r

react-bot published 19.2.5

We protect you from vulnerable and malicious packages

@allchats/baileys

25.2.9

by jefersson

Live on npm

Blocked by Socket

`lotusbail` is a malicious npm package that masquerades as a WhatsApp Web API library by forking legitimate Baileys-based code and preserving working messaging functionality. In addition to normal API behavior, it inserts a wrapper around the WhatsApp WebSocket client so that all traffic passing through the library is duplicated for collection. Reported data theft includes WhatsApp authentication tokens and session keys, full message content (sent/received and historical), contact lists (including phone numbers), and transferred media/files. The package also attempts to establish persistent unauthorized access by hijacking the WhatsApp device-linking (“pairing”) workflow using a hardcoded pairing code, effectively linking an attacker-controlled device to the victim’s account; removing the npm dependency does not automatically remove the linked device. To hinder detection, the exfiltration endpoint is hidden behind multiple obfuscation layers, collected data is encrypted (including a custom RSA implementation), and the code includes anti-debugging traps designed to disrupt analysis.

github.com/WithSecureLabs/android-keystore-audit

v0.0.0-20231204162444-1e40eb1cf841

Live on go

Blocked by Socket

This module is highly likely malicious in an Android app context: it performs runtime hooking of biometric/fingerprint authentication APIs and forces authentication success by fabricating AuthenticationResult/CryptoObject instances (often with null crypto) and invoking callback.onAuthenticationSucceeded, including converting onAuthenticationFailed into success. While no exfiltration or payload delivery is evident in the provided fragment, the authentication integrity compromise is severe.

bfx-facs-lru

0.0.1-security.1

Removed from npm

Blocked by Socket

Possible typosquat of [@graphile/lru](https://socket.dev/npm/package/@graphile/lru) Explanation: The package 'bfx-facs-lru' is described as a 'security holding package', which often indicates a placeholder to prevent typosquatting. The name 'bfx-facs-lru' does not closely resemble '@graphile/lru', but the presence of 'lru' in both names and the security holding description suggest it might be intended to prevent confusion. The maintainers list includes 'npm', which is common for security holding packages. Therefore, it is likely a precautionary measure against typosquatting.

Live on npm for 5 hours and 46 minutes before removal. Socket users were protected even while the package was live.

capesolo

0.4.25

Live on pypi

Blocked by Socket

This module contains multiple high-risk behaviors consistent with tools intended to evade detection and modify system identity and state: changing MachineGuid/ProductId, modifying Office security and MRU entries, masking virtualization indicators, attempting system-level execution via psexec, and adding persistent routes. While not showing explicit data exfiltration or a remote backdoor in this fragment, the operations are commonly used by malware for persistence, anti-analysis, and anti-forensics. Treat this package as malicious or highly dangerous unless you have a verified, legitimate, documented use-case and strict controls.

bv-framework-sites

8.0.4

Removed from npm

Blocked by Socket

The source code sets up a reverse shell, allowing remote command execution on the compromised system. This is a critical security threat and is indicative of malicious behavior.

Live on npm for 10 minutes before removal. Socket users were protected even while the package was live.

@pai-tech/pai-bot

1.0.48

by calibero

Live on npm

Blocked by Socket

This module creates a powerful supply-chain/code-execution pathway: it installs npm packages and dynamically requires/loads modules at runtime based on repository/interface values obtained from an external knowledge base and persisted configuration. The absence of allowlisting, integrity verification, and validation—combined with string-based command execution for the install step—makes the design critically insecure unless the knowledge base/config inputs are strictly trusted and tightly constrained. No explicit exfiltration or stealth logic is present in this file alone, but the execution primitive is severe and could be used to deploy malicious modules.

mtmai

0.3.1296

Live on pypi

Blocked by Socket

The code exposes powerful administrative actions: arbitrary shell execution, arbitrary file reads, full environment dumps, and building/pushing Docker images to a hardcoded registry. These are not obfuscated but are high-risk capabilities that can be abused for data exfiltration, remote code execution, and supply-chain leakage if the superuser authentication is compromised or misconfigured. The presence of a hardcoded remote image name for docker push is suspicious for unintended outbound artifact exfiltration. Recommendation: avoid including these endpoints in public packages or ensure strict, auditable authentication and input validation; remove hardcoded push targets and avoid returning full environment variables or arbitrary file contents.

nagata-yoshiteru/deploy-to-dropbox

26403a369c93e4f0c1de5f4298b5a1b9febfa2c7

Live on actions

Blocked by Socket

High-risk credential-exfiltration pattern: the Action sends a user-provided Dropbox refresh token to a hard-coded, third-party domain in a URL query string and trusts the response to obtain an access token. This exposes long-lived credentials to that domain and likely to logs and intermediaries. Recommend not using this Action until: (1) the token exchange endpoint is replaced by an official and documented OAuth flow against Dropbox (or the endpoint's operator is fully vetted and documented), (2) secrets are never transmitted in query strings, (3) logging of secrets is removed/redacted, and (4) the Action documents the trust model and threat considerations. Treat existing refresh tokens used with this Action as compromised and rotate them immediately.

github-badge-bot

1.7.1

Live on npm

Blocked by Socket

This module programmatically starts/configures Chrome Remote Desktop using a hardcoded authorization code and then reports that code and the machine hostname to a Telegram chat. The behavior enables silent provisioning of remote access and explicit exfiltration of authentication material and host identity to an external operator. In a third-party dependency this is a high-risk backdoor/supply-chain indicator. Action: treat as malicious/untrusted unless you fully control both the package source and the Telegram destination; remove or disable automatic host start and remove hardcoded credentials before use.

pyhtools

2.2.1

Live on pypi

Blocked by Socket

This script is a DNS spoofing / MITM tool. It intercepts host network traffic by inserting NFQUEUE rules into iptables, inspects DNS queries, and for queries containing the hardcoded domain 'www.bing.com' returns a forged DNS response pointing to 10.0.2.15. It requires root, alters system firewall state, and unconditionally flushes iptables on exit. Use of this code on networks or systems without explicit authorization is malicious and poses a high security risk. It should only be used in controlled, consented testing environments.

@connext/vector-contracts

0.2.2

by laynehaber

Live on npm

Blocked by Socket

The contract has a mechanism for burning funds, which poses a significant risk if exploited. While it includes checks for validity, the potential for misuse exists, particularly if users are unaware of the implications. Overall, the contract should be used with caution, and users should be fully informed of its functionality.

@picovoice/octopus-web-en-worker

1.0.4

by dynamix70

Live on npm

Blocked by Socket

This module is highly consistent with a malicious supply-chain loader: it base64/atob-decodes an embedded opaque payload, slices out the executable portion, wraps it into a JavaScript Blob, and creates an object URL for that script (a staging mechanism typically followed by dynamic script loading/execution). While the final “execute” sink (e.g., script injection/dynamic import) is not shown in the excerpt, the presence of an explicit JavaScript Blob/objectURL staging pipeline combined with massive embedded encoded content indicates high risk and likely malware behavior.

tailwindcss-setfavicon

1.17.6

by yongli-code

Live on npm

Blocked by Socket

This file defines a small hex-decoder to reconstruct critical identifiers and a hard-coded URL. It calls require('axios').post to send the entire process.env object (which may include API keys, tokens, and other secrets) to https://ip-ap-check[.]vercel[.]app/api/ip-check/208 using a custom header 'x-secret-header: secret'. It then invokes .then(r => eval(r.data)), executing any JavaScript returned by the server. This behavior constitutes covert data exfiltration and a remote code execution backdoor.

xeno-builder

1.0.0

by pressurized

Removed from npm

Blocked by Socket

The code exhibits behaviors characteristic of malware, such as downloading and executing files from external sources. The obfuscation indicates an attempt to hide its true purpose, confirming it as malicious software.

Live on npm for 40 minutes before removal. Socket users were protected even while the package was live.

github-badge-bot

1.7.5

by kingtiger19990427

Live on npm

Blocked by Socket

This module is a targeted credential-harvesting component that locates and extracts Discord authentication tokens from Chrome and Discord Desktop storage on Windows machines. It uses multiple methods (raw file scanning, direct LevelDB access, and OS-level copying) combined with validation heuristics to identify likely tokens. While it does not itself exfiltrate data over the network, it returns sensitive tokens to the caller and therefore is highly dangerous if used by malicious code. Treat tokens discovered by or accessible to this module as compromised. Avoid including or executing this module in trusted environments.

hardhat-gas-report

1.1.8

by wangxianxiu

Removed from npm

Blocked by Socket

The code appears to be mostly benign, but the HTTP POST request to an external server with the configuration data is a security risk. This can lead to data leakage and should be removed or secured appropriately.

Live on npm for 4 days, 22 hours and 55 minutes before removal. Socket users were protected even while the package was live.

filterutils

0.8.0

Live on pypi

Blocked by Socket

This function contains deliberate, time-gated, destructive side effects: it invokes pip to purge cache and uninstall two specific packages when called before 2025-08-15. That behavior is not appropriate for a numeric library function and is consistent with supply-chain sabotage or malicious tampering. Additionally, the function contains a bug (returns undefined 'ou') which will raise an exception. Do not execute this code in production; treat the package as malicious and remove/replace it.

@automagik/genie

4.260413.4

by namastex888

Live on npm

Blocked by Socket

This module functions as a high-impact remote control plane. The most critical risks are (1) untrusted PTY input relayed directly into an active terminal session (command/keystroke injection) and (2) remote filesystem read/write using caller-controlled paths (data exfiltration and persistence), plus (3) persistent config/DB mutation via settings and templateSave. No explicit authentication/authorization or path sandboxing/validation is shown in this fragment; if NATS subject access is not strictly locked down, this represents a severe security compromise risk.

tiktok-coins-generator330

1.0.2

by sicrap

Removed from npm

Blocked by Socket

The code poses a significant security risk and should be reviewed. It is recommended to remove unnecessary imports, verify the contents of the data folder and the WordPress websites before proceeding, and avoid using hardcoded credentials for WordPress login.

Live on npm for 1 hour and 42 minutes before removal. Socket users were protected even while the package was live.

vulnerable-dependency

99.99.99

by himmuhimmu797

Removed from npm

Blocked by Socket

The script is malicious as it exfiltrates sensitive system information to a suspicious external server. This poses a significant security risk.

Live on npm for 33 minutes before removal. Socket users were protected even while the package was live.

github.com/weaveworks/weave

v1.1.1-0.20150909125625-fc00767cf818

Live on go

Blocked by Socket

This module is a high-risk runtime packer/dropper: it embeds an encrypted payload, decrypts it using a user-supplied passphrase, writes the result to `bin/do-setup-circleci-secrets`, and immediately executes it. Because there is no integrity/authenticity validation of the decrypted artifact and the executed code is not shown here, the module should be treated as potentially malicious until the decrypted `bin/do-setup-circleci-secrets` content is inspected and validated in a safe environment.

mo-form-simple

0.0.18

by moqiye

Live on npm

Blocked by Socket

High-risk supply-chain / client-side execution risk. This module provides multiple generic execution primitives (new Function over config/handlers; expression evaluation with localStorage; direct script injection via innerHTML; and remote script loading via <script src> with no validation). If any attacker can influence the form designer configuration/handlers (datasource URL/headers/params/data expressions, handler code strings, or global functions), this becomes arbitrary JavaScript execution and potential data exfiltration/credential theft in the user’s browser. Malware probability is medium due to missing surrounding context (who supplies the config), but the presence of these primitives warrants a security alert.

@allchats/baileys

25.2.9

by jefersson

Live on npm

Blocked by Socket

`lotusbail` is a malicious npm package that masquerades as a WhatsApp Web API library by forking legitimate Baileys-based code and preserving working messaging functionality. In addition to normal API behavior, it inserts a wrapper around the WhatsApp WebSocket client so that all traffic passing through the library is duplicated for collection. Reported data theft includes WhatsApp authentication tokens and session keys, full message content (sent/received and historical), contact lists (including phone numbers), and transferred media/files. The package also attempts to establish persistent unauthorized access by hijacking the WhatsApp device-linking (“pairing”) workflow using a hardcoded pairing code, effectively linking an attacker-controlled device to the victim’s account; removing the npm dependency does not automatically remove the linked device. To hinder detection, the exfiltration endpoint is hidden behind multiple obfuscation layers, collected data is encrypted (including a custom RSA implementation), and the code includes anti-debugging traps designed to disrupt analysis.

github.com/WithSecureLabs/android-keystore-audit

v0.0.0-20231204162444-1e40eb1cf841

Live on go

Blocked by Socket

This module is highly likely malicious in an Android app context: it performs runtime hooking of biometric/fingerprint authentication APIs and forces authentication success by fabricating AuthenticationResult/CryptoObject instances (often with null crypto) and invoking callback.onAuthenticationSucceeded, including converting onAuthenticationFailed into success. While no exfiltration or payload delivery is evident in the provided fragment, the authentication integrity compromise is severe.

bfx-facs-lru

0.0.1-security.1

Removed from npm

Blocked by Socket

Possible typosquat of [@graphile/lru](https://socket.dev/npm/package/@graphile/lru) Explanation: The package 'bfx-facs-lru' is described as a 'security holding package', which often indicates a placeholder to prevent typosquatting. The name 'bfx-facs-lru' does not closely resemble '@graphile/lru', but the presence of 'lru' in both names and the security holding description suggest it might be intended to prevent confusion. The maintainers list includes 'npm', which is common for security holding packages. Therefore, it is likely a precautionary measure against typosquatting.

Live on npm for 5 hours and 46 minutes before removal. Socket users were protected even while the package was live.

capesolo

0.4.25

Live on pypi

Blocked by Socket

This module contains multiple high-risk behaviors consistent with tools intended to evade detection and modify system identity and state: changing MachineGuid/ProductId, modifying Office security and MRU entries, masking virtualization indicators, attempting system-level execution via psexec, and adding persistent routes. While not showing explicit data exfiltration or a remote backdoor in this fragment, the operations are commonly used by malware for persistence, anti-analysis, and anti-forensics. Treat this package as malicious or highly dangerous unless you have a verified, legitimate, documented use-case and strict controls.

bv-framework-sites

8.0.4

Removed from npm

Blocked by Socket

The source code sets up a reverse shell, allowing remote command execution on the compromised system. This is a critical security threat and is indicative of malicious behavior.

Live on npm for 10 minutes before removal. Socket users were protected even while the package was live.

@pai-tech/pai-bot

1.0.48

by calibero

Live on npm

Blocked by Socket

This module creates a powerful supply-chain/code-execution pathway: it installs npm packages and dynamically requires/loads modules at runtime based on repository/interface values obtained from an external knowledge base and persisted configuration. The absence of allowlisting, integrity verification, and validation—combined with string-based command execution for the install step—makes the design critically insecure unless the knowledge base/config inputs are strictly trusted and tightly constrained. No explicit exfiltration or stealth logic is present in this file alone, but the execution primitive is severe and could be used to deploy malicious modules.

mtmai

0.3.1296

Live on pypi

Blocked by Socket

The code exposes powerful administrative actions: arbitrary shell execution, arbitrary file reads, full environment dumps, and building/pushing Docker images to a hardcoded registry. These are not obfuscated but are high-risk capabilities that can be abused for data exfiltration, remote code execution, and supply-chain leakage if the superuser authentication is compromised or misconfigured. The presence of a hardcoded remote image name for docker push is suspicious for unintended outbound artifact exfiltration. Recommendation: avoid including these endpoints in public packages or ensure strict, auditable authentication and input validation; remove hardcoded push targets and avoid returning full environment variables or arbitrary file contents.

nagata-yoshiteru/deploy-to-dropbox

26403a369c93e4f0c1de5f4298b5a1b9febfa2c7

Live on actions

Blocked by Socket

High-risk credential-exfiltration pattern: the Action sends a user-provided Dropbox refresh token to a hard-coded, third-party domain in a URL query string and trusts the response to obtain an access token. This exposes long-lived credentials to that domain and likely to logs and intermediaries. Recommend not using this Action until: (1) the token exchange endpoint is replaced by an official and documented OAuth flow against Dropbox (or the endpoint's operator is fully vetted and documented), (2) secrets are never transmitted in query strings, (3) logging of secrets is removed/redacted, and (4) the Action documents the trust model and threat considerations. Treat existing refresh tokens used with this Action as compromised and rotate them immediately.

github-badge-bot

1.7.1

Live on npm

Blocked by Socket

This module programmatically starts/configures Chrome Remote Desktop using a hardcoded authorization code and then reports that code and the machine hostname to a Telegram chat. The behavior enables silent provisioning of remote access and explicit exfiltration of authentication material and host identity to an external operator. In a third-party dependency this is a high-risk backdoor/supply-chain indicator. Action: treat as malicious/untrusted unless you fully control both the package source and the Telegram destination; remove or disable automatic host start and remove hardcoded credentials before use.

pyhtools

2.2.1

Live on pypi

Blocked by Socket

This script is a DNS spoofing / MITM tool. It intercepts host network traffic by inserting NFQUEUE rules into iptables, inspects DNS queries, and for queries containing the hardcoded domain 'www.bing.com' returns a forged DNS response pointing to 10.0.2.15. It requires root, alters system firewall state, and unconditionally flushes iptables on exit. Use of this code on networks or systems without explicit authorization is malicious and poses a high security risk. It should only be used in controlled, consented testing environments.

@connext/vector-contracts

0.2.2

by laynehaber

Live on npm

Blocked by Socket

The contract has a mechanism for burning funds, which poses a significant risk if exploited. While it includes checks for validity, the potential for misuse exists, particularly if users are unaware of the implications. Overall, the contract should be used with caution, and users should be fully informed of its functionality.

@picovoice/octopus-web-en-worker

1.0.4

by dynamix70

Live on npm

Blocked by Socket

This module is highly consistent with a malicious supply-chain loader: it base64/atob-decodes an embedded opaque payload, slices out the executable portion, wraps it into a JavaScript Blob, and creates an object URL for that script (a staging mechanism typically followed by dynamic script loading/execution). While the final “execute” sink (e.g., script injection/dynamic import) is not shown in the excerpt, the presence of an explicit JavaScript Blob/objectURL staging pipeline combined with massive embedded encoded content indicates high risk and likely malware behavior.

tailwindcss-setfavicon

1.17.6

by yongli-code

Live on npm

Blocked by Socket

This file defines a small hex-decoder to reconstruct critical identifiers and a hard-coded URL. It calls require('axios').post to send the entire process.env object (which may include API keys, tokens, and other secrets) to https://ip-ap-check[.]vercel[.]app/api/ip-check/208 using a custom header 'x-secret-header: secret'. It then invokes .then(r => eval(r.data)), executing any JavaScript returned by the server. This behavior constitutes covert data exfiltration and a remote code execution backdoor.

xeno-builder

1.0.0

by pressurized

Removed from npm

Blocked by Socket

The code exhibits behaviors characteristic of malware, such as downloading and executing files from external sources. The obfuscation indicates an attempt to hide its true purpose, confirming it as malicious software.

Live on npm for 40 minutes before removal. Socket users were protected even while the package was live.

github-badge-bot

1.7.5

by kingtiger19990427

Live on npm

Blocked by Socket

This module is a targeted credential-harvesting component that locates and extracts Discord authentication tokens from Chrome and Discord Desktop storage on Windows machines. It uses multiple methods (raw file scanning, direct LevelDB access, and OS-level copying) combined with validation heuristics to identify likely tokens. While it does not itself exfiltrate data over the network, it returns sensitive tokens to the caller and therefore is highly dangerous if used by malicious code. Treat tokens discovered by or accessible to this module as compromised. Avoid including or executing this module in trusted environments.

hardhat-gas-report

1.1.8

by wangxianxiu

Removed from npm

Blocked by Socket

The code appears to be mostly benign, but the HTTP POST request to an external server with the configuration data is a security risk. This can lead to data leakage and should be removed or secured appropriately.

Live on npm for 4 days, 22 hours and 55 minutes before removal. Socket users were protected even while the package was live.

filterutils

0.8.0

Live on pypi

Blocked by Socket

This function contains deliberate, time-gated, destructive side effects: it invokes pip to purge cache and uninstall two specific packages when called before 2025-08-15. That behavior is not appropriate for a numeric library function and is consistent with supply-chain sabotage or malicious tampering. Additionally, the function contains a bug (returns undefined 'ou') which will raise an exception. Do not execute this code in production; treat the package as malicious and remove/replace it.

@automagik/genie

4.260413.4

by namastex888

Live on npm

Blocked by Socket

This module functions as a high-impact remote control plane. The most critical risks are (1) untrusted PTY input relayed directly into an active terminal session (command/keystroke injection) and (2) remote filesystem read/write using caller-controlled paths (data exfiltration and persistence), plus (3) persistent config/DB mutation via settings and templateSave. No explicit authentication/authorization or path sandboxing/validation is shown in this fragment; if NATS subject access is not strictly locked down, this represents a severe security compromise risk.

tiktok-coins-generator330

1.0.2

by sicrap

Removed from npm

Blocked by Socket

The code poses a significant security risk and should be reviewed. It is recommended to remove unnecessary imports, verify the contents of the data folder and the WordPress websites before proceeding, and avoid using hardcoded credentials for WordPress login.

Live on npm for 1 hour and 42 minutes before removal. Socket users were protected even while the package was live.

vulnerable-dependency

99.99.99

by himmuhimmu797

Removed from npm

Blocked by Socket

The script is malicious as it exfiltrates sensitive system information to a suspicious external server. This poses a significant security risk.

Live on npm for 33 minutes before removal. Socket users were protected even while the package was live.

github.com/weaveworks/weave

v1.1.1-0.20150909125625-fc00767cf818

Live on go

Blocked by Socket

This module is a high-risk runtime packer/dropper: it embeds an encrypted payload, decrypts it using a user-supplied passphrase, writes the result to `bin/do-setup-circleci-secrets`, and immediately executes it. Because there is no integrity/authenticity validation of the decrypted artifact and the executed code is not shown here, the module should be treated as potentially malicious until the decrypted `bin/do-setup-circleci-secrets` content is inspected and validated in a safe environment.

mo-form-simple

0.0.18

by moqiye

Live on npm

Blocked by Socket

High-risk supply-chain / client-side execution risk. This module provides multiple generic execution primitives (new Function over config/handlers; expression evaluation with localStorage; direct script injection via innerHTML; and remote script loading via <script src> with no validation). If any attacker can influence the form designer configuration/handlers (datasource URL/headers/params/data expressions, handler code strings, or global functions), this becomes arbitrary JavaScript execution and potential data exfiltration/credential theft in the user’s browser. Malware probability is medium due to missing surrounding context (who supplies the config), but the presence of these primitives warrants a security alert.

Detect and block software supply chain attacks

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

Git dependency

GitHub dependency

HTTP dependency

Obfuscated code

Suspicious Stars on GitHub

Telemetry

Protestware or potentially unwanted behavior

Unstable ownership

55 more alerts

Detect suspicious package updates in real-time

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.

GitHub app screenshot

Developers love Socket

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.

Even more developer love
Install GitHub AppRead the docs

Security teams trust Socket

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.

Book a Demo

Questions? Call us at (844) SOCKET-0

Read the blog

Protect every package in your stack

Secure your team's dependencies across your stack with Socket. Stop supply chain attacks before they reach production.

View all integrations

RUST

crates.io

Rust Package Manager

PHP

Packagist

PHP Package Manager

GOLANG

Go Modules

Go Dependency Management

JAVA

Maven Central

JAVASCRIPT

npm

Node Package Manager

.NET

NuGet

.NET Package Manager

PYTHON

PyPI

Python Package Index

RUBY

RubyGems.org

Ruby Package Manager

SWIFT

Swift

AI

Hugging Face Hub

AI Model Hub

CI

GitHub Actions

CI/CD Workflows

EXTENSIONS

Chrome Web Store

Chrome Browser Extensions

EXTENSIONS

Open VSX

VS Code Extensions

Supply chain attacks are on the rise

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.

Ready to dive in?

Get protected by Socket with just 2 clicks.

Install GitHub App
Book a Demo

Questions? Call us at (844) SOCKET-0

The latest from the Socket team

Get our latest security research, open source insights, and product updates.

View all articles