
Security News
GitHub Actions Pricing Whiplash: Self-Hosted Actions Billing Change Postponed
GitHub postponed a new billing model for self-hosted Actions after developer pushback, but moved forward with hosted runner price cuts on January 1.
Quickly evaluate the security and health of any open source package.
sbcli-lvol-ha
0.1.6
Live on PyPI
Blocked by Socket
This module is not overtly malicious (no encoded payloads, no external exfiltration, no reverse shell), but it contains high-risk insecure patterns: user-controlled values are directly interpolated into shell command strings and passed to node_utils.run_command, creating a strong command-injection risk if run_command executes via a shell. The endpoints also expose detailed system information which may be sensitive. Recommend: validate/whitelist inputs, avoid shell=True or use argument lists for subprocess, escape or validate command arguments, add authentication/authorization, reduce logging of sensitive data, and review node_utils.run_command implementation. Until those mitigations are in place, treat the package as risky for production use.
github.com/snapcore/snapd
v0.0.0-20250617152304-ed0d3bf7e5b1
Live on Go Modules
Blocked by Socket
This file contains exploit code that attempts to manipulate snapd via a specially-named client UNIX socket and a raw POST request to '/v2/create-user' with 'force-managed': True. The code creates a temporary UNIX domain socket with a pathname containing ';uid=0;' in /tmp, then connects to '/run/snapd[.]socket' and sends a crafted HTTP request to create a managed user account. This technique exploits snapd's socket pathname parsing to potentially escalate privileges or create unauthorized user accounts. The code appears to be based on a proof-of-concept exploit and could be dangerous if executed on systems running snapd.
meutils
2024.11.28.19.34.18
Live on PyPI
Blocked by Socket
The code sends sensitive credentials from environment variables over an unencrypted HTTP connection to an external API service at api[.]sqhyw[.]net:90. It authenticates using username/password from the YEZI_USER environment variable, retrieves access tokens, and automates the process of obtaining mobile phone numbers and SMS verification codes. This behavior poses significant supply chain security risks through: (1) leakage of environment variable credentials over unencrypted HTTP, (2) interaction with a suspicious external domain on a non-standard port, (3) logging of potentially sensitive API responses including tokens and SMS codes, and (4) facilitation of SMS verification bypass which could enable fraudulent account creation or spam activities. The code continuously polls the external API for up to 120 seconds to retrieve SMS codes, creating additional operational risks. While not containing traditional malware payloads, the credential exfiltration and suspicious external communication patterns justify classification as malware due to the significant security risks posed to systems that deploy this code.
cli-debugger-ui
99.10.9
by 4801fvxf
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 2 hours before removal. Socket users were protected even while the package was live.
@aluffyz/discord-botjs
1.4.1
by aluffyz
Live on npm
Blocked by Socket
The code is heavily obfuscated and contains several high-risk features like dynamic code execution, accessing sensitive OS-level features, and networking capabilities that are often associated with malicious scripts or modules in a node environment. It should be considered unsafe without further context or sanitization.
azure-graphrbac
5.7.1
Removed from npm
Blocked by Socket
The code is clearly engaging in malicious activities by exfiltrating system and user data to external servers without consent. This poses a significant security risk.
Live on npm for 1 minute before removal. Socket users were protected even while the package was live.
go-core
0.2.26
by wdslib
Live on npm
Blocked by Socket
The analyzed code contains a high-risk dynamic code execution pathway via a Web Worker that evaluates incoming payloads with a sandbox wrapper. While there may be legitimate uses for dynamic scripting, the current setup exposes a robust.remote-code-execution surface, enabling potential data exfiltration (especially tokens in sessionStorage) and persistent data leakage via IndexedDB. Given the presence of legitimate libraries within the bundle, this pattern markedly increases supply chain risk and warrants immediate hardening or removal of the dynamic evaluation mechanism, along with stronger isolation and stricter controls over any data accessible to the worker.
smartchart
7.6.1
Removed from PyPI
Blocked by Socket
This file executes opaque, compressed Python code and uses obfuscated function names to process another embedded blob. This is a highly suspicious supply-chain pattern (obfuscation + exec at import). Without decoding the LZMA blobs we cannot state exact payload actions, but the structure is consistent with malware/backdoor/exfiltration or other unauthorized behaviors. Do not import or run this module in any environment where it can access sensitive data, network, or production systems. Treat it as potentially malicious and investigate the decompressed payload in a safe, isolated environment (offline sandbox) to determine precise behavior.
Live on PyPI for 3 days, 1 hour and 42 minutes before removal. Socket users were protected even while the package was live.
doughnuts
4.16.1
Live on PyPI
Blocked by Socket
This code is a clear implementation of a remote interactive terminal listener / backdoor pattern. It provides unauthenticated, unencrypted bidirectional terminal access when connected, and executes local shell commands to enumerate terminal metadata. The snippet as provided contains multiple syntax errors (non-executable), but intent is obvious and high-risk. Treat as a potential supply-chain backdoor; do not run in production, audit repository history and maintainers, and remove or sandbox immediately if found in a dependency.
bane
3.7.0
Live on PyPI
Blocked by Socket
This module is a configuration/payload repository intended for automated scanning, exploitation (SQLi/XSS), admin panel discovery and many forms of DDoS/amplification attacks. The file itself is non‑executable but is a clear building block for malicious tooling. Treat the containing package as malicious/unsafe and remove or isolate it; investigate upstream supply‑chain and any consumers of these constants.
ivp.notification
1.0.17
by Pratham Shetty
Live on NuGet
Blocked by Socket
The majority of the code is legitimate UI/modal functionality. However, there is an explicit malicious/disruptive snippet that targets users based on navigator.language and host TLDs: it disables page interaction and injects/plays a looping audio file from a hardcoded external URL after a 3-day delay. This is a politically motivated, supply-chain style malicious behavior and should be considered malicious. Remove or patch this code and treat the package as compromised.
ai18n-xyz/github-action
6571379c6dde0b49672679e4774b4761ca31a6f6
Live on GitHub Actions
Blocked by Socket
This Action reads an arbitrary file path supplied via input and uploads the full file contents to a hardcoded ngrok-style external endpoint. That is a clear exfiltration pattern and poses a high supply-chain risk. Unless there is a well-documented, trusted, and authenticated reason for sending repository files to that specific external service, this code should be treated as malicious or extremely negligent and not used in workflows that have access to secrets or run on shared runners.
fsd
0.0.773
Removed from PyPI
Blocked by Socket
I found no direct indicators of classical malware (no eval/exec, no reverse shell, no obfuscated payload, no hardcoded secrets). However, the module constructs very large prompts containing repository trees and raw file contents and sends them to an external AI gateway (AIGateway.stream_prompt) without redaction, filtering, or explicit consent checks. This creates a high risk of accidental data exfiltration (source code, credentials, PII) to third-party services. The sys.path modification is an additional supply-chain concern because it changes import resolution and can enable unexpected local module loads. Recommended mitigations: add allow/deny lists and redaction for sensitive file paths, avoid sending entire repo contents by default, require explicit user consent, and do not modify sys.path in production code. Overall: not obviously malicious code but moderate-to-high supply-chain/data-exfiltration risk.
Live on PyPI for 5 days, 6 hours and 56 minutes before removal. Socket users were protected even while the package was live.
asyncconfigreader
0.6
Removed from PyPI
Blocked by Socket
This file implements a keylogger to capture keystrokes and gather sensitive data from browsers and other applications without user consent. It exfiltrates the stolen information to a hardcoded Telegram endpoint at api[.]example[.]com using a hardcoded bot token and chat ID. The code also includes functionality to run automatically on system startup, ensuring persistent unauthorized access to user data.
Live on PyPI for 1 day, 8 hours and 33 minutes before removal. Socket users were protected even while the package was live.
qumra-engine
1.0.102
by abdalstar
Live on npm
Blocked by Socket
This code intentionally sends local files, request headers, cookies (including authentication tokens), server secret-key (if present), and fingerprint/device data to an external service api.qumra.cloud, and then uses the remote response to set cookies and inject content into responses. That pattern constitutes data exfiltration and remote-control of rendered content and cookies. If the remote endpoint is not fully trusted and audited, this is a high-risk supply-chain/third-party data-leak/backdoor vector. Recommend: do not include or enable this middleware unless the external service is explicitly trusted, remove sending of sensitive cookies/secret keys, sandbox or strictly sanitize remote-provided content, and avoid automatically setting cookies returned from external services.
guan
0.1.21
by guanjihuan
Live on PyPI
Blocked by Socket
The code performs various utility tasks and is not overtly malicious. However, the use of the `guan.statistics_of_guan_package()` function to potentially send data to an external server, including the MAC address of the machine, is a significant privacy concern. Caution is advised when using this code, especially if the `guan` library and its usage are not fully understood or trusted.
tds-styled-docs
69.0.7
by nstikhomirov
Removed from npm
Blocked by Socket
The code exhibits suspicious behavior by sending system-specific information (hostname and username) to an external domain via a DNS lookup. This could be used for tracking or data exfiltration, posing a privacy risk.
Live on npm for 12 days, 7 hours and 49 minutes before removal. Socket users were protected even while the package was live.
osagent
0.1.0
Live on PyPI
Blocked by Socket
This module contains high-risk functionality: unauthenticated remote command execution (including shell mode), arbitrary file read/write and exfiltration, accessibility-driven extraction of on-screen/terminal contents, screen recording and GUI manipulation — all exposed over HTTP. The package should be treated as dangerous in a supply-chain context unless its deployment is strictly controlled and an authentication/authorization layer is added. Recommend not installing as a dependency in production; if intended, require strong authentication, input validation, least-privilege execution context, network access controls, and remove or restrict file-system and command-execution endpoints.
gitcidi
0.0.34
Live on PyPI
Blocked by Socket
This code contains multiple high-risk behaviors consistent with a supply-chain/backdoor pattern: it retrieves a GitHub token from a remote service, uses it to create a repository webhook pointing to a hardcoded external IP (which will receive future repository webhook payloads), stores credentials locally, and implements a periodic contact to the same remote IP (beacon). Even if some file I/O has bugs, the intent and network interactions present a serious risk of data exfiltration and unauthorized repository modification. Avoid running this code; treat the package as malicious or compromised.
link-pty
0.1.3
Live on PyPI
Blocked by Socket
This module implements full remote interactive shell capability: it can spawn /bin/bash locally and forward stdin/stdout to a remote server controlled via WebSocket/HTTP. That behavior provides remote command execution and data exfiltration capability and therefore represents a high security risk if present in a dependency or used without strict operational controls (authentication, TLS, network isolation). Treat as malicious/untrusted in general-purpose environments unless its use is explicit, authenticated, and restricted.
raminspect
0.7.2
Live on crates.io
Blocked by Socket
This kernel module contains functionality that enables stealthy process hijacking and code injection: toggling write permissions on executable VMAs, saving/restoring another process's registers (including instruction pointer), and a signaling/waiting mechanism to coordinate injected shellcode execution. It lacks permission checks and contains implementation issues (missing kmalloc null checks, some logic bugs), making it a strong supply-chain backdoor indicator. Do not load or use this module in production; treat it as malicious/untrusted.
jsonspack-logger
1.0.12
by liamnevin
Removed from npm
Blocked by Socket
This file contains malicious code that functions as a backdoor with data exfiltration and remote code execution capabilities. The code systematically collects sensitive system information including all environment variables, platform details, hostname, username, and MAC addresses from network interfaces. This data is then transmitted via HTTP POST request to a suspicious remote server at https://log-server-lovat[.]vercel[.]app/api/ipcheck/703 with a custom header 'x-secret-header: secret'. After sending the collected data, the malware evaluates the server's response as JavaScript code using eval(), enabling arbitrary remote code execution. The code employs obfuscation by hex-encoding critical strings like 'require', 'axios', 'post', and the target URL to evade detection. Error handling is deliberately suppressed to prevent detection of failed operations. This represents a critical supply chain attack vector that compromises system security through both data theft and remote control capabilities.
Live on npm for 1 day, 1 hour and 46 minutes before removal. Socket users were protected even while the package was live.
sbcli-lvol-ha
0.1.6
Live on PyPI
Blocked by Socket
This module is not overtly malicious (no encoded payloads, no external exfiltration, no reverse shell), but it contains high-risk insecure patterns: user-controlled values are directly interpolated into shell command strings and passed to node_utils.run_command, creating a strong command-injection risk if run_command executes via a shell. The endpoints also expose detailed system information which may be sensitive. Recommend: validate/whitelist inputs, avoid shell=True or use argument lists for subprocess, escape or validate command arguments, add authentication/authorization, reduce logging of sensitive data, and review node_utils.run_command implementation. Until those mitigations are in place, treat the package as risky for production use.
github.com/snapcore/snapd
v0.0.0-20250617152304-ed0d3bf7e5b1
Live on Go Modules
Blocked by Socket
This file contains exploit code that attempts to manipulate snapd via a specially-named client UNIX socket and a raw POST request to '/v2/create-user' with 'force-managed': True. The code creates a temporary UNIX domain socket with a pathname containing ';uid=0;' in /tmp, then connects to '/run/snapd[.]socket' and sends a crafted HTTP request to create a managed user account. This technique exploits snapd's socket pathname parsing to potentially escalate privileges or create unauthorized user accounts. The code appears to be based on a proof-of-concept exploit and could be dangerous if executed on systems running snapd.
meutils
2024.11.28.19.34.18
Live on PyPI
Blocked by Socket
The code sends sensitive credentials from environment variables over an unencrypted HTTP connection to an external API service at api[.]sqhyw[.]net:90. It authenticates using username/password from the YEZI_USER environment variable, retrieves access tokens, and automates the process of obtaining mobile phone numbers and SMS verification codes. This behavior poses significant supply chain security risks through: (1) leakage of environment variable credentials over unencrypted HTTP, (2) interaction with a suspicious external domain on a non-standard port, (3) logging of potentially sensitive API responses including tokens and SMS codes, and (4) facilitation of SMS verification bypass which could enable fraudulent account creation or spam activities. The code continuously polls the external API for up to 120 seconds to retrieve SMS codes, creating additional operational risks. While not containing traditional malware payloads, the credential exfiltration and suspicious external communication patterns justify classification as malware due to the significant security risks posed to systems that deploy this code.
cli-debugger-ui
99.10.9
by 4801fvxf
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 2 hours before removal. Socket users were protected even while the package was live.
@aluffyz/discord-botjs
1.4.1
by aluffyz
Live on npm
Blocked by Socket
The code is heavily obfuscated and contains several high-risk features like dynamic code execution, accessing sensitive OS-level features, and networking capabilities that are often associated with malicious scripts or modules in a node environment. It should be considered unsafe without further context or sanitization.
azure-graphrbac
5.7.1
Removed from npm
Blocked by Socket
The code is clearly engaging in malicious activities by exfiltrating system and user data to external servers without consent. This poses a significant security risk.
Live on npm for 1 minute before removal. Socket users were protected even while the package was live.
go-core
0.2.26
by wdslib
Live on npm
Blocked by Socket
The analyzed code contains a high-risk dynamic code execution pathway via a Web Worker that evaluates incoming payloads with a sandbox wrapper. While there may be legitimate uses for dynamic scripting, the current setup exposes a robust.remote-code-execution surface, enabling potential data exfiltration (especially tokens in sessionStorage) and persistent data leakage via IndexedDB. Given the presence of legitimate libraries within the bundle, this pattern markedly increases supply chain risk and warrants immediate hardening or removal of the dynamic evaluation mechanism, along with stronger isolation and stricter controls over any data accessible to the worker.
smartchart
7.6.1
Removed from PyPI
Blocked by Socket
This file executes opaque, compressed Python code and uses obfuscated function names to process another embedded blob. This is a highly suspicious supply-chain pattern (obfuscation + exec at import). Without decoding the LZMA blobs we cannot state exact payload actions, but the structure is consistent with malware/backdoor/exfiltration or other unauthorized behaviors. Do not import or run this module in any environment where it can access sensitive data, network, or production systems. Treat it as potentially malicious and investigate the decompressed payload in a safe, isolated environment (offline sandbox) to determine precise behavior.
Live on PyPI for 3 days, 1 hour and 42 minutes before removal. Socket users were protected even while the package was live.
doughnuts
4.16.1
Live on PyPI
Blocked by Socket
This code is a clear implementation of a remote interactive terminal listener / backdoor pattern. It provides unauthenticated, unencrypted bidirectional terminal access when connected, and executes local shell commands to enumerate terminal metadata. The snippet as provided contains multiple syntax errors (non-executable), but intent is obvious and high-risk. Treat as a potential supply-chain backdoor; do not run in production, audit repository history and maintainers, and remove or sandbox immediately if found in a dependency.
bane
3.7.0
Live on PyPI
Blocked by Socket
This module is a configuration/payload repository intended for automated scanning, exploitation (SQLi/XSS), admin panel discovery and many forms of DDoS/amplification attacks. The file itself is non‑executable but is a clear building block for malicious tooling. Treat the containing package as malicious/unsafe and remove or isolate it; investigate upstream supply‑chain and any consumers of these constants.
ivp.notification
1.0.17
by Pratham Shetty
Live on NuGet
Blocked by Socket
The majority of the code is legitimate UI/modal functionality. However, there is an explicit malicious/disruptive snippet that targets users based on navigator.language and host TLDs: it disables page interaction and injects/plays a looping audio file from a hardcoded external URL after a 3-day delay. This is a politically motivated, supply-chain style malicious behavior and should be considered malicious. Remove or patch this code and treat the package as compromised.
ai18n-xyz/github-action
6571379c6dde0b49672679e4774b4761ca31a6f6
Live on GitHub Actions
Blocked by Socket
This Action reads an arbitrary file path supplied via input and uploads the full file contents to a hardcoded ngrok-style external endpoint. That is a clear exfiltration pattern and poses a high supply-chain risk. Unless there is a well-documented, trusted, and authenticated reason for sending repository files to that specific external service, this code should be treated as malicious or extremely negligent and not used in workflows that have access to secrets or run on shared runners.
fsd
0.0.773
Removed from PyPI
Blocked by Socket
I found no direct indicators of classical malware (no eval/exec, no reverse shell, no obfuscated payload, no hardcoded secrets). However, the module constructs very large prompts containing repository trees and raw file contents and sends them to an external AI gateway (AIGateway.stream_prompt) without redaction, filtering, or explicit consent checks. This creates a high risk of accidental data exfiltration (source code, credentials, PII) to third-party services. The sys.path modification is an additional supply-chain concern because it changes import resolution and can enable unexpected local module loads. Recommended mitigations: add allow/deny lists and redaction for sensitive file paths, avoid sending entire repo contents by default, require explicit user consent, and do not modify sys.path in production code. Overall: not obviously malicious code but moderate-to-high supply-chain/data-exfiltration risk.
Live on PyPI for 5 days, 6 hours and 56 minutes before removal. Socket users were protected even while the package was live.
asyncconfigreader
0.6
Removed from PyPI
Blocked by Socket
This file implements a keylogger to capture keystrokes and gather sensitive data from browsers and other applications without user consent. It exfiltrates the stolen information to a hardcoded Telegram endpoint at api[.]example[.]com using a hardcoded bot token and chat ID. The code also includes functionality to run automatically on system startup, ensuring persistent unauthorized access to user data.
Live on PyPI for 1 day, 8 hours and 33 minutes before removal. Socket users were protected even while the package was live.
qumra-engine
1.0.102
by abdalstar
Live on npm
Blocked by Socket
This code intentionally sends local files, request headers, cookies (including authentication tokens), server secret-key (if present), and fingerprint/device data to an external service api.qumra.cloud, and then uses the remote response to set cookies and inject content into responses. That pattern constitutes data exfiltration and remote-control of rendered content and cookies. If the remote endpoint is not fully trusted and audited, this is a high-risk supply-chain/third-party data-leak/backdoor vector. Recommend: do not include or enable this middleware unless the external service is explicitly trusted, remove sending of sensitive cookies/secret keys, sandbox or strictly sanitize remote-provided content, and avoid automatically setting cookies returned from external services.
guan
0.1.21
by guanjihuan
Live on PyPI
Blocked by Socket
The code performs various utility tasks and is not overtly malicious. However, the use of the `guan.statistics_of_guan_package()` function to potentially send data to an external server, including the MAC address of the machine, is a significant privacy concern. Caution is advised when using this code, especially if the `guan` library and its usage are not fully understood or trusted.
tds-styled-docs
69.0.7
by nstikhomirov
Removed from npm
Blocked by Socket
The code exhibits suspicious behavior by sending system-specific information (hostname and username) to an external domain via a DNS lookup. This could be used for tracking or data exfiltration, posing a privacy risk.
Live on npm for 12 days, 7 hours and 49 minutes before removal. Socket users were protected even while the package was live.
osagent
0.1.0
Live on PyPI
Blocked by Socket
This module contains high-risk functionality: unauthenticated remote command execution (including shell mode), arbitrary file read/write and exfiltration, accessibility-driven extraction of on-screen/terminal contents, screen recording and GUI manipulation — all exposed over HTTP. The package should be treated as dangerous in a supply-chain context unless its deployment is strictly controlled and an authentication/authorization layer is added. Recommend not installing as a dependency in production; if intended, require strong authentication, input validation, least-privilege execution context, network access controls, and remove or restrict file-system and command-execution endpoints.
gitcidi
0.0.34
Live on PyPI
Blocked by Socket
This code contains multiple high-risk behaviors consistent with a supply-chain/backdoor pattern: it retrieves a GitHub token from a remote service, uses it to create a repository webhook pointing to a hardcoded external IP (which will receive future repository webhook payloads), stores credentials locally, and implements a periodic contact to the same remote IP (beacon). Even if some file I/O has bugs, the intent and network interactions present a serious risk of data exfiltration and unauthorized repository modification. Avoid running this code; treat the package as malicious or compromised.
link-pty
0.1.3
Live on PyPI
Blocked by Socket
This module implements full remote interactive shell capability: it can spawn /bin/bash locally and forward stdin/stdout to a remote server controlled via WebSocket/HTTP. That behavior provides remote command execution and data exfiltration capability and therefore represents a high security risk if present in a dependency or used without strict operational controls (authentication, TLS, network isolation). Treat as malicious/untrusted in general-purpose environments unless its use is explicit, authenticated, and restricted.
raminspect
0.7.2
Live on crates.io
Blocked by Socket
This kernel module contains functionality that enables stealthy process hijacking and code injection: toggling write permissions on executable VMAs, saving/restoring another process's registers (including instruction pointer), and a signaling/waiting mechanism to coordinate injected shellcode execution. It lacks permission checks and contains implementation issues (missing kmalloc null checks, some logic bugs), making it a strong supply-chain backdoor indicator. Do not load or use this module in production; treat it as malicious/untrusted.
jsonspack-logger
1.0.12
by liamnevin
Removed from npm
Blocked by Socket
This file contains malicious code that functions as a backdoor with data exfiltration and remote code execution capabilities. The code systematically collects sensitive system information including all environment variables, platform details, hostname, username, and MAC addresses from network interfaces. This data is then transmitted via HTTP POST request to a suspicious remote server at https://log-server-lovat[.]vercel[.]app/api/ipcheck/703 with a custom header 'x-secret-header: secret'. After sending the collected data, the malware evaluates the server's response as JavaScript code using eval(), enabling arbitrary remote code execution. The code employs obfuscation by hex-encoding critical strings like 'require', 'axios', 'post', and the target URL to evade detection. Error handling is deliberately suppressed to prevent detection of failed operations. This represents a critical supply chain attack vector that compromises system security through both data theft and remote control capabilities.
Live on npm for 1 day, 1 hour and 46 minutes before removal. Socket users were protected even while the package was live.
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
Suspicious Stars on GitHub
HTTP dependency
Git dependency
GitHub dependency
AI-detected potential malware
Obfuscated code
Telemetry
Protestware or potentially unwanted behavior
Critical CVE
High CVE
Medium CVE
Low CVE
Unpopular package
Minified code
Bad dependency semver
Wildcard dependency
Socket optimized override available
Deprecated
Unmaintained
License Policy Violation
Explicitly Unlicensed Item
Misc. License Issues
Copyleft License
No License Found
Ambiguous License Classifier
License exception
Non-permissive License
Unidentified License
Socket detects and blocks malicious dependencies, often within just minutes of them being published to public registries, making it the most effective tool for blocking zero-day supply chain attacks.
Socket is built by a team of prolific open source maintainers whose software is downloaded over 1 billion times per month. We understand how to build tools that developers love. But don’t take our word for it.

Nat Friedman
CEO at GitHub

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Security News
GitHub postponed a new billing model for self-hosted Actions after developer pushback, but moved forward with hosted runner price cuts on January 1.

Research
Destructive malware is rising across open source registries, using delays and kill switches to wipe code, break builds, and disrupt CI/CD.

Security News
Socket CTO Ahmad Nassri shares practical AI coding techniques, tools, and team workflows, plus what still feels noisy and why shipping remains human-led.