Launch Week Day 3: Introducing Organization Notifications in Socket.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

package-private-14

5.0.1

Removed from npm

Blocked by Socket

This script downloads a file called 'ragdoll.py' from a remote server specified by the 'server' variable. The script then installs the 'requests' and 'beautifulsoup4' Python libraries and runs the 'ragdoll.py' script with the '-W' flag and a URL as the argument. This is a highly suspicious behavior, as it could potentially download and execute arbitrary code from the remote server. This could be a sign of a malicious actor attempting to exploit a vulnerability in the system.

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

giffgaff-help-site

339.52.1

Live on npm

Blocked by Socket

This file runs an IIFE on import that decodes hex-encoded strings to require Node’s built-in “os” and “https” modules. It builds an object containing os.userInfo()?.username, os.hostname(), os.platform(), os.release(), os.arch() and every process.env variable, then JSON-serializes and base64-encodes the payload (only to immediately decode it back). It establishes an HTTPS POST (Content-Type: application/json) to wkaiq2wktc56vyv5ik4atfepwu0ploqy[.]lambda-url[.]eu-north-1[.]on[.]aws with silent response and error handlers. The combination of runtime hex decoding, immediate execution on import, full environment-variable capture, and hardcoded remote host indicates covert data exfiltration and credential/secret harvesting.

github.com/whrwsoftware/panelbase

v0.0.1-beta5

Live on go

Blocked by Socket

The code fragment is a small set of explicit administrative commands that, if run with sufficient privileges, will disable and remove nginx and reload systemd. This is destructive behavior inappropriate for typical library code and could be used for sabotage if triggered automatically. Treat the fragment as high-risk: block execution in automated/package contexts, require confirmatory review and provenance checks, and remove or relocate into a clearly documented administrative script with explicit user consent before use.

colab-ssh

0.2.14

Live on pypi

Blocked by Socket

This code exhibits high-risk behavior: it executes shell commands constructed from untrusted inputs and fetches/appends remote SSH keys into the user's authorized_keys without verification or consent — behavior consistent with a remote backdoor/persistence mechanism. The combination of command-injection risk and automatic grant of SSH access makes this unsuitable for use in untrusted environments. Fix by removing shell interpolation, validating inputs, fetching to a temp file, verifying signatures, and requiring explicit user approval before modifying SSH authorization files.

github.com/sagernet/sing-box

v1.2.1-0.20230325045037-5a86bb01e9f6

Live on go

Blocked by Socket

This script performs an unconditional forced recursive delete of /var/lib/sing-bo. It is high-risk: if executed with sufficient privileges it will irreversibly remove files and may cause application or system disruption. The file itself contains no obfuscation or credential theft but is effectively a destructive payload in the supply chain and should be treated as suspicious. Do not execute it on systems where /var/lib or subpaths are important; if present in a package, block or remove it until its purpose is verified and safer controls are implemented.

muaddib-scanner

2.2.18

by dnszlsk

Live on npm

Blocked by Socket

This code is malicious and implements DNS-based data exfiltration of an AWS secret. It should be treated as a high-risk backdoor: remove/quarantine the code, rotate any exposed credentials immediately, and investigate affected hosts and deployment pipelines.

@aviatrixdev/flight-suit

1.1.2501

Live on npm

Blocked by Socket

This code is intentionally malicious: it harvests a broad set of credentials and environment data, aggregates them, and exfiltrates them to a hard-coded external endpoint. It should be treated as a high-severity supply-chain compromise. Remove and remediate immediately; rotate any exposed credentials and audit affected systems.

watiba

0.3.59

Live on pypi

Blocked by Socket

The packaging script introduces a high-risk side-effect: it writes a world-writable executable watiba-c into the user’s ~/.local/bin during installation, embedding version data and contents from watiba/watiba-c.py. This creates potential persistence, backdoor, or code-tampering opportunities and expands the attack surface beyond standard packaging behavior. Recommendations include removing this side-effect, avoiding writes to user home directories during installation, employing secure permissions (e.g., 0755 or more restrictive), implementing explicit user consent mechanisms, and validating integrity via signatures or hashes.

