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

react-global-components

0.1.25

by coolman555

Removed from npm

Blocked by Socket

Legitimate plugin loading system with security risks due to dynamic code execution and global namespace modification. Not malware but poses moderate security risk if plugin directory is compromised.

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

mcp-alchemy

2025.4.16.110003

Live on pypi

Blocked by Socket

No explicit obfuscated malware or remote backdoor code is present, but this module exposes high-risk functionality: it executes arbitrary SQL (with a writable DB connection), writes full result sets to disk, and exposes DB metadata in logs/tool descriptions. The save-to-local combined with a constructed public CDN-style URL is unusual and may enable accidental or deliberate data exfiltration. Use of this package should be restricted, and execute_query should be gated by strict authorization, query whitelisting or parameterization, enforced read-only connections, and careful handling or disabling of full-result file writes.

xync-client

0.0.69

Live on pypi

Blocked by Socket

This code is malicious in intent: it automates fraudulent interaction with a banking website, contains hardcoded sensitive credentials, evades automation detection, prompts an operator to supply OTPs (social-engineering), performs money transfers, and persists session state to disk for reuse. It should be treated as a tool for account takeover and financial theft. Do not run it; remove any storage_state files and investigate systems where it executed. The snippet also contains syntax errors and is incomplete, but those do not mitigate the clearly malicious purpose.

lila-framework

0.9.8

Live on pypi

Blocked by Socket

The fragment is structurally corrupted and contains elements that could enable a backdoor-like behavior: it attempts to ensure a database-admin user exists and to inject admin routes into main.py by modifying application code at runtime, and it prints credentials to stdout. While the code as provided is not executable due to syntax issues, the embedded intent and patterns (self-modifying behavior, admin credential generation, and route injection) constitute notable security risks and potential abuse vectors if deployed without thorough sanitization and proper safeguards.

mm_expand

2.2.0

by qiuwenwu

Live on npm

Blocked by Socket

This module is primarily a runtime helper, but it exposes a high-risk arbitrary code execution capability through `$.runCode`/`$.runScript` using `eval()` on caller-provided strings with no sandboxing. It also increases supply-chain attack surface by modifying `global.$`, supporting dynamic `require()` and module cache eviction/reload, and enabling event-loop blocking via busy-wait utilities. No explicit exfiltration or persistence is shown in this fragment, but the provided primitives are sufficient for an attacker to perform malicious actions elsewhere in the same process if inputs can be influenced.

plugin-syntax-jsx

99.10.9

by rtxb4bli

Removed from npm

Blocked by Socket

The code is designed to collect and send sensitive information to a remote server without the user's knowledge or consent. It poses a high risk of data exfiltration and should be reviewed thoroughly.

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

@jshookmcp/jshook

0.2.3

by vmoranv6

Live on npm

Blocked by Socket

The code is a dynamic loader/executable scaffold that reads and runs external obfuscated JavaScript within a Python-driven ExecJS context, while routing inputs through a signer function. While not inherently malicious by default, the architecture introduces a high security risk due to runtime execution of external code, potential data leakage via the signer, and a broad host capability surface via emulated browser APIs. It warrants strict provenance checks, whitelisting of obfuscated.js, isolation of the ExecJS environment, and avoidance of executing untrusted payloads at runtime.

routerxpl

0.8.0

Live on pypi

Blocked by Socket

This module is high-confidence offensive exploitation code. It performs an HTTP POST to a router debug CGI endpoint, authenticates with hardcoded credentials, injects operator-controlled commands into the request payload, parses the returned output, and—upon successful verification—starts an interactive remote command execution loop. Despite a likely typo/truncation in the boolean return statement, the malicious intent and execution flow are clear from the exploit workflow implemented in this file.

pybotnet

0.15.5

Live on pypi

Blocked by Socket

