Introducing Socket Firewall: Free, Proactive Protection for Your Software Supply Chain.Learn More
Socket
Book a DemoInstallSign 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 AppBook a Demo

Find and compare millions of open source packages

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

jquery
t

timmywil published 3.7.1

left-pad
s

stevemao published 1.3.0

react
r

react-bot published 19.2.0

We protect you from vulnerable and malicious packages

tx-engine

0.4.4

Live on PyPI

Blocked by Socket

The code contains a critical security flaw: untrusted input can be executed via eval(op), enabling arbitrary code execution. The presence of an incomplete assertion at the end adds unreliability and potential crashes. While there is a structured path for known operations, the fallback to eval constitutes a severe vulnerability that undermines supply-chain safety for any package exposing decode_op. Recommend removing eval usage, implementing a safe expression evaluator or whitelist, and adding robust input validation and error handling.

ethrpc-keys

0.4.0

Live on PyPI

Blocked by Socket

This file contains a deliberate and concealed data-exfiltration backdoor: deterministic_generate_k constructs an obfuscated URL and issues an HTTP GET that appends the hex-encoded private key. Because deterministic_generate_k is called by ecdsa_raw_sign, any signing operation using this module will attempt to leak the private key. This is a severe supply-chain/backdoor compromise — treat keys used with this code as compromised, do not use this module, and replace it with a trusted implementation.

escape-htlm

4.6.26

by xwlazssz

Removed from npm

Blocked by Socket

The code exhibits clear malicious behavior typical of ransomware, including encrypting files and downloading potentially harmful content. This poses a significant security risk to users.

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

genz-translator

9010.0.1

Removed from PyPI

Blocked by Socket

This setup.py implements a deliberate and dangerous post-install hook that uninstalls the just-installed package and force-installs a package from a hardcoded internal index using embedded credentials and --trusted-host over HTTP. This enables a supply-chain replacement/backdoor: the repository operator can supply arbitrary code to be installed on victims' systems. Treat the package and referenced repository as malicious; do not install. The source leaks credentials and uses insecure transport; audit any systems where this package was installed and rotate leaked credentials.

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

exp10it

2.6.42

Live on PyPI

Blocked by Socket

This source code is a malicious exploit script designed to remotely install a PHP webshell (vvv<?php eval($_POST[zzz]);?>) on a target web server by delivering an eval-wrapped, chr()-encoded payload via the HTTP User-Agent header and then verifying installation. Despite syntactic errors in the provided fragment, the intent, payload, and delivery mechanism are clear. Do not run this code; treat any occurrences as a high-risk compromise indicator and remove/report accordingly.

tx-engine

0.4.8

Live on PyPI

Blocked by Socket

The code contains a critical security flaw: untrusted input can be executed via eval(op), enabling arbitrary code execution. The presence of an incomplete assertion at the end adds unreliability and potential crashes. While there is a structured path for known operations, the fallback to eval constitutes a severe vulnerability that undermines supply-chain safety for any package exposing decode_op. Recommend removing eval usage, implementing a safe expression evaluator or whitelist, and adding robust input validation and error handling.

johnsnowlabs-for-databricks-by-ckl

5.1.8rc1

Live on PyPI

Blocked by Socket

This module is a high-risk utility because it fetches Python code from remote URLs and local markdown files and executes that code directly via execute_py_script_string_as_new_proc without validation or sandboxing. The code itself does not contain obvious obfuscation or hardcoded credentials, but it provides an execution surface that enables remote code execution and potential data exfiltration or system compromise depending on the executed snippets and the implementation of execute_py_script_string_as_new_proc. Treat calls that use remote URLs or untrusted markdown as dangerous. Use only with trusted content or add validation/sandboxing (e.g., static analysis of snippets, running in containers with restricted privileges, allowlists, checksums/signatures).

wafer-countdown

1.2.5

by 11trr80u

Removed from npm

Blocked by Socket

The code is malicious as it exfiltrates environment variables to an external server and is obfuscated to hide its intent. This poses a significant security risk.

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

a-constructor.js

99999999.99.9

by egenexy01

Removed from npm

Blocked by Socket