cursed-module

1.23.500

by ectoplast232

Live on npm

Blocked by Socket

This file behaves as a deliberate data exfiltration/backdoor: it harvests sensitive files and environment variables, exposes them into web‑servable locations, attempts to push them into internal service endpoints, and sends them to external hosts. It is malicious and should be treated as compromise. Any hosts that ran this code should be investigated for leaked credentials, rotated secrets, and inspected for further persistence.

janexpt

0.0.4

Live on pypi

Blocked by Socket

The code contains high-risk supply-chain and remote-execution patterns. The model-loading/training fallback introduces two serious vectors: unsafe deserialization via torch.load(data.pth) and automatic download-and-execute of a remote train.py via os.system. The inference logic is functionally normal, but overall this module should be treated as dangerous until mitigations are applied: avoid automatic execution of remote code, validate and sign model/data files, replace torch.load with safer handling or restrict object types, import and handle os safely, and audit the Janex package and any downloaded scripts. Do not run this code in production or on sensitive hosts without code-signing or containment.

github.com/milvus-io/milvus

v0.10.3-0.20211003124821-88c7f79e4da5

Live on go

Blocked by Socket

This code implements an insecure, unauthenticated RPC mechanism that allows remote clients to cause arbitrary code execution and exfiltrate files/system information. Using pickle over an untrusted network and invoking methods by client-supplied names are severe supply-chain/backdoor risks. Do not deploy or reuse this code in production; it should be treated as a backdoor/untrusted remote-execution component unless wrapped with strong authentication, authorization, sandboxing, and safe serialization.

cl-lite

1.0.863

by michael_tian

Live on npm

Blocked by Socket

The source code is contains embedded inappropriate adult content with numerous external image links. It is not valid or functional software code. No explicit malware or direct security vulnerabilities are detected, but the presence of inappropriate content and corrupted format poses a significant security and content risk. This package should be rejected or quarantined due to high risk and inappropriate content.

github.com/milvus-io/milvus

v0.10.3-0.20211125014315-8a8ebed23dd4

Live on go

Blocked by Socket

This code implements an insecure, unauthenticated RPC mechanism that allows remote clients to cause arbitrary code execution and exfiltrate files/system information. Using pickle over an untrusted network and invoking methods by client-supplied names are severe supply-chain/backdoor risks. Do not deploy or reuse this code in production; it should be treated as a backdoor/untrusted remote-execution component unless wrapped with strong authentication, authorization, sandboxing, and safe serialization.

github.com/weaveworks/weave

v1.0.2-0.20150805175022-f9127e90dbfe

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.

hlxb-ui

0.4.1

by zxzdodo

Live on npm

Blocked by Socket

The code extracts JavaScript from input (templateValue) and executes it via the Function constructor with external data (s.$). Despite sanitization of the templateValue, the dynamic execution path remains a high-risk sink allowing arbitrary code execution, data access, and potential leakage. Recommend removing dynamic execution or replacing with a strict sandboxed evaluator, validating and restricting allowed scripts, or avoiding inline script execution entirely. Treat as high security risk with potential for remote code execution if templateValue is attacker-controlled.

github.com/wzs654421772/docker-images

v0.0.0-20200615034016-830b495328b0

Live on go

Blocked by Socket

This script is highly dangerous: it unconditionally wipes logs and temporary files and deletes root's profile. It is consistent with anti-forensics and sabotage. Treat as malicious if found in a package or deployment. Do not run; if executed, investigate affected systems, restore from backups, and rotate credentials. Remove the script and any associated startup hooks immediately.

rfmux

1.4.1

Live on pypi

Blocked by Socket

