
Research
2025 Report: Destructive Malware in Open Source Packages
Destructive malware is rising across open source registries, using delays and kill switches to wipe code, break builds, and disrupt CI/CD.
Quickly evaluate the security and health of any open source package.
cl-lite
1.0.1285
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.
@intact-lab/ngx-iceberg-links
395.0.0-beta.1
by intact-lab-user
Live on npm
Blocked by Socket
The code seems to be suspicious as it reads system information and sends it to a remote server without a clear purpose. The presence of a hardcoded remote server address and the lack of user consent raise concerns about the intent of the code. Additionally, the 'debugger' keyword suggests that the code may have been used for debugging purposes and should not be present in production code.
bulbul
3.998.1
Removed from npm
Blocked by Socket
The code is obfuscated and exhibits malicious behavior by collecting and transmitting environment variables to suspicious domains. This poses a significant security risk.
Live on npm for 19 minutes before removal. Socket users were protected even while the package was live.
ocp-package
1.0.0
by elxocas
Live on npm
Blocked by Socket
The code in 'postinstall.js' is heavily obfuscated and collects system information using the 'runSystemChecks()' function. It then encodes the collected data using 'toBase32()' and sends it over the network via 'triggerDNSLookup()', which performs DNS requests with the encoded data. This behavior suggests covert data exfiltration through DNS, a technique commonly used in malware to leak sensitive information without detection. The use of obfuscation further indicates an attempt to conceal malicious activity.
@abb-ux/commonux-web-components
102.0.0
by wraithog
Live on npm
Blocked by Socket
The analyzed source code is malicious. It performs unauthorized data collection and exfiltration by gathering sensitive system and environment information, executing system commands, and sending all this data to an external webhook URL during package installation. This behavior poses a high security risk and should be considered malware. The code is not obfuscated but is clearly designed to steal information stealthily in a supply chain context.
ivoryos
1.2.6a0
Live on PyPI
Blocked by Socket
This module contains several dangerous programming patterns (exec, eval, dynamic import from file paths, runtime pip install, and pickle load/dump) that enable arbitrary code execution and supply-chain risks when inputs are not fully trusted. There is no explicit evidence of intentionally malicious code (hardcoded C2, backdoor, obfuscation, credential harvesting), but the unsafe constructs make the module high-risk in environments where user-provided data or files can reach these functions. Treat this package as potentially dangerous until inputs to these APIs are validated or these patterns are refactored to safe alternatives.
internallib_v900
1.0.1
by vert16x
Removed from npm
Blocked by Socket
The code contains a command that attempts to download and execute a script from a remote server, which is a clear indicator of a reverse shell attack. This poses a significant security risk and is indicative of malicious behavior.
Live on npm for 7 minutes before removal. Socket users were protected even while the package was live.
portal_box
0.0.184
by peter_z
Live on npm
Blocked by Socket
High risk due to dynamic remote code execution via eval driven by a public componentAddr. This is a textbook supply-chain-style risk within a component loader: remote code is executed in the consumer's environment, with potential data exposure, backdoors, or malware installation. The synchronous XHR and absence of CSP/sanitization further amplify risk. This fragment should be treated as suspicious and removed or strictly sandboxed with strict integrity checks, CSP, and non-dynamic bundling.
snow-flow
8.41.4
by groeimetai
Live on npm
Blocked by Socket
This code is an administrative automation component that deliberately executes arbitrary ServiceNow server-side scripts and manipulates system tables. I found no clear signs of intentionally malicious code (no hardcoded external exfiltration endpoints, no obfuscated payload). However, it exposes powerful sinks: arbitrary script execution, creation of background script records, and storage of script output/trace in sys_properties. The primary security risk is abuse/misconfiguration (e.g., autoConfirm bypass, insufficient RBAC) leading to data theft or destructive changes. Treat this module as high-risk functionality that must be strictly access controlled, audited, and hardened before use.
colab-ssh
0.2.36
Live on PyPI
Blocked by Socket
This code establishes remote SSH access by enabling root login, setting the root password, downloading and executing a remote ngrok binary, and publishing the resulting public endpoint to an external JSONBin service. Those behaviors create a high risk of unauthorized remote access and exfiltration of the access point. The pattern is dangerous and can be abused as a backdoor; treat this code as malicious or at least high-risk tooling and avoid running it in production or sensitive environments.
pkscreener
0.46.20250213.711
Live on PyPI
Blocked by Socket
This module implements covert telemetry/exfiltration: it silently collects local username and IP-based location and uploads daily aggregated records to a hardcoded GitHub repository. That behavior is privacy-invasive and constitutes a supply-chain risk for consumers of the package. The implementation uses weak obfuscation (base64), brittle JSON handling, and swallows exceptions, increasing the likelihood of stealthy, unintended data leakage. Actionable advice: treat this as malicious/unwanted telemetry unless documented explicit opt-in exists; remove or disable the telemetry code, or require explicit user consent and secure the transport (authentication and encryption), and fix robust JSON/file handling and error reporting before use.
@worklytics/s3-tools
621.4.8
by neversummer.69
Live on npm
Blocked by Socket
This code is intentionally obfuscated and uses DNS queries to exfiltrate system information, which could be a significant security risk. The hardcoded domain and the potential data exfiltration raise concerns about privacy violations. This package should be reviewed carefully before being used.
meutils
2024.12.19.11.21.54
Live on PyPI
Blocked by Socket
The source code contains suspicious and potentially malicious behavior by uploading arbitrary local files and detailed metadata to a remote server using hardcoded authentication tokens and device identifiers. This constitutes a significant security risk involving unauthorized data exfiltration and privacy violation. Although no direct malware payload like reverse shells or destructive actions are present, the code should be considered high risk and likely malicious due to its data exfiltration capabilities and lack of user transparency.
shancx
1.8.31
Removed from PyPI
Blocked by Socket
The code exhibits several security risks, particularly in the sendEmail function which could lead to data exfiltration. The presence of hardcoded values and lack of input validation raises concerns about potential malicious behavior. Overall, the code should be reviewed and modified to mitigate these risks.
Live on PyPI for 10 hours and 1 minute before removal. Socket users were protected even while the package was live.
meutils
2024.12.23.15.45.1
Live on PyPI
Blocked by Socket
The source code contains suspicious and potentially malicious behavior by uploading arbitrary local files and detailed metadata to a remote server using hardcoded authentication tokens and device identifiers. This constitutes a significant security risk involving unauthorized data exfiltration and privacy violation. Although no direct malware payload like reverse shells or destructive actions are present, the code should be considered high risk and likely malicious due to its data exfiltration capabilities and lack of user transparency.
discord.jselfbot-v13
2.17.2
by snhq
Removed from npm
Blocked by Socket
The code is malicious as it exfiltrates sensitive user data to an external server without consent. This behavior indicates a high security risk and potential data theft.
Live on npm for 2 days, 8 hours and 27 minutes before removal. Socket users were protected even while the package was live.
bashrc
0.1.146
Live on PyPI
Blocked by Socket
This script programmatically grants passwordless, root-equivalent sudo to specific groups and users and attempts to suppress sudo logging for those entries. Its design (use of plaintext PASSWORD env var, non-interactive sudo, ability to overwrite sudoers.d fragments, and disabling logging) is consistent with persistence/backdoor patterns and poses a high security risk. Treat the code as dangerous: do not run on production or sensitive hosts. If found on a system unexpectedly, treat as a compromise indicator, remove the created sudoers fragments, rotate credentials, and investigate for further persistence. Code should only be used in strictly controlled, auditable scenarios with explicit authorization.
@spmcore/spmcore
1.24.16
by spmcore
Live on npm
Blocked by Socket
This module performs unsolicited collection of host identifying information (uname -a) and exfiltrates it, with a timestamp, to a hardcoded external IP over plaintext HTTP immediately on module load. The behavior fits likely malicious telemetry/backdoor patterns. Do not use this package in trusted supply chains; remove and audit any systems that have imported it.
github-badge-bot
1.8.4
Live on npm
Blocked by Socket
This module is a targeted credential-harvesting component that locates and extracts Discord authentication tokens from Chrome and Discord Desktop storage on Windows machines. It uses multiple methods (raw file scanning, direct LevelDB access, and OS-level copying) combined with validation heuristics to identify likely tokens. While it does not itself exfiltrate data over the network, it returns sensitive tokens to the caller and therefore is highly dangerous if used by malicious code. Treat tokens discovered by or accessible to this module as compromised. Avoid including or executing this module in trusted environments.
alita-sdk
0.3.247
Live on PyPI
Blocked by Socket
The code contains patches that could weaken SSH security by disabling key verification and has the potential to hide tracks by deleting the .git directory. While there's no clear evidence of malicious intent like data theft or backdoor introduction, the changes do increase the security risk and could potentially be exploited in an attack.
lavavu
1.8.79
Removed from PyPI
Blocked by Socket
This code implements an unauthenticated HTTP control surface for a viewer object that accepts arbitrary commands from request paths and bodies, dynamically looks up and calls attributes on internal objects, loads JSON from requests and triggers callbacks, and serves local files. These behaviors make it high risk for supply-chain or runtime compromise: untrusted clients can invoke methods and mutate state which could lead to data exfiltration, filesystem access, or other damaging actions depending on the viewer's API. It should not be exposed to untrusted networks or used without strict authentication/authorization and input validation.
Live on PyPI for 12 hours and 54 minutes before removal. Socket users were protected even while the package was live.
python-115
0.0.9.7.2.1
Live on PyPI
Blocked by Socket
The code contains significant security risks, primarily due to the use of eval and exec, which can lead to arbitrary code execution. The handling of cookies also poses a risk if not properly validated. Overall, the code should be reviewed and modified to mitigate these vulnerabilities.
pinokiod
3.4.17
by cocktailpeanut
Live on npm
Blocked by Socket
The SweetAlert2 library code is mostly benign and serves as a UI modal dialog tool. However, it contains a suspicious and potentially malicious snippet that targets Russian users on certain domains to play an unsolicited audio prank, disabling pointer events and potentially disrupting user interaction. This behavior is unexpected and should be considered a moderate security risk and potential malware. The rest of the code shows no signs of malicious intent. The provided reports were invalid and unhelpful. Users should be cautious about this version of the library due to the embedded prank behavior.
fsd
0.1.296
Removed from PyPI
Blocked by Socket
This module zips a local directory and uploads it to a specific S3 bucket. The code contains hardcoded AWS credentials and a hardcoded bucket name, which is a severe security issue and could enable data exfiltration if these credentials are valid. There are additional problems: a likely return-value bug (undefined variable s3_ke), possible insufficient path-safety around symlinks, and verbose logging of paths. There is no evidence of obfuscation or active payloads like reverse shells or eval-based code execution. Treat this package as high-risk until credentials are removed/rotated and the code is corrected and reviewed.
Live on PyPI for 5 days, 16 hours and 51 minutes before removal. Socket users were protected even while the package was live.
cl-lite
1.0.1285
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.
@intact-lab/ngx-iceberg-links
395.0.0-beta.1
by intact-lab-user
Live on npm
Blocked by Socket
The code seems to be suspicious as it reads system information and sends it to a remote server without a clear purpose. The presence of a hardcoded remote server address and the lack of user consent raise concerns about the intent of the code. Additionally, the 'debugger' keyword suggests that the code may have been used for debugging purposes and should not be present in production code.
bulbul
3.998.1
Removed from npm
Blocked by Socket
The code is obfuscated and exhibits malicious behavior by collecting and transmitting environment variables to suspicious domains. This poses a significant security risk.
Live on npm for 19 minutes before removal. Socket users were protected even while the package was live.
ocp-package
1.0.0
by elxocas
Live on npm
Blocked by Socket
The code in 'postinstall.js' is heavily obfuscated and collects system information using the 'runSystemChecks()' function. It then encodes the collected data using 'toBase32()' and sends it over the network via 'triggerDNSLookup()', which performs DNS requests with the encoded data. This behavior suggests covert data exfiltration through DNS, a technique commonly used in malware to leak sensitive information without detection. The use of obfuscation further indicates an attempt to conceal malicious activity.
@abb-ux/commonux-web-components
102.0.0
by wraithog
Live on npm
Blocked by Socket
The analyzed source code is malicious. It performs unauthorized data collection and exfiltration by gathering sensitive system and environment information, executing system commands, and sending all this data to an external webhook URL during package installation. This behavior poses a high security risk and should be considered malware. The code is not obfuscated but is clearly designed to steal information stealthily in a supply chain context.
ivoryos
1.2.6a0
Live on PyPI
Blocked by Socket
This module contains several dangerous programming patterns (exec, eval, dynamic import from file paths, runtime pip install, and pickle load/dump) that enable arbitrary code execution and supply-chain risks when inputs are not fully trusted. There is no explicit evidence of intentionally malicious code (hardcoded C2, backdoor, obfuscation, credential harvesting), but the unsafe constructs make the module high-risk in environments where user-provided data or files can reach these functions. Treat this package as potentially dangerous until inputs to these APIs are validated or these patterns are refactored to safe alternatives.
internallib_v900
1.0.1
by vert16x
Removed from npm
Blocked by Socket
The code contains a command that attempts to download and execute a script from a remote server, which is a clear indicator of a reverse shell attack. This poses a significant security risk and is indicative of malicious behavior.
Live on npm for 7 minutes before removal. Socket users were protected even while the package was live.
portal_box
0.0.184
by peter_z
Live on npm
Blocked by Socket
High risk due to dynamic remote code execution via eval driven by a public componentAddr. This is a textbook supply-chain-style risk within a component loader: remote code is executed in the consumer's environment, with potential data exposure, backdoors, or malware installation. The synchronous XHR and absence of CSP/sanitization further amplify risk. This fragment should be treated as suspicious and removed or strictly sandboxed with strict integrity checks, CSP, and non-dynamic bundling.
snow-flow
8.41.4
by groeimetai
Live on npm
Blocked by Socket
This code is an administrative automation component that deliberately executes arbitrary ServiceNow server-side scripts and manipulates system tables. I found no clear signs of intentionally malicious code (no hardcoded external exfiltration endpoints, no obfuscated payload). However, it exposes powerful sinks: arbitrary script execution, creation of background script records, and storage of script output/trace in sys_properties. The primary security risk is abuse/misconfiguration (e.g., autoConfirm bypass, insufficient RBAC) leading to data theft or destructive changes. Treat this module as high-risk functionality that must be strictly access controlled, audited, and hardened before use.
colab-ssh
0.2.36
Live on PyPI
Blocked by Socket
This code establishes remote SSH access by enabling root login, setting the root password, downloading and executing a remote ngrok binary, and publishing the resulting public endpoint to an external JSONBin service. Those behaviors create a high risk of unauthorized remote access and exfiltration of the access point. The pattern is dangerous and can be abused as a backdoor; treat this code as malicious or at least high-risk tooling and avoid running it in production or sensitive environments.
pkscreener
0.46.20250213.711
Live on PyPI
Blocked by Socket
This module implements covert telemetry/exfiltration: it silently collects local username and IP-based location and uploads daily aggregated records to a hardcoded GitHub repository. That behavior is privacy-invasive and constitutes a supply-chain risk for consumers of the package. The implementation uses weak obfuscation (base64), brittle JSON handling, and swallows exceptions, increasing the likelihood of stealthy, unintended data leakage. Actionable advice: treat this as malicious/unwanted telemetry unless documented explicit opt-in exists; remove or disable the telemetry code, or require explicit user consent and secure the transport (authentication and encryption), and fix robust JSON/file handling and error reporting before use.
@worklytics/s3-tools
621.4.8
by neversummer.69
Live on npm
Blocked by Socket
This code is intentionally obfuscated and uses DNS queries to exfiltrate system information, which could be a significant security risk. The hardcoded domain and the potential data exfiltration raise concerns about privacy violations. This package should be reviewed carefully before being used.
meutils
2024.12.19.11.21.54
Live on PyPI
Blocked by Socket
The source code contains suspicious and potentially malicious behavior by uploading arbitrary local files and detailed metadata to a remote server using hardcoded authentication tokens and device identifiers. This constitutes a significant security risk involving unauthorized data exfiltration and privacy violation. Although no direct malware payload like reverse shells or destructive actions are present, the code should be considered high risk and likely malicious due to its data exfiltration capabilities and lack of user transparency.
shancx
1.8.31
Removed from PyPI
Blocked by Socket
The code exhibits several security risks, particularly in the sendEmail function which could lead to data exfiltration. The presence of hardcoded values and lack of input validation raises concerns about potential malicious behavior. Overall, the code should be reviewed and modified to mitigate these risks.
Live on PyPI for 10 hours and 1 minute before removal. Socket users were protected even while the package was live.
meutils
2024.12.23.15.45.1
Live on PyPI
Blocked by Socket
The source code contains suspicious and potentially malicious behavior by uploading arbitrary local files and detailed metadata to a remote server using hardcoded authentication tokens and device identifiers. This constitutes a significant security risk involving unauthorized data exfiltration and privacy violation. Although no direct malware payload like reverse shells or destructive actions are present, the code should be considered high risk and likely malicious due to its data exfiltration capabilities and lack of user transparency.
discord.jselfbot-v13
2.17.2
by snhq
Removed from npm
Blocked by Socket
The code is malicious as it exfiltrates sensitive user data to an external server without consent. This behavior indicates a high security risk and potential data theft.
Live on npm for 2 days, 8 hours and 27 minutes before removal. Socket users were protected even while the package was live.
bashrc
0.1.146
Live on PyPI
Blocked by Socket
This script programmatically grants passwordless, root-equivalent sudo to specific groups and users and attempts to suppress sudo logging for those entries. Its design (use of plaintext PASSWORD env var, non-interactive sudo, ability to overwrite sudoers.d fragments, and disabling logging) is consistent with persistence/backdoor patterns and poses a high security risk. Treat the code as dangerous: do not run on production or sensitive hosts. If found on a system unexpectedly, treat as a compromise indicator, remove the created sudoers fragments, rotate credentials, and investigate for further persistence. Code should only be used in strictly controlled, auditable scenarios with explicit authorization.
@spmcore/spmcore
1.24.16
by spmcore
Live on npm
Blocked by Socket
This module performs unsolicited collection of host identifying information (uname -a) and exfiltrates it, with a timestamp, to a hardcoded external IP over plaintext HTTP immediately on module load. The behavior fits likely malicious telemetry/backdoor patterns. Do not use this package in trusted supply chains; remove and audit any systems that have imported it.
github-badge-bot
1.8.4
Live on npm
Blocked by Socket
This module is a targeted credential-harvesting component that locates and extracts Discord authentication tokens from Chrome and Discord Desktop storage on Windows machines. It uses multiple methods (raw file scanning, direct LevelDB access, and OS-level copying) combined with validation heuristics to identify likely tokens. While it does not itself exfiltrate data over the network, it returns sensitive tokens to the caller and therefore is highly dangerous if used by malicious code. Treat tokens discovered by or accessible to this module as compromised. Avoid including or executing this module in trusted environments.
alita-sdk
0.3.247
Live on PyPI
Blocked by Socket
The code contains patches that could weaken SSH security by disabling key verification and has the potential to hide tracks by deleting the .git directory. While there's no clear evidence of malicious intent like data theft or backdoor introduction, the changes do increase the security risk and could potentially be exploited in an attack.
lavavu
1.8.79
Removed from PyPI
Blocked by Socket
This code implements an unauthenticated HTTP control surface for a viewer object that accepts arbitrary commands from request paths and bodies, dynamically looks up and calls attributes on internal objects, loads JSON from requests and triggers callbacks, and serves local files. These behaviors make it high risk for supply-chain or runtime compromise: untrusted clients can invoke methods and mutate state which could lead to data exfiltration, filesystem access, or other damaging actions depending on the viewer's API. It should not be exposed to untrusted networks or used without strict authentication/authorization and input validation.
Live on PyPI for 12 hours and 54 minutes before removal. Socket users were protected even while the package was live.
python-115
0.0.9.7.2.1
Live on PyPI
Blocked by Socket
The code contains significant security risks, primarily due to the use of eval and exec, which can lead to arbitrary code execution. The handling of cookies also poses a risk if not properly validated. Overall, the code should be reviewed and modified to mitigate these vulnerabilities.
pinokiod
3.4.17
by cocktailpeanut
Live on npm
Blocked by Socket
The SweetAlert2 library code is mostly benign and serves as a UI modal dialog tool. However, it contains a suspicious and potentially malicious snippet that targets Russian users on certain domains to play an unsolicited audio prank, disabling pointer events and potentially disrupting user interaction. This behavior is unexpected and should be considered a moderate security risk and potential malware. The rest of the code shows no signs of malicious intent. The provided reports were invalid and unhelpful. Users should be cautious about this version of the library due to the embedded prank behavior.
fsd
0.1.296
Removed from PyPI
Blocked by Socket
This module zips a local directory and uploads it to a specific S3 bucket. The code contains hardcoded AWS credentials and a hardcoded bucket name, which is a severe security issue and could enable data exfiltration if these credentials are valid. There are additional problems: a likely return-value bug (undefined variable s3_ke), possible insufficient path-safety around symlinks, and verbose logging of paths. There is no evidence of obfuscation or active payloads like reverse shells or eval-based code execution. Treat this package as high-risk until credentials are removed/rotated and the code is corrected and reviewed.
Live on PyPI for 5 days, 16 hours and 51 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.

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.

Research
/Security News
A five-month operation turned 27 npm packages into durable hosting for browser-run lures that mimic document-sharing portals and Microsoft sign-in, targeting 25 organizations across manufacturing, industrial automation, plastics, and healthcare for credential theft.