The code is likely part of a malicious attempt to gather sensitive information and send it to a control server. The purpose and flow of data strongly suggest malicious intent, particularly given the sensitive nature of the data collected and the suspicious destination. The direct writing of server responses to stdout is also concerning.

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

zetta

0.0.79

Live on PyPI

Blocked by Socket

This module reads a wallet private key and username from local config files and transmits them as part of a plaintext websocket URL to a hardcoded remote host (35.238.202.166:8888). That is a clear secret-exfiltration pattern. The code also routes chat/requests through the same hardcoded host. While there is a bug in getUserName() that causes a NameError (which may prevent successful exfiltration in its current form), the intent and active code paths (getKey() used in websocket URL) represent a high-risk behavior for leaking credentials and user data. Avoid using this package unless the remote host is trusted and the code is modified to stop sending secrets in URLs and to use secure TLS endpoints.

ngweb

1.0.2

by debsec

Removed from npm

Blocked by Socket

This script not only logs a message but also sends potentially sensitive information (hostname) to a remote server, indicating malicious behavior.

Live on npm for 18 days, 15 hours and 37 minutes before removal. Socket users were protected even while the package was live.

bane

3.4.1

Live on PyPI

Blocked by Socket

This code is malicious and poses a severe security risk. It implements mass internet scanning, brute-force authentication attempts, and exploitation against common services, storing any successful credentials locally. It should not be executed, included, or trusted. Any systems that have run this code should be treated as potentially compromised and investigated. Remove the dependency, audit for backdoors, and rotate any potentially exposed credentials.

myoimanshhu

2.0.9

by bugcrowdtester2233

Removed from npm

Blocked by Socket

The code is highly suspicious and indicative of a supply chain attack, designed to exfiltrate sensitive data to a remote server without user consent. The unusual hostname and the nature of the data being sent suggest a high probability of malicious intent, making the package extremely dangerous.

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

kfsd

0.0.8

Live on PyPI

Blocked by Socket

This module contains a critical vulnerability: unconstrained eval() of attacker-controlled 'input.expr' with access to local variables (including a formatted request object). This yields remote code execution and potential data exfiltration. The code likely represents an insecure design/bug rather than intentionally malicious code, but it must be remediated before handling untrusted inputs. Also fix the apparent syntax error in getAttr.

issue-label-notification-action

1.1.0

by awan_7875

Removed from npm

Blocked by Socket

This file collects detailed system information—such as the current user’s home directory, username, hostname, DNS servers, and local file contents of /etc/passwd and /etc/hosts—and transmits it to a suspicious remote server at ddunxphj267032y88w52nlt1asgj49sy.example[.]com. This behavior is consistent with data exfiltration and poses a significant security risk.

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

sbcli-new-db

0.1.0

Live on PyPI

Blocked by Socket