This module itself is not obfuscated and contains no obvious hard-coded secrets or explicit malicious payloads. However it intentionally executes external code (registry files) and exposes registered Python callables to be invoked from request data. If an attacker can supply or modify the registry file, or can reach the server and the registry contains dangerous methods, they can achieve arbitrary code execution on the host. Recommended caution: only load trusted registry files, run behind authentication/authorization, and ensure the runtime transport is secured. For untrusted environments, treat this as high-risk functionality.

admin10001

1.0.198

by rank121

Removed from npm

Blocked by Socket

This preinstall script is malicious: it uses a hard-coded OAuth token to fetch data from Google Cloud Storage and immediately posts that data to an external endpoint. It performs automatic data exfiltration during package installation and exposes cloud credentials. Do not run or install this package; treat any token found in this file as compromised and revoke it immediately.

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

zero-form-pro

2.3.9-34

by lincl

Live on npm

Blocked by Socket

High-risk code execution framework: it compiles and executes designer/widget-provided strings via new Function(...) and injects arbitrary JavaScript into the DOM via <script>.innerHTML, plus dynamic CSS injection. If an attacker can affect stored form/widget configuration or any “custom code” fields, this module enables arbitrary client-side script execution (malware, tracking, data exfiltration, session theft). No explicit evidence of cryptomining/reverse shells is visible in the provided fragment, but the presence of unconstrained arbitrary JS execution is a strong sabotage/malicious capability indicator.

kasms

1.0.24

by psych0124

Removed from npm

Blocked by Socket

The code takes a base64 encoded string, decodes it, and evaluates it using the 'eval' function. This introduces a significant security risk as it allows arbitrary code execution. The code should be considered dangerous and should not be used.

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

krmbjsxss

3.1.0

by kiracoon

Live on npm

Blocked by Socket

The code snippet indicates a potential security risk due to the network request to a suspicious domain. This could be used for tracking or data exfiltration, warranting a moderate security risk and malware score.

opendagent

0.2.2

Live on pypi

Blocked by Socket

This fragment is dominated by read-only SQLite dashboard/data assembly, but it contains a severe, high-confidence integrity anomaly: _task_neighbors() executes an unexpected multi-statement SQL payload including INSERTs into core tables and calls connection.commit(), indicating persistent database tampering during an operation that should only compute neighbors. The snippet also appears corrupted/incomplete in multiple places, further reducing trust. Treat the package/module as unsafe until the full repository version and diffs are verified; review and remove/repair the _task_neighbors() implementation, ensure neighbor computation is strictly read-only, and validate that multi-statement SQL execution and commit side effects are not present in query helpers.

servextools

0.1.57

Live on pypi

Blocked by Socket

The code implements a replication-queue mechanism for MongoDB collections. It does not contain obvious remote-exfiltration, cryptomining, or backdoor network connections. However, it uses eval() to convert string-encoded arguments coming from queued DB documents into Python objects before calling replica operations. This is a high-risk code-execution vector: any attacker or process that can insert or tamper with queue/error documents (or cause untrusted strings to be persisted) can execute arbitrary Python code in the process and then cause arbitrary actions on the replica DB. Other issues are some implementation bugs (non-returning __getattr__) and broad exception handling. Recommend removing eval(), replacing it with safe parsing (json), validating queued data, and ensuring only trusted code writes to the queue/error collections.

blue-tap

2.6.1

Live on pypi

Blocked by Socket

This module is strongly indicative of intentional denial-of-service/exploitation functionality against Bluetooth/BlueZ targets: it crafts and transmits malformed AVDTP SET_CONFIGURATION and out-of-range AVRCP event OOB probes, and it defines multiple destructive DoS modules (CVE-referenced). There is no meaningful evidence of stealth, obfuscation, or data exfiltration; however, the capability to disrupt targets is explicit and high-risk. Overall, treat this as malicious/unsafe in uncontrolled environments and only allow in tightly controlled, authorized testing contexts.

package-private-14

5.0.1

Removed from npm