The fragment exhibits multiple high-risk patterns consistent with remote command execution and arbitrary file download capabilities: a MAC-based command namespace, an exposable shell command interface, and unvalidated file downloads. While several syntactic issues could cause runtime failures in isolation, the underlying design enables potential control over a host, data exfiltration, and arbitrary payload retrieval. Without proper authentication, input validation, and secure handling, this code represents a substantial security risk if incorporated into a project. The presence of backdoor-like behavior and self-contained control paths warrants immediate review or removal from any open-source distribution.

rap-sdk

0.1.13

by basemoz

Live on npm

Blocked by Socket

This code exhibits suspicious obfuscation patterns through unnecessary eval() usage combined with network request capabilities. The broken URL validation and environment-dependent behavior suggest either poor coding practices or intentional obfuscation to evade detection.

@asarioglo/npm-ghost-htb

1.23.470

Live on npm

Blocked by Socket

This JavaScript module executes immediately on import and performs the following malicious actions: 1) Enumerates all environment variables, scans their values for patterns matching HTB{.*?}, and collects any hits. 2) Recursively traverses specified host paths (e.g., /opt/hscan-supplychain-dynamic, /root/flag, /flag.txt), filters likely text files by extension and filename keywords (“flag”, “secret”, “token”), reads small files (≤2 MB), extracts matching HTB tokens, and captures directory metadata snapshots. 3) Aggregates environment hits, directory listings, file findings, and runtime metadata (process.cwd(), __filename) into a JSON payload. 4) Sends the payload via HTTP(S) POST to a hard-coded exfiltration endpoint at https://webhook[.]site/9abfee18-babc-4a9d-ae66-1b82ed6f436c. All error conditions are silently ignored to avoid detection. This behavior constitutes a supply-chain/backdoor malware that can expose sensitive credentials or internal data; remove the module immediately and rotate any exposed secrets.

color2.0.0

1.4.0

by adiostcheusia

Removed from npm

Blocked by Socket

The code contains clear indicators of malicious behavior. It collects sensitive information such as tokens, user data, and system information, and sends it to a Discord webhook. The obfuscation techniques used in the code further indicate an intent to hide its true functionality.

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

@antistud/handrails-cli

0.1.19

by antistud

Live on npm

Blocked by Socket

This module is a high-impact remote agent that exposes arbitrary filesystem reading/listing, shell command execution, and grep-based searching over a WebSocket RPC channel. Tool parameters are taken directly from remote messages and executed via fs.* and child_process.execSync with no authorization or sanitization in this file. Results are sent back over the network, enabling both remote compromise and data exfiltration if the remote bridge/authentication/transport is not strictly protected.

github.com/weaveworks/weave

v1.3.2-0.20151208230819-eddcf9394203

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.

tfjs-layers

0.2.0

by jpdtestjpd

Live on npm

Blocked by Socket

The file contains code that secretly gathers detailed system information, such as hostname, OS type, platform, release, architecture, local IP addresses, public IP address (fetched via an external API), username, and current working directory. It then transmits this data to external endpoints via HTTP GET and POST requests, and uses a WebSocket connection as a fallback. The endpoints are hardcoded, for example, to URLs like http://example.com/jpd3.php, http://example.com/jpd4.php, and wss://example.com/socket, which are not transparent or verified services. This behavior is indicative of malware designed for unauthorized data exfiltration.

github.com/juju/mgo/v3

v3.0.3

Live on go

Blocked by Socket

This JavaScript file contains destructive malware that targets MongoDB databases. The code connects to multiple MongoDB instances running on localhost across various ports (40001, 40002, 40011, etc.), authenticates using hardcoded credentials (username 'root' with password 'rapadura'), and performs the following malicious actions: (1) Systematically removes all user accounts except 'root' and 'reader' from authenticated instances, (2) Enumerates and drops all databases except system databases ('admin', 'local', 'config'), effectively wiping user data and destroying database integrity. The script includes retry logic to ensure successful execution and operates without any user confirmation or safety checks. This constitutes a severe supply chain attack designed to cause maximum data loss and denial of service on MongoDB installations.

groove-dev

0.24.1

by groove-ai

Live on npm

Blocked by Socket