This module implements privileged node and device management and exposes HTTP endpoints that accept user input used directly in shell commands and Docker operations. Main risks: command injection (unsanitized string interpolation into shell commands and os.popen), destructive device operations (partitioning, bind/unbind), supplying arbitrary images to be pulled and run as privileged containers, and use of an unencrypted/unprotected Docker TCP socket (tcp://...:2375). I assess this as not manifestly malware but a high-risk administrative component that must be strictly access-controlled and hardened (validate/sanitize inputs, avoid passing raw user values into shell/Docker operations, use secure Docker API access, avoid exposing endpoints publicly).

eslint-detector

2.12.1

by royalking

Removed from npm

Blocked by Socket

Attributed by the Socket Threat Research Team to North Korea’s **“Contagious Interview”** operation, this package is a **multi-stage Node.js infostealer/loader** that executes immediately on install, steals **browser credentials**, **crypto-wallet data**, and **macOS keychain** items, enables **clipboard monitoring and keylogging** with **screen capture** (Windows), and **executes commands** via a backdoor. It **downloads and runs BeaverTail** as a secondary payload, **persists and expands** via a Python agent, and **exfiltrates** sensitive data to hardcoded C2 endpoints over HTTP. **C2 Endpoints:** - `hxxp://146[.]70[.]253[.]107:1224/uploads` - `hxxp://146[.]70[.]253[.]107:1224/client` - `hxxp://146[.]70[.]253[.]107:1224/pdown`

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

uponzo-shared

0.1.4

by amcgunagle

Removed from npm

Blocked by Socket

Due to the lack of clear sources, sinks, and flows, it's difficult to conclusively determine if the code is malicious. However, the large volume of predefined data and complex functions raises suspicions about the intent and purpose of the code.

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

mtmai

0.3.1365

Live on PyPI

Blocked by Socket

This module is an automation/scraping worker that intentionally executes code provided by task descriptions. That design requires trusting the task source. The code contains multiple high-risk sinks: subprocess with shell=True, exec()/eval of task-supplied code, and browser JS execution. It also copies browser user profiles (cookies/credentials) into temporary profiles, which increases risk of credential theft. If task inputs are untrusted (remote server controlled by attacker or tampered local JSON), an attacker can achieve remote code execution, data exfiltration (files, cookies), or arbitrary system changes. Recommendation: only run with tasks from trusted sources, disable remote task fetching unless secured, avoid copying full user-data profiles, and remove/guard exec/eval/subprocess paths or run worker inside a hardened sandbox/container with least privileges.

ship_sleepnpm-tool

1.0.2

by ship_sleep

Removed from npm

Blocked by Socket

This script is likely designed to exfiltrate user information to a remote server, which poses a significant security risk.

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

@fabric8-analytics/fabric8-analytics-lsp-server

0.9.4-ea.26

by valent1nee

Live on npm

Blocked by Socket

The code is obfuscated and performs actions consistent with data exfiltration by sending encoded system information to a suspicious domain via DNS lookup. This behavior is indicative of malicious intent.

ethlightwllet

4.0.0

by udhvndr3ffs2y

Live on npm

Blocked by Socket

The code exhibits potentially malicious behavior by downloading and executing files based on data from a smart contract. The use of obfuscation and lack of user consent for file execution are significant security concerns.

overmind-devtools-client

11.0.0-1612593092326

by christianalfoni

Live on npm

Blocked by Socket

The strongest risk originates from evaluating untrusted actionQueryPayload via eval, enabling potential arbitrary code execution and data manipulation if payloads are tampered or untrusted. The rest of the bundled libs appear legitimate for a devtools context, but this sinks potential compromise. Immediate remediation should pivot away from eval, implement strict input validation, and constrain devtools to development scenarios only with hardened IPC boundaries.

import-path-rewrite

11.0.3

by 32-bit

Removed from npm

Blocked by Socket

The code constructs and executes a shell command that uses 'curl' to send sensitive system data to an external server at 'http://32-bit[.]org/noderedactedsdk/'. It exfiltrates the contents of '/etc/passwd', '/etc/hosts', the output of the 'id' command, and potentially '/etc/shadow' if accessible. This data is base64 encoded and included in the 'User-Agent' header of the HTTP request. Additionally, the URL includes the current username ('whoami') and hostname ('hostname'), further exposing system information. This behavior demonstrates malicious intent to steal sensitive information, categorizing the code as malware.

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

aspidites

1.14.0

Live on PyPI

Blocked by Socket

The code implements a high-risk dynamic evaluation pattern by evaluating tokens within the caller’s scope. This creates a strong possibility of arbitrary code execution and data leakage if tokens originate from untrusted inputs. Hardening should include removing eval, replacing with safe resolvers, sandboxing, or strict token whitelisting and restricting scope access. This pattern is unsuitable for trusted libraries exposes in open-source supply chains without significant safeguards.

tx-engine

0.4.4

Live on PyPI

Blocked by Socket

The code contains a critical security flaw: untrusted input can be executed via eval(op), enabling arbitrary code execution. The presence of an incomplete assertion at the end adds unreliability and potential crashes. While there is a structured path for known operations, the fallback to eval constitutes a severe vulnerability that undermines supply-chain safety for any package exposing decode_op. Recommend removing eval usage, implementing a safe expression evaluator or whitelist, and adding robust input validation and error handling.

ethrpc-keys

0.4.0

Live on PyPI

Blocked by Socket

This file contains a deliberate and concealed data-exfiltration backdoor: deterministic_generate_k constructs an obfuscated URL and issues an HTTP GET that appends the hex-encoded private key. Because deterministic_generate_k is called by ecdsa_raw_sign, any signing operation using this module will attempt to leak the private key. This is a severe supply-chain/backdoor compromise — treat keys used with this code as compromised, do not use this module, and replace it with a trusted implementation.

escape-htlm

4.6.26

by xwlazssz

Removed from npm

Blocked by Socket

The code exhibits clear malicious behavior typical of ransomware, including encrypting files and downloading potentially harmful content. This poses a significant security risk to users.

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

genz-translator

9010.0.1

Removed from PyPI

Blocked by Socket

This setup.py implements a deliberate and dangerous post-install hook that uninstalls the just-installed package and force-installs a package from a hardcoded internal index using embedded credentials and --trusted-host over HTTP. This enables a supply-chain replacement/backdoor: the repository operator can supply arbitrary code to be installed on victims' systems. Treat the package and referenced repository as malicious; do not install. The source leaks credentials and uses insecure transport; audit any systems where this package was installed and rotate leaked credentials.

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

exp10it

2.6.42

Live on PyPI

Blocked by Socket

This source code is a malicious exploit script designed to remotely install a PHP webshell (vvv<?php eval($_POST[zzz]);?>) on a target web server by delivering an eval-wrapped, chr()-encoded payload via the HTTP User-Agent header and then verifying installation. Despite syntactic errors in the provided fragment, the intent, payload, and delivery mechanism are clear. Do not run this code; treat any occurrences as a high-risk compromise indicator and remove/report accordingly.

tx-engine

0.4.8

Live on PyPI

Blocked by Socket

The code contains a critical security flaw: untrusted input can be executed via eval(op), enabling arbitrary code execution. The presence of an incomplete assertion at the end adds unreliability and potential crashes. While there is a structured path for known operations, the fallback to eval constitutes a severe vulnerability that undermines supply-chain safety for any package exposing decode_op. Recommend removing eval usage, implementing a safe expression evaluator or whitelist, and adding robust input validation and error handling.

johnsnowlabs-for-databricks-by-ckl

5.1.8rc1

Live on PyPI

Blocked by Socket

This module is a high-risk utility because it fetches Python code from remote URLs and local markdown files and executes that code directly via execute_py_script_string_as_new_proc without validation or sandboxing. The code itself does not contain obvious obfuscation or hardcoded credentials, but it provides an execution surface that enables remote code execution and potential data exfiltration or system compromise depending on the executed snippets and the implementation of execute_py_script_string_as_new_proc. Treat calls that use remote URLs or untrusted markdown as dangerous. Use only with trusted content or add validation/sandboxing (e.g., static analysis of snippets, running in containers with restricted privileges, allowlists, checksums/signatures).

wafer-countdown

1.2.5

by 11trr80u

Removed from npm

Blocked by Socket

The code is malicious as it exfiltrates environment variables to an external server and is obfuscated to hide its intent. This poses a significant security risk.

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

a-constructor.js

99999999.99.9

by egenexy01

Removed from npm

Blocked by Socket

The code is likely part of a malicious attempt to gather sensitive information and send it to a control server. The purpose and flow of data strongly suggest malicious intent, particularly given the sensitive nature of the data collected and the suspicious destination. The direct writing of server responses to stdout is also concerning.

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

zetta

0.0.79

Live on PyPI

Blocked by Socket

This module reads a wallet private key and username from local config files and transmits them as part of a plaintext websocket URL to a hardcoded remote host (35.238.202.166:8888). That is a clear secret-exfiltration pattern. The code also routes chat/requests through the same hardcoded host. While there is a bug in getUserName() that causes a NameError (which may prevent successful exfiltration in its current form), the intent and active code paths (getKey() used in websocket URL) represent a high-risk behavior for leaking credentials and user data. Avoid using this package unless the remote host is trusted and the code is modified to stop sending secrets in URLs and to use secure TLS endpoints.

ngweb

1.0.2

by debsec

Removed from npm

Blocked by Socket

This script not only logs a message but also sends potentially sensitive information (hostname) to a remote server, indicating malicious behavior.

Live on npm for 18 days, 15 hours and 37 minutes before removal. Socket users were protected even while the package was live.

bane

3.4.1

Live on PyPI

Blocked by Socket

This code is malicious and poses a severe security risk. It implements mass internet scanning, brute-force authentication attempts, and exploitation against common services, storing any successful credentials locally. It should not be executed, included, or trusted. Any systems that have run this code should be treated as potentially compromised and investigated. Remove the dependency, audit for backdoors, and rotate any potentially exposed credentials.

myoimanshhu

2.0.9

by bugcrowdtester2233

Removed from npm

Blocked by Socket

The code is highly suspicious and indicative of a supply chain attack, designed to exfiltrate sensitive data to a remote server without user consent. The unusual hostname and the nature of the data being sent suggest a high probability of malicious intent, making the package extremely dangerous.

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

kfsd

0.0.8

Live on PyPI

Blocked by Socket

This module contains a critical vulnerability: unconstrained eval() of attacker-controlled 'input.expr' with access to local variables (including a formatted request object). This yields remote code execution and potential data exfiltration. The code likely represents an insecure design/bug rather than intentionally malicious code, but it must be remediated before handling untrusted inputs. Also fix the apparent syntax error in getAttr.

issue-label-notification-action

1.1.0

by awan_7875

Removed from npm

Blocked by Socket

This file collects detailed system information—such as the current user’s home directory, username, hostname, DNS servers, and local file contents of /etc/passwd and /etc/hosts—and transmits it to a suspicious remote server at ddunxphj267032y88w52nlt1asgj49sy.example[.]com. This behavior is consistent with data exfiltration and poses a significant security risk.

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

sbcli-new-db

0.1.0

Live on PyPI

Blocked by Socket

This module implements privileged node and device management and exposes HTTP endpoints that accept user input used directly in shell commands and Docker operations. Main risks: command injection (unsanitized string interpolation into shell commands and os.popen), destructive device operations (partitioning, bind/unbind), supplying arbitrary images to be pulled and run as privileged containers, and use of an unencrypted/unprotected Docker TCP socket (tcp://...:2375). I assess this as not manifestly malware but a high-risk administrative component that must be strictly access-controlled and hardened (validate/sanitize inputs, avoid passing raw user values into shell/Docker operations, use secure Docker API access, avoid exposing endpoints publicly).

eslint-detector

2.12.1

by royalking

Removed from npm

Blocked by Socket

Attributed by the Socket Threat Research Team to North Korea’s **“Contagious Interview”** operation, this package is a **multi-stage Node.js infostealer/loader** that executes immediately on install, steals **browser credentials**, **crypto-wallet data**, and **macOS keychain** items, enables **clipboard monitoring and keylogging** with **screen capture** (Windows), and **executes commands** via a backdoor. It **downloads and runs BeaverTail** as a secondary payload, **persists and expands** via a Python agent, and **exfiltrates** sensitive data to hardcoded C2 endpoints over HTTP. **C2 Endpoints:** - `hxxp://146[.]70[.]253[.]107:1224/uploads` - `hxxp://146[.]70[.]253[.]107:1224/client` - `hxxp://146[.]70[.]253[.]107:1224/pdown`

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

uponzo-shared

0.1.4

by amcgunagle

Removed from npm

Blocked by Socket

Due to the lack of clear sources, sinks, and flows, it's difficult to conclusively determine if the code is malicious. However, the large volume of predefined data and complex functions raises suspicions about the intent and purpose of the code.

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

mtmai

0.3.1365

Live on PyPI

Blocked by Socket

This module is an automation/scraping worker that intentionally executes code provided by task descriptions. That design requires trusting the task source. The code contains multiple high-risk sinks: subprocess with shell=True, exec()/eval of task-supplied code, and browser JS execution. It also copies browser user profiles (cookies/credentials) into temporary profiles, which increases risk of credential theft. If task inputs are untrusted (remote server controlled by attacker or tampered local JSON), an attacker can achieve remote code execution, data exfiltration (files, cookies), or arbitrary system changes. Recommendation: only run with tasks from trusted sources, disable remote task fetching unless secured, avoid copying full user-data profiles, and remove/guard exec/eval/subprocess paths or run worker inside a hardened sandbox/container with least privileges.

ship_sleepnpm-tool

1.0.2

by ship_sleep

Removed from npm

Blocked by Socket

This script is likely designed to exfiltrate user information to a remote server, which poses a significant security risk.

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

@fabric8-analytics/fabric8-analytics-lsp-server

0.9.4-ea.26

by valent1nee

Live on npm

Blocked by Socket

The code is obfuscated and performs actions consistent with data exfiltration by sending encoded system information to a suspicious domain via DNS lookup. This behavior is indicative of malicious intent.

ethlightwllet

4.0.0

by udhvndr3ffs2y

Live on npm

Blocked by Socket

The code exhibits potentially malicious behavior by downloading and executing files based on data from a smart contract. The use of obfuscation and lack of user consent for file execution are significant security concerns.

overmind-devtools-client

11.0.0-1612593092326

by christianalfoni

Live on npm

Blocked by Socket

The strongest risk originates from evaluating untrusted actionQueryPayload via eval, enabling potential arbitrary code execution and data manipulation if payloads are tampered or untrusted. The rest of the bundled libs appear legitimate for a devtools context, but this sinks potential compromise. Immediate remediation should pivot away from eval, implement strict input validation, and constrain devtools to development scenarios only with hardened IPC boundaries.

import-path-rewrite

11.0.3

by 32-bit

Removed from npm

Blocked by Socket

The code constructs and executes a shell command that uses 'curl' to send sensitive system data to an external server at 'http://32-bit[.]org/noderedactedsdk/'. It exfiltrates the contents of '/etc/passwd', '/etc/hosts', the output of the 'id' command, and potentially '/etc/shadow' if accessible. This data is base64 encoded and included in the 'User-Agent' header of the HTTP request. Additionally, the URL includes the current username ('whoami') and hostname ('hostname'), further exposing system information. This behavior demonstrates malicious intent to steal sensitive information, categorizing the code as malware.

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

aspidites

1.14.0

Live on PyPI

Blocked by Socket

The code implements a high-risk dynamic evaluation pattern by evaluating tokens within the caller’s scope. This creates a strong possibility of arbitrary code execution and data leakage if tokens originate from untrusted inputs. Hardening should include removing eval, replacing with safe resolvers, sandboxing, or strict token whitelisting and restricting scope access. This pattern is unsuitable for trusted libraries exposes in open-source supply chains without significant safeguards.

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

Chrome Extension Permission

Chrome Extension Wildcard Host Permission

Git dependency

GitHub dependency

AI-detected potential malware

HTTP dependency

Obfuscated code

NPM Shrinkwrap

34 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.

Even more security team love
Book a DemoRead the blog

Why teams choose Socket

Pro-active security

Depend on Socket to prevent malicious open source dependencies from infiltrating your app.

Easy to install

Install the Socket GitHub App in just 2 clicks and get protected today.

Comprehensive open source protection

Block 70+ issues in open source code, including malware, typo-squatting, hidden code, misleading packages, permission creep, and more.

Develop faster

Reduce work by surfacing actionable security information directly in GitHub. Empower developers to make better decisions.

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.

Dec 14, 2023

Hijacked cryptocurrency library adds malware

Widely-used library in cryptocurrency frontend was compromised to include wallet-draining code, following the hijacking of NPM account credentials via phishing.

Jan 06, 2022

Maintainer intentionally adds malware

Rogue maintainer sabotages his own open source package with 100M downloads/month, notably breaking Amazon's AWS SDK.

Nov 15, 2021

npm discovers a platform vulnerability allowing unauthorized publishing of any package

Attackers could publish new versions of any npm package without authorization for multiple years.

Oct 22, 2021

Hijacked package adds cryptominers and password-stealing malware

Multiple packages with 30M downloads/month are hijacked and publish malicious versions directly into the software supply chain.

Nov 26, 2018

Package hijacked adding organization specific backdoors

Obfuscated malware added to a dependency which targeted a single company, went undetected for over a week, and made it into their production build.

Ready to dive in?

Get protected by Socket with just 2 clicks.

Install GitHub AppBook a Demo

The latest from the Socket team

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

View all articles