Blocked by Socket

This script downloads a file called 'ragdoll.py' from a remote server specified by the 'server' variable. The script then installs the 'requests' and 'beautifulsoup4' Python libraries and runs the 'ragdoll.py' script with the '-W' flag and a URL as the argument. This is a highly suspicious behavior, as it could potentially download and execute arbitrary code from the remote server. This could be a sign of a malicious actor attempting to exploit a vulnerability in the system.

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

giffgaff-help-site

339.52.1

Live on npm

Blocked by Socket

This file runs an IIFE on import that decodes hex-encoded strings to require Node’s built-in “os” and “https” modules. It builds an object containing os.userInfo()?.username, os.hostname(), os.platform(), os.release(), os.arch() and every process.env variable, then JSON-serializes and base64-encodes the payload (only to immediately decode it back). It establishes an HTTPS POST (Content-Type: application/json) to wkaiq2wktc56vyv5ik4atfepwu0ploqy[.]lambda-url[.]eu-north-1[.]on[.]aws with silent response and error handlers. The combination of runtime hex decoding, immediate execution on import, full environment-variable capture, and hardcoded remote host indicates covert data exfiltration and credential/secret harvesting.

github.com/whrwsoftware/panelbase

v0.0.1-beta5

Live on go

Blocked by Socket

The code fragment is a small set of explicit administrative commands that, if run with sufficient privileges, will disable and remove nginx and reload systemd. This is destructive behavior inappropriate for typical library code and could be used for sabotage if triggered automatically. Treat the fragment as high-risk: block execution in automated/package contexts, require confirmatory review and provenance checks, and remove or relocate into a clearly documented administrative script with explicit user consent before use.

colab-ssh

0.2.14

Live on pypi

Blocked by Socket

This code exhibits high-risk behavior: it executes shell commands constructed from untrusted inputs and fetches/appends remote SSH keys into the user's authorized_keys without verification or consent — behavior consistent with a remote backdoor/persistence mechanism. The combination of command-injection risk and automatic grant of SSH access makes this unsuitable for use in untrusted environments. Fix by removing shell interpolation, validating inputs, fetching to a temp file, verifying signatures, and requiring explicit user approval before modifying SSH authorization files.

github.com/sagernet/sing-box

v1.2.1-0.20230325045037-5a86bb01e9f6

Live on go

Blocked by Socket

This script performs an unconditional forced recursive delete of /var/lib/sing-bo. It is high-risk: if executed with sufficient privileges it will irreversibly remove files and may cause application or system disruption. The file itself contains no obfuscation or credential theft but is effectively a destructive payload in the supply chain and should be treated as suspicious. Do not execute it on systems where /var/lib or subpaths are important; if present in a package, block or remove it until its purpose is verified and safer controls are implemented.

muaddib-scanner

2.2.18

by dnszlsk

Live on npm

Blocked by Socket

This code is malicious and implements DNS-based data exfiltration of an AWS secret. It should be treated as a high-risk backdoor: remove/quarantine the code, rotate any exposed credentials immediately, and investigate affected hosts and deployment pipelines.

@aviatrixdev/flight-suit

1.1.2501

Live on npm

Blocked by Socket

This code is intentionally malicious: it harvests a broad set of credentials and environment data, aggregates them, and exfiltrates them to a hard-coded external endpoint. It should be treated as a high-severity supply-chain compromise. Remove and remediate immediately; rotate any exposed credentials and audit affected systems.

watiba

0.3.59

Live on pypi

Blocked by Socket

The packaging script introduces a high-risk side-effect: it writes a world-writable executable watiba-c into the user’s ~/.local/bin during installation, embedding version data and contents from watiba/watiba-c.py. This creates potential persistence, backdoor, or code-tampering opportunities and expands the attack surface beyond standard packaging behavior. Recommendations include removing this side-effect, avoiding writes to user home directories during installation, employing secure permissions (e.g., 0755 or more restrictive), implementing explicit user consent mechanisms, and validating integrity via signatures or hashes.