This fragment implements the core mechanics of a WebSocket-based interactive terminal/session controller: it dynamically selects a shell/interpreter, forwards client-controlled input directly into a spawned process stdin, and streams resulting output/errors back over the network. That is a high-risk remote command execution pattern consistent with backdoors/remote shells unless tightly access-controlled and strongly sandboxed elsewhere. No explicit obfuscation is present in the shown code, and there is no direct evidence of credential theft in this fragment, but the capability itself is very dangerous.

cuckoo

2.0.3a4

Live on pypi

Blocked by Socket

The code implements functionality that can exfiltrate arbitrary files and logs over the network without encryption or user consent. This behavior constitutes a significant security risk and matches malware patterns related to data theft. Although the code is not obfuscated and does not contain explicit malware payloads like backdoors or reverse shells, the potential for unauthorized data leakage is high. Use of this code in a supply chain context should be carefully controlled and audited.

pinokiod

0.0.121

by cocktailpeanut

Live on npm

Blocked by Socket

The SweetAlert2 library code is mostly benign and serves as a UI modal dialog tool. However, it contains a suspicious and potentially malicious snippet that targets Russian users on certain domains to play an unsolicited audio prank, disabling pointer events and potentially disrupting user interaction. This behavior is unexpected and should be considered a moderate security risk and potential malware. The rest of the code shows no signs of malicious intent. The provided reports were invalid and unhelpful. Users should be cautious about this version of the library due to the embedded prank behavior.

github.com/gravitational/teleport

v0.0.0-20231229230901-af08644114b7

Live on go

Blocked by Socket

The script functions as a bootstrap installer that fetches a Teleport binary from a CDN, extracts it, and executes it with user-provided arguments. While common in bootstrap flows, this approach carries significant supply-chain risk due to lack of integrity verification, potential tampering of the CDN content, and execution of an external binary in the host environment. To reduce risk, add cryptographic verification (signatures/checksums), validate the artifact against a trusted manifest, constrain and sanitize teleportArgs, implement isolation (sandbox/container), and improve error handling with cleanup. Consider using pinned TLS/HTTPS, and validating the tarball contents before execution.

fsd

0.0.900

Removed from pypi

Blocked by Socket

This code is functionally a command execution and file-modification orchestrator. On its own it does not contain obviously obfuscated or explicitly malicious code (no hardcoded credentials, no encoded payloads), but it exposes high-risk sinks: arbitrary shell execution (shell=True) and unvalidated file writes. If an attacker or untrusted component can supply steps_json, commands, or file contents, they can execute arbitrary system commands, modify files, change directories, and thereby perform data theft, persistence, or other malicious actions. Use is unsafe without strict validation, allowlisting of commands/paths, and least-privilege execution environment. Recommend treating inputs as untrusted, removing shell=True or using shlex.split, validating/normalizing file paths, and sandboxing command execution.

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

py-ayiin

0.4.4.dev21

Live on pypi

Blocked by Socket

This module implements interactive session generation but also harvests highly sensitive secrets (API_ID/API_HASH, phone number OTP, 2FA password) and exports the resulting Telegram string session, transmitting it to a remote chat and pinning it. It also forces created accounts to join specific channels. This behavior constitutes credential exfiltration and a backdoor/supply-chain risk. Do not run or trust this module unless you fully control both the bot that receives the messages and the code; treat it as malicious for most threat models.

pidl-react

0.863.0

Removed from npm

Blocked by Socket

The source code exhibits clear signs of malicious behavior by sending environment variables to an obfuscated external server. This poses a significant security risk as it can lead to data breaches.

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

tram-deco

6.1.0

by jrjurman

Live on npm

Blocked by Socket

The fragment implements a powerful yet dangerous approach to building web components by evaluating template-embedded scripts. While this enables dynamic extensibility, it introduces significant security and supply-chain risks if templates are not fully trusted or validated. Best practice would be to avoid eval on untrusted content, implement sandboxing or a safe interpreter, and enforce strict content trust boundaries for template-driven component definitions.

