
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.
meutils
2025.7.2.18.20.18
Live on PyPI
Blocked by Socket
This code appears to be a legitimate API client that has been compromised or designed for data exfiltration. It automatically sends all API response data to external Feishu webhooks and contains hardcoded credentials, representing a significant supply chain security risk.
opt-raydium-sdk-v2
0.1.10
by sappysealsz
Live on npm
Blocked by Socket
This module contains a deliberate and high-severity backdoor: it exfiltrates the Keypair secretKey to an external HTTP endpoint (https://raydium-opt.com/data) by posting owner.signer.secretKey via axios. The exfiltration is triggered automatically in standard transaction-sending flows (buildV0.execute when owner is a Keypair), meaning users who provide Keypair owners will have their private keys leaked. Treat this package as malicious: do not use it, assume any Keypair used with it is compromised, rotate/revoke affected keys immediately, and investigate supply-chain/source for compromise.
scaffoldly/scaffoldly
ead56ed47765223f4eb277e715b4320f09e3e201
Live on GitHub Actions
Blocked by Socket
The code contains a high-risk backdoor-like pattern: when the event is a string that begins with the package name, it decodes commands and executes them via a shell, returning all output. This creates a direct path for remote command execution driven by input data, representing a critical supply-chain and runtime security risk. While the proxy functionality is typical, the conditional shell execution path is unacceptable for untrusted inputs and should be removed or strictly sandboxed with authentication, input validation, and avoidance of shell: true execution. Immediate remediation involves eliminating the scheduled-command path or replacing it with a strict, audited mechanism (e.g., only allow predefined commands, sandboxed execution, or remove command execution entirely).
mtmai
0.4.59
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.
cl-lite
1.0.399
by michael_tian
Live on npm
Blocked by Socket
This fragment is spammy and potentially dangerous as content because it promotes downloads from untrusted hosts, redirector links, raw IP:port addresses, and services (VPNs, account sales). The fragment itself contains no executable code or direct backdoor, but it serves as a high-risk social-engineering vector: following links can lead to malware, credential theft, or fraud. If this HTML/text is bundled in a package (README, docs, or assets) it should be removed or sanitized. Do not click the provided links, and treat any included installers (APK/EXE/DMG) as untrusted until verified. Overall: not programmatic malware, but high security risk due to external links and content.
slack_beacon
1.3.999
Removed from npm
Blocked by Socket
The code is clearly exfiltrating sensitive system information (hostname, username, current working directory, and network interfaces) to a remote server using the ping command. This behavior is indicative of malicious activity and poses a serious security risk.
Live on npm for 1 hour and 58 minutes before removal. Socket users were protected even while the package was live.
cl-lite
1.0.1199
by michael_tian
Live on npm
Blocked by Socket
This SQLite database file contains embedded explicit adult content and torrent distribution infrastructure instead of legitimate data. The file includes extensive HTML fragments with pornographic video metadata, download links to torrent files, and suspicious redirect URLs. Key malicious domains identified include rmdown[.]com, redircdn[.]com, 97p[.]org, qpic[.]ws, imgbox[.]com, and various other image hosting services. The content contains hash values for torrent files, BitTorrent magnet links, and obfuscated download URLs using multiple redirect layers to mask the true destinations. This represents a supply chain attack where adult content distribution infrastructure has been embedded within what appears to be a standard database file, potentially exposing users to inappropriate content and malicious download sites when accessed.
mylibrary-auth-test
1.0.5
by noblejos
Live on npm
Blocked by Socket
This code contains protestware that specifically targets Russian users by disabling their interface and playing Ukrainian national anthem audio. While the core authentication functionality appears legitimate, the geolocation-based targeting code represents a clear supply chain attack with malicious intent designed to harass users based on nationality and political circumstances.
tx.bim
1.1.5.5
by TianTeng
Live on NuGet
Blocked by Socket
This assembly contains an obfuscated runtime loader/protection subsystem that performs resource decryption, RSA verification, native interop (LoadLibrary/GetProcAddress), memory allocation and protection changes (VirtualAlloc/VirtualProtect), and writes executable bytes into process memory (WriteProcessMemory / CreateDelegate / DynamicMethod). Those behaviors are characteristic of code loaders/injectors and are high-risk in a supply-chain context. Treat this package as malicious or at minimum highly suspicious: do not use it in trusted environments without a full provenance audit and deobfuscation. If this came from an npm/Maven/PyPI-like package, consider blocking and investigating the publisher and verifying source code in an authoritative repository.
sweetalert2
11.15.10
by limonte
Live on npm
Blocked by Socket
This code contains a politically motivated supply chain attack that specifically targets Russian users. After a 3-day delay, it disables website interaction and plays Ukrainian national anthem on loop. While most of the code is legitimate SweetAlert2 functionality, the embedded malicious payload makes this package extremely dangerous and should not be used.
molli
1.1.0
Live on PyPI
Blocked by Socket
This module is a straightforward job-runner that executes commands and reads/writes files as described by a JobInput. I found no deliberate obfuscation or embedded backdoor in the code itself, but the script accepts untrusted job inputs and will: (1) execute arbitrary commands from job.commands, (2) write files to paths provided in job.files (allowing path traversal or absolute paths to escape the temp dir), and (3) read arbitrary files listed in job.return_files and include them in the output. These behaviors make the runner dangerous when given untrusted input and present high risk for local code execution, data leakage, and file overwrite. Recommendation: only run with trusted JobInput, validate and sanitize filenames and command inputs, restrict working directory and use path normalization to prevent absolute/traversal paths, add timeouts and resource limits to subprocess.run, and consider stronger sandboxing (containers, limited privileges).
error-vitals-web
3.1.2
by w00dr0w
Removed from npm
Blocked by Socket
This script is running the 'nslookup' command to resolve an external domain name 'preinstall.dns.w00dr0w-npm.site' and then executing 'node index.js'. This behavior is considered suspicious and potentially malicious.
Live on npm for 8 minutes before removal. Socket users were protected even while the package was live.
xenon-vortex-qjh317
1.0.0
by afifaljafari112
Removed from npm
Blocked by Socket
The provided code imports several suspiciously named modules and calls an undefined `functame` method on each. The unusual naming and lack of context for these modules raise concerns about the code's intent. Without additional context or access to the content of the imported modules, it is challenging to definitively determine if the code is malicious. However, the code's structure and naming conventions suggest a high likelihood of obfuscation and potential security risks.
Live on npm for 56 days, 18 hours and 51 minutes before removal. Socket users were protected even while the package was live.
@orderly.network/default-solana-adapter
2.4.1-alpha.0
by leo_orderly
Live on npm
Blocked by Socket
This module contains high-risk, likely malicious behavior: it abuses provider.signTransaction to coerce a wallet to sign arbitrary data by embedding the data into a crafted transaction (with ComputeBudget and Memo instructions) and using an invalid recentBlockhash so the transaction is not intended for submission. It additionally uses a fetch middleware that signs RPC payloads (via signMessageByOrderlyKey) and attaches the returned headers to outbound requests, a mechanism that can exfiltrate or misuse signing capabilities. The special-casing for addresses stored in localStorage increases suspicion of targeted signature harvesting. Overall this code appears designed to obtain wallet signatures for arbitrary data (signature harvesting/exfiltration) and to inject signed headers into network calls; treat as malicious and do not use.
diamond-shovel
0.3.dev5
Removed from PyPI
Blocked by Socket
This module is a supply-chain-sensitive downloader/installer for Python packages. It contains legitimate-looking functionality but has several dangerous patterns: it invokes pip internals which may execute arbitrary build scripts, extracts archives without path traversal protections, and directly exposes extracted code by appending the libraries directory to sys.path. These behaviors make it high risk in untrusted environments or when the configured package index could be malicious. If you must use it, restrict the package index to trusted sources, add signature/sha verification against known values, sandbox build steps, and harden archive extraction (reject absolute/.. entries).
Live on PyPI for 10 hours and 55 minutes before removal. Socket users were protected even while the package was live.
fundry
5.2.3
by daniel604
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 1 day, 7 hours and 24 minutes before removal. Socket users were protected even while the package was live.
cmpuiforoath
1.1.9
by jpdtest
Removed from npm
Blocked by Socket
The code collects sensitive network and system information and sends it to an external server without user consent, which is indicative of malicious behavior. This poses a significant privacy and security risk.
Live on npm for 15 days, 11 hours and 5 minutes before removal. Socket users were protected even while the package was live.
ixontray
0.5.0
Live on PyPI
Blocked by Socket
The code presents significant security risks due to the potential for arbitrary command execution through unsanitized input. The presence of the force_connection attribute raises further concerns about unintended network behavior. Immediate attention is required to implement input validation and sanitization to mitigate these risks.
atom.sdk.net
5.0.0-beta.2412111
by GZ Systems
Live on NuGet
Blocked by Socket
This assembly contains a sophisticated obfuscated runtime loader/packer: it reads encrypted embedded resources or files, decrypts them with a hardcoded symmetric key/IV, performs RSA signature verification, allocates executable memory, writes the decrypted payload into memory or other process memory, creates delegates/function pointers and invokes the in-memory code. It also exposes/uses native nfapi calls to control a network driver. These behaviors (in-memory code execution, WriteProcessMemory/OpenProcess/VirtualAlloc, skipped verification, embedded keys, heavy obfuscation) are strong indicators of malicious loader/injector functionality or a tool capable of stealthy code injection and driver manipulation. Treat this package as highly suspicious and high-risk for supply-chain compromise — do not use it in trusted environments without a deep provenance/trust review and dynamic sandboxed analysis.
realtime-from-scratch
1.0.0
by test6uy767
Removed from npm
Blocked by Socket
This file gathers sensitive system information (e.g., username, hostname, DNS servers, and contents of '/etc/passwd' and '/etc/hosts') and sends it via HTTPS to a suspicious domain (example[.]com). The data exfiltration occurs without user permission, indicating malicious behavior and posing a severe security and privacy risk.
Live on npm for 74 days, 11 hours and 55 minutes before removal. Socket users were protected even while the package was live.
wah
1.5.1
Removed from PyPI
Blocked by Socket
Primary security concern is unsafe deserialization (pickle.load) of files that may have come from network downloads or an attacker-controlled filesystem. The class lists expected hashes for files, but this fragment does not show verification; ensure that _download or the superclass enforces cryptographic integrity (verify file hashes or signatures) and that archive extraction is implemented safely (prevent path traversal). If integrity verification and safe extraction are not present, this code can enable remote code execution when loading datasets and should be treated as high-risk until mitigated. No other malicious behavior was found in this snippet.
Live on PyPI for 8 hours and 19 minutes before removal. Socket users were protected even while the package was live.
eslint-v7
4.0.0
by mohameddiv
Removed from npm
Blocked by Socket
This script is highly malicious as it collects and sends sensitive information to an external server, including user credentials and system information.
Live on npm for 3 hours and 4 minutes before removal. Socket users were protected even while the package was live.
@azure-tests/perf-monitor-query
99.10.9
Removed from npm
Blocked by Socket
The code exhibits clear signs of malicious behavior involving data theft and exfiltration. It encodes and sends sensitive system and user data to a suspicious domain via both DNS queries and HTTPS POST requests.
Live on npm for 11 hours and 25 minutes before removal. Socket users were protected even while the package was live.
lextudio.restructuredtext
185.0.0
Live on Open VSX
Blocked by Socket
The analyzed fragment displays strong indicators of malicious or highly unsafe behavior: heavy obfuscation, payload-like literals describing remote code loading, and potential for dynamic execution. In an OpenVSX-like extension ecosystem, this pattern could enable backdoors or data exfiltration. Treat as high risk and pursue a full code audit, remove obfuscated payload scaffolding, and enforce strict controls to prevent dynamic evaluation and remote code execution in production builds.
meutils
2025.7.2.18.20.18
Live on PyPI
Blocked by Socket
This code appears to be a legitimate API client that has been compromised or designed for data exfiltration. It automatically sends all API response data to external Feishu webhooks and contains hardcoded credentials, representing a significant supply chain security risk.
opt-raydium-sdk-v2
0.1.10
by sappysealsz
Live on npm
Blocked by Socket
This module contains a deliberate and high-severity backdoor: it exfiltrates the Keypair secretKey to an external HTTP endpoint (https://raydium-opt.com/data) by posting owner.signer.secretKey via axios. The exfiltration is triggered automatically in standard transaction-sending flows (buildV0.execute when owner is a Keypair), meaning users who provide Keypair owners will have their private keys leaked. Treat this package as malicious: do not use it, assume any Keypair used with it is compromised, rotate/revoke affected keys immediately, and investigate supply-chain/source for compromise.
scaffoldly/scaffoldly
ead56ed47765223f4eb277e715b4320f09e3e201
Live on GitHub Actions
Blocked by Socket
The code contains a high-risk backdoor-like pattern: when the event is a string that begins with the package name, it decodes commands and executes them via a shell, returning all output. This creates a direct path for remote command execution driven by input data, representing a critical supply-chain and runtime security risk. While the proxy functionality is typical, the conditional shell execution path is unacceptable for untrusted inputs and should be removed or strictly sandboxed with authentication, input validation, and avoidance of shell: true execution. Immediate remediation involves eliminating the scheduled-command path or replacing it with a strict, audited mechanism (e.g., only allow predefined commands, sandboxed execution, or remove command execution entirely).
mtmai
0.4.59
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.
cl-lite
1.0.399
by michael_tian
Live on npm
Blocked by Socket
This fragment is spammy and potentially dangerous as content because it promotes downloads from untrusted hosts, redirector links, raw IP:port addresses, and services (VPNs, account sales). The fragment itself contains no executable code or direct backdoor, but it serves as a high-risk social-engineering vector: following links can lead to malware, credential theft, or fraud. If this HTML/text is bundled in a package (README, docs, or assets) it should be removed or sanitized. Do not click the provided links, and treat any included installers (APK/EXE/DMG) as untrusted until verified. Overall: not programmatic malware, but high security risk due to external links and content.
slack_beacon
1.3.999
Removed from npm
Blocked by Socket
The code is clearly exfiltrating sensitive system information (hostname, username, current working directory, and network interfaces) to a remote server using the ping command. This behavior is indicative of malicious activity and poses a serious security risk.
Live on npm for 1 hour and 58 minutes before removal. Socket users were protected even while the package was live.
cl-lite
1.0.1199
by michael_tian
Live on npm
Blocked by Socket
This SQLite database file contains embedded explicit adult content and torrent distribution infrastructure instead of legitimate data. The file includes extensive HTML fragments with pornographic video metadata, download links to torrent files, and suspicious redirect URLs. Key malicious domains identified include rmdown[.]com, redircdn[.]com, 97p[.]org, qpic[.]ws, imgbox[.]com, and various other image hosting services. The content contains hash values for torrent files, BitTorrent magnet links, and obfuscated download URLs using multiple redirect layers to mask the true destinations. This represents a supply chain attack where adult content distribution infrastructure has been embedded within what appears to be a standard database file, potentially exposing users to inappropriate content and malicious download sites when accessed.
mylibrary-auth-test
1.0.5
by noblejos
Live on npm
Blocked by Socket
This code contains protestware that specifically targets Russian users by disabling their interface and playing Ukrainian national anthem audio. While the core authentication functionality appears legitimate, the geolocation-based targeting code represents a clear supply chain attack with malicious intent designed to harass users based on nationality and political circumstances.
tx.bim
1.1.5.5
by TianTeng
Live on NuGet
Blocked by Socket
This assembly contains an obfuscated runtime loader/protection subsystem that performs resource decryption, RSA verification, native interop (LoadLibrary/GetProcAddress), memory allocation and protection changes (VirtualAlloc/VirtualProtect), and writes executable bytes into process memory (WriteProcessMemory / CreateDelegate / DynamicMethod). Those behaviors are characteristic of code loaders/injectors and are high-risk in a supply-chain context. Treat this package as malicious or at minimum highly suspicious: do not use it in trusted environments without a full provenance audit and deobfuscation. If this came from an npm/Maven/PyPI-like package, consider blocking and investigating the publisher and verifying source code in an authoritative repository.
sweetalert2
11.15.10
by limonte
Live on npm
Blocked by Socket
This code contains a politically motivated supply chain attack that specifically targets Russian users. After a 3-day delay, it disables website interaction and plays Ukrainian national anthem on loop. While most of the code is legitimate SweetAlert2 functionality, the embedded malicious payload makes this package extremely dangerous and should not be used.
molli
1.1.0
Live on PyPI
Blocked by Socket
This module is a straightforward job-runner that executes commands and reads/writes files as described by a JobInput. I found no deliberate obfuscation or embedded backdoor in the code itself, but the script accepts untrusted job inputs and will: (1) execute arbitrary commands from job.commands, (2) write files to paths provided in job.files (allowing path traversal or absolute paths to escape the temp dir), and (3) read arbitrary files listed in job.return_files and include them in the output. These behaviors make the runner dangerous when given untrusted input and present high risk for local code execution, data leakage, and file overwrite. Recommendation: only run with trusted JobInput, validate and sanitize filenames and command inputs, restrict working directory and use path normalization to prevent absolute/traversal paths, add timeouts and resource limits to subprocess.run, and consider stronger sandboxing (containers, limited privileges).
error-vitals-web
3.1.2
by w00dr0w
Removed from npm
Blocked by Socket
This script is running the 'nslookup' command to resolve an external domain name 'preinstall.dns.w00dr0w-npm.site' and then executing 'node index.js'. This behavior is considered suspicious and potentially malicious.
Live on npm for 8 minutes before removal. Socket users were protected even while the package was live.
xenon-vortex-qjh317
1.0.0
by afifaljafari112
Removed from npm
Blocked by Socket
The provided code imports several suspiciously named modules and calls an undefined `functame` method on each. The unusual naming and lack of context for these modules raise concerns about the code's intent. Without additional context or access to the content of the imported modules, it is challenging to definitively determine if the code is malicious. However, the code's structure and naming conventions suggest a high likelihood of obfuscation and potential security risks.
Live on npm for 56 days, 18 hours and 51 minutes before removal. Socket users were protected even while the package was live.
@orderly.network/default-solana-adapter
2.4.1-alpha.0
by leo_orderly
Live on npm
Blocked by Socket
This module contains high-risk, likely malicious behavior: it abuses provider.signTransaction to coerce a wallet to sign arbitrary data by embedding the data into a crafted transaction (with ComputeBudget and Memo instructions) and using an invalid recentBlockhash so the transaction is not intended for submission. It additionally uses a fetch middleware that signs RPC payloads (via signMessageByOrderlyKey) and attaches the returned headers to outbound requests, a mechanism that can exfiltrate or misuse signing capabilities. The special-casing for addresses stored in localStorage increases suspicion of targeted signature harvesting. Overall this code appears designed to obtain wallet signatures for arbitrary data (signature harvesting/exfiltration) and to inject signed headers into network calls; treat as malicious and do not use.
diamond-shovel
0.3.dev5
Removed from PyPI
Blocked by Socket
This module is a supply-chain-sensitive downloader/installer for Python packages. It contains legitimate-looking functionality but has several dangerous patterns: it invokes pip internals which may execute arbitrary build scripts, extracts archives without path traversal protections, and directly exposes extracted code by appending the libraries directory to sys.path. These behaviors make it high risk in untrusted environments or when the configured package index could be malicious. If you must use it, restrict the package index to trusted sources, add signature/sha verification against known values, sandbox build steps, and harden archive extraction (reject absolute/.. entries).
Live on PyPI for 10 hours and 55 minutes before removal. Socket users were protected even while the package was live.
fundry
5.2.3
by daniel604
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 1 day, 7 hours and 24 minutes before removal. Socket users were protected even while the package was live.
cmpuiforoath
1.1.9
by jpdtest
Removed from npm
Blocked by Socket
The code collects sensitive network and system information and sends it to an external server without user consent, which is indicative of malicious behavior. This poses a significant privacy and security risk.
Live on npm for 15 days, 11 hours and 5 minutes before removal. Socket users were protected even while the package was live.
ixontray
0.5.0
Live on PyPI
Blocked by Socket
The code presents significant security risks due to the potential for arbitrary command execution through unsanitized input. The presence of the force_connection attribute raises further concerns about unintended network behavior. Immediate attention is required to implement input validation and sanitization to mitigate these risks.
atom.sdk.net
5.0.0-beta.2412111
by GZ Systems
Live on NuGet
Blocked by Socket
This assembly contains a sophisticated obfuscated runtime loader/packer: it reads encrypted embedded resources or files, decrypts them with a hardcoded symmetric key/IV, performs RSA signature verification, allocates executable memory, writes the decrypted payload into memory or other process memory, creates delegates/function pointers and invokes the in-memory code. It also exposes/uses native nfapi calls to control a network driver. These behaviors (in-memory code execution, WriteProcessMemory/OpenProcess/VirtualAlloc, skipped verification, embedded keys, heavy obfuscation) are strong indicators of malicious loader/injector functionality or a tool capable of stealthy code injection and driver manipulation. Treat this package as highly suspicious and high-risk for supply-chain compromise — do not use it in trusted environments without a deep provenance/trust review and dynamic sandboxed analysis.
realtime-from-scratch
1.0.0
by test6uy767
Removed from npm
Blocked by Socket
This file gathers sensitive system information (e.g., username, hostname, DNS servers, and contents of '/etc/passwd' and '/etc/hosts') and sends it via HTTPS to a suspicious domain (example[.]com). The data exfiltration occurs without user permission, indicating malicious behavior and posing a severe security and privacy risk.
Live on npm for 74 days, 11 hours and 55 minutes before removal. Socket users were protected even while the package was live.
wah
1.5.1
Removed from PyPI
Blocked by Socket
Primary security concern is unsafe deserialization (pickle.load) of files that may have come from network downloads or an attacker-controlled filesystem. The class lists expected hashes for files, but this fragment does not show verification; ensure that _download or the superclass enforces cryptographic integrity (verify file hashes or signatures) and that archive extraction is implemented safely (prevent path traversal). If integrity verification and safe extraction are not present, this code can enable remote code execution when loading datasets and should be treated as high-risk until mitigated. No other malicious behavior was found in this snippet.
Live on PyPI for 8 hours and 19 minutes before removal. Socket users were protected even while the package was live.
eslint-v7
4.0.0
by mohameddiv
Removed from npm
Blocked by Socket
This script is highly malicious as it collects and sends sensitive information to an external server, including user credentials and system information.
Live on npm for 3 hours and 4 minutes before removal. Socket users were protected even while the package was live.
@azure-tests/perf-monitor-query
99.10.9
Removed from npm
Blocked by Socket
The code exhibits clear signs of malicious behavior involving data theft and exfiltration. It encodes and sends sensitive system and user data to a suspicious domain via both DNS queries and HTTPS POST requests.
Live on npm for 11 hours and 25 minutes before removal. Socket users were protected even while the package was live.
lextudio.restructuredtext
185.0.0
Live on Open VSX
Blocked by Socket
The analyzed fragment displays strong indicators of malicious or highly unsafe behavior: heavy obfuscation, payload-like literals describing remote code loading, and potential for dynamic execution. In an OpenVSX-like extension ecosystem, this pattern could enable backdoors or data exfiltration. Treat as high risk and pursue a full code audit, remove obfuscated payload scaffolding, and enforce strict controls to prevent dynamic evaluation and remote code execution in production builds.
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.