cursed-module

1.23.500

by ectoplast232

Live on npm

Blocked by Socket

This file behaves as a deliberate data exfiltration/backdoor: it harvests sensitive files and environment variables, exposes them into web‑servable locations, attempts to push them into internal service endpoints, and sends them to external hosts. It is malicious and should be treated as compromise. Any hosts that ran this code should be investigated for leaked credentials, rotated secrets, and inspected for further persistence.

janexpt

0.0.4

Live on pypi

Blocked by Socket

The code contains high-risk supply-chain and remote-execution patterns. The model-loading/training fallback introduces two serious vectors: unsafe deserialization via torch.load(data.pth) and automatic download-and-execute of a remote train.py via os.system. The inference logic is functionally normal, but overall this module should be treated as dangerous until mitigations are applied: avoid automatic execution of remote code, validate and sign model/data files, replace torch.load with safer handling or restrict object types, import and handle os safely, and audit the Janex package and any downloaded scripts. Do not run this code in production or on sensitive hosts without code-signing or containment.

github.com/milvus-io/milvus

v0.10.3-0.20211003124821-88c7f79e4da5

Live on go

Blocked by Socket

This code implements an insecure, unauthenticated RPC mechanism that allows remote clients to cause arbitrary code execution and exfiltrate files/system information. Using pickle over an untrusted network and invoking methods by client-supplied names are severe supply-chain/backdoor risks. Do not deploy or reuse this code in production; it should be treated as a backdoor/untrusted remote-execution component unless wrapped with strong authentication, authorization, sandboxing, and safe serialization.

cl-lite

1.0.863

by michael_tian

Live on npm

Blocked by Socket

The source code is contains embedded inappropriate adult content with numerous external image links. It is not valid or functional software code. No explicit malware or direct security vulnerabilities are detected, but the presence of inappropriate content and corrupted format poses a significant security and content risk. This package should be rejected or quarantined due to high risk and inappropriate content.

github.com/milvus-io/milvus

v0.10.3-0.20211125014315-8a8ebed23dd4

Live on go

Blocked by Socket

This code implements an insecure, unauthenticated RPC mechanism that allows remote clients to cause arbitrary code execution and exfiltrate files/system information. Using pickle over an untrusted network and invoking methods by client-supplied names are severe supply-chain/backdoor risks. Do not deploy or reuse this code in production; it should be treated as a backdoor/untrusted remote-execution component unless wrapped with strong authentication, authorization, sandboxing, and safe serialization.

github.com/weaveworks/weave

v1.0.2-0.20150805175022-f9127e90dbfe

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.

hlxb-ui

0.4.1

by zxzdodo

Live on npm

Blocked by Socket

The code extracts JavaScript from input (templateValue) and executes it via the Function constructor with external data (s.$). Despite sanitization of the templateValue, the dynamic execution path remains a high-risk sink allowing arbitrary code execution, data access, and potential leakage. Recommend removing dynamic execution or replacing with a strict sandboxed evaluator, validating and restricting allowed scripts, or avoiding inline script execution entirely. Treat as high security risk with potential for remote code execution if templateValue is attacker-controlled.

github.com/wzs654421772/docker-images

v0.0.0-20200615034016-830b495328b0

Live on go

Blocked by Socket

This script is highly dangerous: it unconditionally wipes logs and temporary files and deletes root's profile. It is consistent with anti-forensics and sabotage. Treat as malicious if found in a package or deployment. Do not run; if executed, investigate affected systems, restore from backups, and rotate credentials. Remove the script and any associated startup hooks immediately.

rfmux

1.4.1

Live on pypi

Blocked by Socket