react-global-components

0.1.25

by coolman555

Removed from npm

Blocked by Socket

Legitimate plugin loading system with security risks due to dynamic code execution and global namespace modification. Not malware but poses moderate security risk if plugin directory is compromised.

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

mcp-alchemy

2025.4.16.110003

Live on pypi

Blocked by Socket

No explicit obfuscated malware or remote backdoor code is present, but this module exposes high-risk functionality: it executes arbitrary SQL (with a writable DB connection), writes full result sets to disk, and exposes DB metadata in logs/tool descriptions. The save-to-local combined with a constructed public CDN-style URL is unusual and may enable accidental or deliberate data exfiltration. Use of this package should be restricted, and execute_query should be gated by strict authorization, query whitelisting or parameterization, enforced read-only connections, and careful handling or disabling of full-result file writes.

xync-client

0.0.69

Live on pypi

Blocked by Socket

This code is malicious in intent: it automates fraudulent interaction with a banking website, contains hardcoded sensitive credentials, evades automation detection, prompts an operator to supply OTPs (social-engineering), performs money transfers, and persists session state to disk for reuse. It should be treated as a tool for account takeover and financial theft. Do not run it; remove any storage_state files and investigate systems where it executed. The snippet also contains syntax errors and is incomplete, but those do not mitigate the clearly malicious purpose.

lila-framework

0.9.8

Live on pypi

Blocked by Socket

The fragment is structurally corrupted and contains elements that could enable a backdoor-like behavior: it attempts to ensure a database-admin user exists and to inject admin routes into main.py by modifying application code at runtime, and it prints credentials to stdout. While the code as provided is not executable due to syntax issues, the embedded intent and patterns (self-modifying behavior, admin credential generation, and route injection) constitute notable security risks and potential abuse vectors if deployed without thorough sanitization and proper safeguards.

mm_expand

2.2.0

by qiuwenwu

Live on npm

Blocked by Socket

This module is primarily a runtime helper, but it exposes a high-risk arbitrary code execution capability through `$.runCode`/`$.runScript` using `eval()` on caller-provided strings with no sandboxing. It also increases supply-chain attack surface by modifying `global.$`, supporting dynamic `require()` and module cache eviction/reload, and enabling event-loop blocking via busy-wait utilities. No explicit exfiltration or persistence is shown in this fragment, but the provided primitives are sufficient for an attacker to perform malicious actions elsewhere in the same process if inputs can be influenced.

plugin-syntax-jsx

99.10.9

by rtxb4bli

Removed from npm

Blocked by Socket

The code is designed to collect and send sensitive information to a remote server without the user's knowledge or consent. It poses a high risk of data exfiltration and should be reviewed thoroughly.

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

@jshookmcp/jshook

0.2.3

by vmoranv6

Live on npm

Blocked by Socket

The code is a dynamic loader/executable scaffold that reads and runs external obfuscated JavaScript within a Python-driven ExecJS context, while routing inputs through a signer function. While not inherently malicious by default, the architecture introduces a high security risk due to runtime execution of external code, potential data leakage via the signer, and a broad host capability surface via emulated browser APIs. It warrants strict provenance checks, whitelisting of obfuscated.js, isolation of the ExecJS environment, and avoidance of executing untrusted payloads at runtime.

routerxpl

0.8.0

Live on pypi

Blocked by Socket

This module is high-confidence offensive exploitation code. It performs an HTTP POST to a router debug CGI endpoint, authenticates with hardcoded credentials, injects operator-controlled commands into the request payload, parses the returned output, and—upon successful verification—starts an interactive remote command execution loop. Despite a likely typo/truncation in the boolean return statement, the malicious intent and execution flow are clear from the exploit workflow implemented in this file.

pybotnet

0.15.5

Live on pypi

Blocked by Socket