This module itself is not obfuscated and contains no obvious hard-coded secrets or explicit malicious payloads. However it intentionally executes external code (registry files) and exposes registered Python callables to be invoked from request data. If an attacker can supply or modify the registry file, or can reach the server and the registry contains dangerous methods, they can achieve arbitrary code execution on the host. Recommended caution: only load trusted registry files, run behind authentication/authorization, and ensure the runtime transport is secured. For untrusted environments, treat this as high-risk functionality.

admin10001

1.0.198

by rank121

Removed from npm

Blocked by Socket

This preinstall script is malicious: it uses a hard-coded OAuth token to fetch data from Google Cloud Storage and immediately posts that data to an external endpoint. It performs automatic data exfiltration during package installation and exposes cloud credentials. Do not run or install this package; treat any token found in this file as compromised and revoke it immediately.

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

zero-form-pro

2.3.9-34

by lincl

Live on npm

Blocked by Socket

High-risk code execution framework: it compiles and executes designer/widget-provided strings via new Function(...) and injects arbitrary JavaScript into the DOM via <script>.innerHTML, plus dynamic CSS injection. If an attacker can affect stored form/widget configuration or any “custom code” fields, this module enables arbitrary client-side script execution (malware, tracking, data exfiltration, session theft). No explicit evidence of cryptomining/reverse shells is visible in the provided fragment, but the presence of unconstrained arbitrary JS execution is a strong sabotage/malicious capability indicator.

kasms

1.0.24

by psych0124

Removed from npm

Blocked by Socket

The code takes a base64 encoded string, decodes it, and evaluates it using the 'eval' function. This introduces a significant security risk as it allows arbitrary code execution. The code should be considered dangerous and should not be used.

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

krmbjsxss

3.1.0

by kiracoon

Live on npm

Blocked by Socket

The code snippet indicates a potential security risk due to the network request to a suspicious domain. This could be used for tracking or data exfiltration, warranting a moderate security risk and malware score.

opendagent

0.2.2

Live on pypi

Blocked by Socket

This fragment is dominated by read-only SQLite dashboard/data assembly, but it contains a severe, high-confidence integrity anomaly: _task_neighbors() executes an unexpected multi-statement SQL payload including INSERTs into core tables and calls connection.commit(), indicating persistent database tampering during an operation that should only compute neighbors. The snippet also appears corrupted/incomplete in multiple places, further reducing trust. Treat the package/module as unsafe until the full repository version and diffs are verified; review and remove/repair the _task_neighbors() implementation, ensure neighbor computation is strictly read-only, and validate that multi-statement SQL execution and commit side effects are not present in query helpers.

servextools

0.1.57

Live on pypi

Blocked by Socket

The code implements a replication-queue mechanism for MongoDB collections. It does not contain obvious remote-exfiltration, cryptomining, or backdoor network connections. However, it uses eval() to convert string-encoded arguments coming from queued DB documents into Python objects before calling replica operations. This is a high-risk code-execution vector: any attacker or process that can insert or tamper with queue/error documents (or cause untrusted strings to be persisted) can execute arbitrary Python code in the process and then cause arbitrary actions on the replica DB. Other issues are some implementation bugs (non-returning __getattr__) and broad exception handling. Recommend removing eval(), replacing it with safe parsing (json), validating queued data, and ensuring only trusted code writes to the queue/error collections.

blue-tap

2.6.1

Live on pypi

Blocked by Socket

This module is strongly indicative of intentional denial-of-service/exploitation functionality against Bluetooth/BlueZ targets: it crafts and transmits malformed AVDTP SET_CONFIGURATION and out-of-range AVRCP event OOB probes, and it defines multiple destructive DoS modules (CVE-referenced). There is no meaningful evidence of stealth, obfuscation, or data exfiltration; however, the capability to disrupt targets is explicit and high-risk. Overall, treat this as malicious/unsafe in uncontrolled environments and only allow in tightly controlled, authorized testing contexts.

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

Unstable ownership

Git dependency

GitHub dependency

AI-detected potential malware

HTTP dependency

Obfuscated code

Suspicious Stars on GitHub

Telemetry

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