The fragment exhibits multiple high-risk patterns consistent with remote command execution and arbitrary file download capabilities: a MAC-based command namespace, an exposable shell command interface, and unvalidated file downloads. While several syntactic issues could cause runtime failures in isolation, the underlying design enables potential control over a host, data exfiltration, and arbitrary payload retrieval. Without proper authentication, input validation, and secure handling, this code represents a substantial security risk if incorporated into a project. The presence of backdoor-like behavior and self-contained control paths warrants immediate review or removal from any open-source distribution.

rap-sdk

0.1.13

by basemoz

Live on npm

Blocked by Socket

This code exhibits suspicious obfuscation patterns through unnecessary eval() usage combined with network request capabilities. The broken URL validation and environment-dependent behavior suggest either poor coding practices or intentional obfuscation to evade detection.

@asarioglo/npm-ghost-htb

1.23.470

Live on npm

Blocked by Socket

This JavaScript module executes immediately on import and performs the following malicious actions: 1) Enumerates all environment variables, scans their values for patterns matching HTB{.*?}, and collects any hits. 2) Recursively traverses specified host paths (e.g., /opt/hscan-supplychain-dynamic, /root/flag, /flag.txt), filters likely text files by extension and filename keywords (“flag”, “secret”, “token”), reads small files (≤2 MB), extracts matching HTB tokens, and captures directory metadata snapshots. 3) Aggregates environment hits, directory listings, file findings, and runtime metadata (process.cwd(), __filename) into a JSON payload. 4) Sends the payload via HTTP(S) POST to a hard-coded exfiltration endpoint at https://webhook[.]site/9abfee18-babc-4a9d-ae66-1b82ed6f436c. All error conditions are silently ignored to avoid detection. This behavior constitutes a supply-chain/backdoor malware that can expose sensitive credentials or internal data; remove the module immediately and rotate any exposed secrets.

color2.0.0

1.4.0

by adiostcheusia

Removed from npm

Blocked by Socket

The code contains clear indicators of malicious behavior. It collects sensitive information such as tokens, user data, and system information, and sends it to a Discord webhook. The obfuscation techniques used in the code further indicate an intent to hide its true functionality.

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

@antistud/handrails-cli

0.1.19

by antistud

Live on npm

Blocked by Socket

This module is a high-impact remote agent that exposes arbitrary filesystem reading/listing, shell command execution, and grep-based searching over a WebSocket RPC channel. Tool parameters are taken directly from remote messages and executed via fs.* and child_process.execSync with no authorization or sanitization in this file. Results are sent back over the network, enabling both remote compromise and data exfiltration if the remote bridge/authentication/transport is not strictly protected.

github.com/weaveworks/weave

v1.3.2-0.20151208230819-eddcf9394203

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.

tfjs-layers

0.2.0

by jpdtestjpd

Live on npm

Blocked by Socket

The file contains code that secretly gathers detailed system information, such as hostname, OS type, platform, release, architecture, local IP addresses, public IP address (fetched via an external API), username, and current working directory. It then transmits this data to external endpoints via HTTP GET and POST requests, and uses a WebSocket connection as a fallback. The endpoints are hardcoded, for example, to URLs like http://example.com/jpd3.php, http://example.com/jpd4.php, and wss://example.com/socket, which are not transparent or verified services. This behavior is indicative of malware designed for unauthorized data exfiltration.

github.com/juju/mgo/v3

v3.0.3

Live on go

Blocked by Socket

This JavaScript file contains destructive malware that targets MongoDB databases. The code connects to multiple MongoDB instances running on localhost across various ports (40001, 40002, 40011, etc.), authenticates using hardcoded credentials (username 'root' with password 'rapadura'), and performs the following malicious actions: (1) Systematically removes all user accounts except 'root' and 'reader' from authenticated instances, (2) Enumerates and drops all databases except system databases ('admin', 'local', 'config'), effectively wiping user data and destroying database integrity. The script includes retry logic to ensure successful execution and operates without any user confirmation or safety checks. This constitutes a severe supply chain attack designed to cause maximum data loss and denial of service on MongoDB installations.

groove-dev

0.24.1

by groove-ai

Live on npm

Blocked by Socket

This fragment implements the core mechanics of a WebSocket-based interactive terminal/session controller: it dynamically selects a shell/interpreter, forwards client-controlled input directly into a spawned process stdin, and streams resulting output/errors back over the network. That is a high-risk remote command execution pattern consistent with backdoors/remote shells unless tightly access-controlled and strongly sandboxed elsewhere. No explicit obfuscation is present in the shown code, and there is no direct evidence of credential theft in this fragment, but the capability itself is very dangerous.

cuckoo

2.0.3a4

Live on pypi

Blocked by Socket

The code implements functionality that can exfiltrate arbitrary files and logs over the network without encryption or user consent. This behavior constitutes a significant security risk and matches malware patterns related to data theft. Although the code is not obfuscated and does not contain explicit malware payloads like backdoors or reverse shells, the potential for unauthorized data leakage is high. Use of this code in a supply chain context should be carefully controlled and audited.

pinokiod

0.0.121

by cocktailpeanut

Live on npm

Blocked by Socket

The SweetAlert2 library code is mostly benign and serves as a UI modal dialog tool. However, it contains a suspicious and potentially malicious snippet that targets Russian users on certain domains to play an unsolicited audio prank, disabling pointer events and potentially disrupting user interaction. This behavior is unexpected and should be considered a moderate security risk and potential malware. The rest of the code shows no signs of malicious intent. The provided reports were invalid and unhelpful. Users should be cautious about this version of the library due to the embedded prank behavior.

github.com/gravitational/teleport

v0.0.0-20231229230901-af08644114b7

Live on go

Blocked by Socket

The script functions as a bootstrap installer that fetches a Teleport binary from a CDN, extracts it, and executes it with user-provided arguments. While common in bootstrap flows, this approach carries significant supply-chain risk due to lack of integrity verification, potential tampering of the CDN content, and execution of an external binary in the host environment. To reduce risk, add cryptographic verification (signatures/checksums), validate the artifact against a trusted manifest, constrain and sanitize teleportArgs, implement isolation (sandbox/container), and improve error handling with cleanup. Consider using pinned TLS/HTTPS, and validating the tarball contents before execution.

fsd

0.0.900

Removed from pypi

Blocked by Socket

This code is functionally a command execution and file-modification orchestrator. On its own it does not contain obviously obfuscated or explicitly malicious code (no hardcoded credentials, no encoded payloads), but it exposes high-risk sinks: arbitrary shell execution (shell=True) and unvalidated file writes. If an attacker or untrusted component can supply steps_json, commands, or file contents, they can execute arbitrary system commands, modify files, change directories, and thereby perform data theft, persistence, or other malicious actions. Use is unsafe without strict validation, allowlisting of commands/paths, and least-privilege execution environment. Recommend treating inputs as untrusted, removing shell=True or using shlex.split, validating/normalizing file paths, and sandboxing command execution.

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

py-ayiin

0.4.4.dev21

Live on pypi

Blocked by Socket

This module implements interactive session generation but also harvests highly sensitive secrets (API_ID/API_HASH, phone number OTP, 2FA password) and exports the resulting Telegram string session, transmitting it to a remote chat and pinning it. It also forces created accounts to join specific channels. This behavior constitutes credential exfiltration and a backdoor/supply-chain risk. Do not run or trust this module unless you fully control both the bot that receives the messages and the code; treat it as malicious for most threat models.

pidl-react

0.863.0

Removed from npm

Blocked by Socket

The source code exhibits clear signs of malicious behavior by sending environment variables to an obfuscated external server. This poses a significant security risk as it can lead to data breaches.

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

tram-deco

6.1.0

by jrjurman

Live on npm

Blocked by Socket

The fragment implements a powerful yet dangerous approach to building web components by evaluating template-embedded scripts. While this enables dynamic extensibility, it introduces significant security and supply-chain risks if templates are not fully trusted or validated. Best practice would be to avoid eval on untrusted content, implement sandboxing or a safe interpreter, and enforce strict content trust boundaries for template-driven component definitions.

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