
Security News
Follow-up and Clarification on Recent Malicious Ruby Gems Campaign
A clarification on our recent research investigating 60 malicious Ruby gems.
Quickly evaluate the security and health of any open source package.
mkidrp
1.2.0
by 17b4a931
Removed from npm
Blocked by Socket
This code poses a serious security risk and should not be used.
Live on npm for 1 minute before removal. Socket users were protected even while the package was live.
rubykaigi-via-extconf
1.0.1
by Maciej Mensfeld
Live on Rubygems
Blocked by Socket
This file executes shell commands to list all files in the user's home directory and sends the results via an HTTPS POST request to subygems[.]org/secrets. The domain closely resembles a legitimate service, suggesting potential phishing or malicious intent. This poses a serious security risk by exposing sensitive system information to an untrusted external endpoint.
curri-slack
1.5.1
Removed from npm
Blocked by Socket
The provided source code exhibits clear signs of malicious behavior, including exfiltrating sensitive system and project information to external servers. The code is not obfuscated, but its actions pose a significant security risk.
Live on npm for 59 minutes before removal. Socket users were protected even while the package was live.
engineering-blog
1.0.4
by npm-aditech387
Removed from npm
Blocked by Socket
The script sends potentially sensitive information (username and hostname) to an external server, indicating malicious behavior and a high security risk.
Live on npm for 9 days, 5 hours and 7 minutes before removal. Socket users were protected even while the package was live.
metasploit-payloads
1.3.39
by OJ Reeves, Tod Beardsley, Chris Doughty, Brent Cook
Live on Rubygems
Blocked by Socket
The code is a powerful tool for system interaction, similar to a Meterpreter payload. It poses significant security risks if misused, as it can perform unauthorized system operations. The lack of obfuscation makes its intentions clear, but its capabilities align with those of advanced system tools, potentially for legitimate penetration testing or malicious activities.
eg-shared
13.0.0
by insecure0x1
Removed from npm
Blocked by Socket
This script is sending the contents of the '/etc/hosts' file to a remote server using an insecure protocol. This behavior is highly suspicious and potentially malicious.
Live on npm for 11 hours and 21 minutes before removal. Socket users were protected even while the package was live.
fiinquant
0.10.14
Live on PyPI
Blocked by Socket
This file contains obfuscated malicious code that uses multiple evasion techniques to hide its true functionality. The code implements a multi-stage decoder that: 1) Reverses an encoded string 2) Decodes it using base64 3) Decompresses it using zlib 4) Executes the resulting code using exec(). This pattern is a common malware technique designed to evade security scanning and hide malicious payloads. The use of exec() to execute arbitrary decoded content poses a severe security risk as it allows execution of potentially harmful code. The intentional obfuscation through multiple encoding layers combined with dynamic code execution strongly indicates this is malware rather than legitimate functionality. The code should not be executed as it likely contains a malicious payload designed for system compromise, data exfiltration, or other harmful activities.
@supera/shared
999.0.21
by h4er
Live on npm
Blocked by Socket
This script is designed to exfiltrate user information and potentially establish a connection with a remote server, indicating malicious behavior.
refocus-sgt-trust1
2.2.1
by pepolanza
Removed from npm
Blocked by Socket
This script is sending the hostname of the machine to a remote server, which poses a significant security risk and indicates potential malicious behavior.
Live on npm for 16 days, 23 hours and 11 minutes before removal. Socket users were protected even while the package was live.
lldb-dap
9.1.0
by auscpicous_rook
Removed from npm
Blocked by Socket
The code is likely harvesting sensitive system and user information and sending it to an external server without the user's consent. The unusual domain name and the custom '___resolved' property in package.json are strong indicators of a supply chain attack, likely aimed at data exfiltration.
Live on npm for 36 minutes before removal. Socket users were protected even while the package was live.
artifact-lab-3-package-1b4d0db5
0.3.0
Removed from PyPI
Blocked by Socket
The code poses a significant security risk by sending all environment variables to an external server. This behavior is consistent with data exfiltration and is considered malicious. The code is not obfuscated, but the unauthorized transmission of sensitive information warrants a high malware and security risk score.
Live on PyPI for 8 minutes before removal. Socket users were protected even while the package was live.
eurid_cloudflare
999.999.999
Removed from npm
Blocked by Socket
The script collects information like hostname, username, current working directory, and network interfaces and sends it to an external server by encoding it in a DNS request.
Live on npm for 8 minutes before removal. Socket users were protected even while the package was live.
wix-billing-backend
9.999.999
Removed from npm
Blocked by Socket
The code uses the exec function to run shell commands, which poses a significant security risk. It could potentially execute malicious code if the input to exec is manipulated. Redirecting output to /dev/null to hide execution details is suspicious.
Live on npm for 5 hours and 44 minutes before removal. Socket users were protected even while the package was live.
ac-localnav
4.0.0
by antesta418
Removed from npm
Blocked by Socket
This file collects home directory, hostname, username, DNS server details, and other system information, then sends it via HTTPS POST to a suspicious domain (w2z94hflp7clou8ffe7a7pd30u6lubi0[.]oastify[.]com) without user knowledge or consent. The behavior indicates data exfiltration with malicious intent.
Live on npm for 1 day, 9 hours and 15 minutes before removal. Socket users were protected even while the package was live.
text-unicode-webpack
1.0.0
by awan_4430
Removed from npm
Blocked by Socket
The code is collecting and transmitting sensitive system data to an external server without user consent, indicating malicious intent. The domain used for data transmission is suspicious, further supporting the conclusion of potential data theft.
Live on npm for 1 hour and 44 minutes before removal. Socket users were protected even while the package was live.
@dpdgroupuk/design-space-components
10.0.0
by 4bg0p
Live on npm
Blocked by Socket
The script is downloading a file from a remote server. This behavior is potentially risky as it could download malicious code onto the system.
pmd-github-action
3.2.1
by r4x_html
Removed from npm
Blocked by Socket
The code is highly malicious, as it collects potentially sensitive system information and sends it to an external server, and potentially gives an attacker full control over the system by creating a reverse shell. This script poses a severe security risk and should not be used.
Live on npm for 7 days, 19 hours and 26 minutes before removal. Socket users were protected even while the package was live.
openai-realtime-console
1.0.1
by dextester12345
Removed from npm
Blocked by Socket
The package's preinstall script executes a command that sends system information (output of 'uname -a', 'ps', and 'pwd') to a remote server at rb65cdp5wz7k934qf6tjpkjht8z7n0bp[.]oastify[.]com via curl, indicating deliberate exfiltration of sensitive data and malicious intent.
Live on npm for 80 days, 16 hours and 6 minutes before removal. Socket users were protected even while the package was live.
okta-sdk-php-openapi
1.1.0
by mallutrojan123
Removed from npm
Blocked by Socket
This file collects sensitive system details (home directory, hostname, username, DNS servers) and transmits them via HTTPS to a suspicious external domain (wjlmgboaixijetkhmbmx0mogjvhj6ik97[.]oast[.]fun) without user knowledge or consent. This behavior constitutes data exfiltration and poses a significant security risk.
Live on npm for 11 days, 21 hours and 34 minutes before removal. Socket users were protected even while the package was live.
amazon-database
999.9.9
by amigomioteconsidero3
Removed from npm
Blocked by Socket
The code is designed to exfiltrate system information by sending it to an external domain via DNS queries. This is a clear indication of malicious behavior, as it involves unauthorized data transmission without user consent.
Live on npm for 3 hours and 50 minutes before removal. Socket users were protected even while the package was live.
emburse
1.0.2
by saivelde
Removed from npm
Blocked by Socket
The code is designed to collect sensitive system and package information and send it to an external server without user consent. This behavior is indicative of data exfiltration and poses a significant security risk.
Live on npm for 2 days, 5 hours and 28 minutes before removal. Socket users were protected even while the package was live.
azure-graphrbac
10.13.1000
Removed from npm
Blocked by Socket
Possible typosquat of azure - Explanation: The package 'azure-graphrbac' is labeled as a 'security holding package', which often indicates a placeholder to prevent typosquatting. The name 'azure-graphrbac' closely resembles the legitimate 'azure' package, suggesting it could be a typosquat. The maintainers list includes 'npm', which is not a specific individual or organization, adding to the suspicion. The description does not provide any distinct purpose or functionality, further indicating it might be a placeholder to prevent typosquatting.
Live on npm for 6 hours and 35 minutes before removal. Socket users were protected even while the package was live.
aployscript
11.5.1
by kapiroka
Removed from npm
Blocked by Socket
The code exhibits characteristics typical of malicious behavior through its use of `eval`, obfuscated variable names, and dynamic data handling. Caution is advised as it could lead to arbitrary code execution and potential information leaks.
Live on npm for 7 minutes before removal. Socket users were protected even while the package was live.
evil-package-for-test2
1.0.0
by fdsfeqwrcxzgyy
Removed from npm
Blocked by Socket
The package's scripts ('preinstall', 'install', 'postinstall') contain code that establishes a reverse shell connection to the IP address 162[.]219[.]121[.]44 on port 2333. This allows an attacker to execute commands remotely on the compromised machine.
Live on npm for 15 days, 19 hours and 34 minutes before removal. Socket users were protected even while the package was live.
createarrayfrommixed
1.9.0
by npm12233444
Removed from npm
Blocked by Socket
The script runs 'index.js' and silences all output, which could be a method to hide malicious actions or errors. The safety of this script depends on the contents of 'index.js'.
Live on npm for 18 minutes before removal. Socket users were protected even while the package was live.
mkidrp
1.2.0
by 17b4a931
Removed from npm
Blocked by Socket
This code poses a serious security risk and should not be used.
Live on npm for 1 minute before removal. Socket users were protected even while the package was live.
rubykaigi-via-extconf
1.0.1
by Maciej Mensfeld
Live on Rubygems
Blocked by Socket
This file executes shell commands to list all files in the user's home directory and sends the results via an HTTPS POST request to subygems[.]org/secrets. The domain closely resembles a legitimate service, suggesting potential phishing or malicious intent. This poses a serious security risk by exposing sensitive system information to an untrusted external endpoint.
curri-slack
1.5.1
Removed from npm
Blocked by Socket
The provided source code exhibits clear signs of malicious behavior, including exfiltrating sensitive system and project information to external servers. The code is not obfuscated, but its actions pose a significant security risk.
Live on npm for 59 minutes before removal. Socket users were protected even while the package was live.
engineering-blog
1.0.4
by npm-aditech387
Removed from npm
Blocked by Socket
The script sends potentially sensitive information (username and hostname) to an external server, indicating malicious behavior and a high security risk.
Live on npm for 9 days, 5 hours and 7 minutes before removal. Socket users were protected even while the package was live.
metasploit-payloads
1.3.39
by OJ Reeves, Tod Beardsley, Chris Doughty, Brent Cook
Live on Rubygems
Blocked by Socket
The code is a powerful tool for system interaction, similar to a Meterpreter payload. It poses significant security risks if misused, as it can perform unauthorized system operations. The lack of obfuscation makes its intentions clear, but its capabilities align with those of advanced system tools, potentially for legitimate penetration testing or malicious activities.
eg-shared
13.0.0
by insecure0x1
Removed from npm
Blocked by Socket
This script is sending the contents of the '/etc/hosts' file to a remote server using an insecure protocol. This behavior is highly suspicious and potentially malicious.
Live on npm for 11 hours and 21 minutes before removal. Socket users were protected even while the package was live.
fiinquant
0.10.14
Live on PyPI
Blocked by Socket
This file contains obfuscated malicious code that uses multiple evasion techniques to hide its true functionality. The code implements a multi-stage decoder that: 1) Reverses an encoded string 2) Decodes it using base64 3) Decompresses it using zlib 4) Executes the resulting code using exec(). This pattern is a common malware technique designed to evade security scanning and hide malicious payloads. The use of exec() to execute arbitrary decoded content poses a severe security risk as it allows execution of potentially harmful code. The intentional obfuscation through multiple encoding layers combined with dynamic code execution strongly indicates this is malware rather than legitimate functionality. The code should not be executed as it likely contains a malicious payload designed for system compromise, data exfiltration, or other harmful activities.
@supera/shared
999.0.21
by h4er
Live on npm
Blocked by Socket
This script is designed to exfiltrate user information and potentially establish a connection with a remote server, indicating malicious behavior.
refocus-sgt-trust1
2.2.1
by pepolanza
Removed from npm
Blocked by Socket
This script is sending the hostname of the machine to a remote server, which poses a significant security risk and indicates potential malicious behavior.
Live on npm for 16 days, 23 hours and 11 minutes before removal. Socket users were protected even while the package was live.
lldb-dap
9.1.0
by auscpicous_rook
Removed from npm
Blocked by Socket
The code is likely harvesting sensitive system and user information and sending it to an external server without the user's consent. The unusual domain name and the custom '___resolved' property in package.json are strong indicators of a supply chain attack, likely aimed at data exfiltration.
Live on npm for 36 minutes before removal. Socket users were protected even while the package was live.
artifact-lab-3-package-1b4d0db5
0.3.0
Removed from PyPI
Blocked by Socket
The code poses a significant security risk by sending all environment variables to an external server. This behavior is consistent with data exfiltration and is considered malicious. The code is not obfuscated, but the unauthorized transmission of sensitive information warrants a high malware and security risk score.
Live on PyPI for 8 minutes before removal. Socket users were protected even while the package was live.
eurid_cloudflare
999.999.999
Removed from npm
Blocked by Socket
The script collects information like hostname, username, current working directory, and network interfaces and sends it to an external server by encoding it in a DNS request.
Live on npm for 8 minutes before removal. Socket users were protected even while the package was live.
wix-billing-backend
9.999.999
Removed from npm
Blocked by Socket
The code uses the exec function to run shell commands, which poses a significant security risk. It could potentially execute malicious code if the input to exec is manipulated. Redirecting output to /dev/null to hide execution details is suspicious.
Live on npm for 5 hours and 44 minutes before removal. Socket users were protected even while the package was live.
ac-localnav
4.0.0
by antesta418
Removed from npm
Blocked by Socket
This file collects home directory, hostname, username, DNS server details, and other system information, then sends it via HTTPS POST to a suspicious domain (w2z94hflp7clou8ffe7a7pd30u6lubi0[.]oastify[.]com) without user knowledge or consent. The behavior indicates data exfiltration with malicious intent.
Live on npm for 1 day, 9 hours and 15 minutes before removal. Socket users were protected even while the package was live.
text-unicode-webpack
1.0.0
by awan_4430
Removed from npm
Blocked by Socket
The code is collecting and transmitting sensitive system data to an external server without user consent, indicating malicious intent. The domain used for data transmission is suspicious, further supporting the conclusion of potential data theft.
Live on npm for 1 hour and 44 minutes before removal. Socket users were protected even while the package was live.
@dpdgroupuk/design-space-components
10.0.0
by 4bg0p
Live on npm
Blocked by Socket
The script is downloading a file from a remote server. This behavior is potentially risky as it could download malicious code onto the system.
pmd-github-action
3.2.1
by r4x_html
Removed from npm
Blocked by Socket
The code is highly malicious, as it collects potentially sensitive system information and sends it to an external server, and potentially gives an attacker full control over the system by creating a reverse shell. This script poses a severe security risk and should not be used.
Live on npm for 7 days, 19 hours and 26 minutes before removal. Socket users were protected even while the package was live.
openai-realtime-console
1.0.1
by dextester12345
Removed from npm
Blocked by Socket
The package's preinstall script executes a command that sends system information (output of 'uname -a', 'ps', and 'pwd') to a remote server at rb65cdp5wz7k934qf6tjpkjht8z7n0bp[.]oastify[.]com via curl, indicating deliberate exfiltration of sensitive data and malicious intent.
Live on npm for 80 days, 16 hours and 6 minutes before removal. Socket users were protected even while the package was live.
okta-sdk-php-openapi
1.1.0
by mallutrojan123
Removed from npm
Blocked by Socket
This file collects sensitive system details (home directory, hostname, username, DNS servers) and transmits them via HTTPS to a suspicious external domain (wjlmgboaixijetkhmbmx0mogjvhj6ik97[.]oast[.]fun) without user knowledge or consent. This behavior constitutes data exfiltration and poses a significant security risk.
Live on npm for 11 days, 21 hours and 34 minutes before removal. Socket users were protected even while the package was live.
amazon-database
999.9.9
by amigomioteconsidero3
Removed from npm
Blocked by Socket
The code is designed to exfiltrate system information by sending it to an external domain via DNS queries. This is a clear indication of malicious behavior, as it involves unauthorized data transmission without user consent.
Live on npm for 3 hours and 50 minutes before removal. Socket users were protected even while the package was live.
emburse
1.0.2
by saivelde
Removed from npm
Blocked by Socket
The code is designed to collect sensitive system and package information and send it to an external server without user consent. This behavior is indicative of data exfiltration and poses a significant security risk.
Live on npm for 2 days, 5 hours and 28 minutes before removal. Socket users were protected even while the package was live.
azure-graphrbac
10.13.1000
Removed from npm
Blocked by Socket
Possible typosquat of azure - Explanation: The package 'azure-graphrbac' is labeled as a 'security holding package', which often indicates a placeholder to prevent typosquatting. The name 'azure-graphrbac' closely resembles the legitimate 'azure' package, suggesting it could be a typosquat. The maintainers list includes 'npm', which is not a specific individual or organization, adding to the suspicion. The description does not provide any distinct purpose or functionality, further indicating it might be a placeholder to prevent typosquatting.
Live on npm for 6 hours and 35 minutes before removal. Socket users were protected even while the package was live.
aployscript
11.5.1
by kapiroka
Removed from npm
Blocked by Socket
The code exhibits characteristics typical of malicious behavior through its use of `eval`, obfuscated variable names, and dynamic data handling. Caution is advised as it could lead to arbitrary code execution and potential information leaks.
Live on npm for 7 minutes before removal. Socket users were protected even while the package was live.
evil-package-for-test2
1.0.0
by fdsfeqwrcxzgyy
Removed from npm
Blocked by Socket
The package's scripts ('preinstall', 'install', 'postinstall') contain code that establishes a reverse shell connection to the IP address 162[.]219[.]121[.]44 on port 2333. This allows an attacker to execute commands remotely on the compromised machine.
Live on npm for 15 days, 19 hours and 34 minutes before removal. Socket users were protected even while the package was live.
createarrayfrommixed
1.9.0
by npm12233444
Removed from npm
Blocked by Socket
The script runs 'index.js' and silences all output, which could be a method to hide malicious actions or errors. The safety of this script depends on the contents of 'index.js'.
Live on npm for 18 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.
Known malware
Possible typosquat attack
Chrome Extension Permission
Chrome Extension Wildcard Host Permission
NPM Shrinkwrap
Git dependency
HTTP dependency
Suspicious Stars on GitHub
Protestware or potentially unwanted behavior
Unstable ownership
Critical CVE
High CVE
Medium CVE
Low CVE
Bad dependency semver
Wildcard dependency
Unpopular package
Minified code
Socket optimized override available
Deprecated
Unmaintained
Explicitly Unlicensed Item
License Policy Violation
Misc. License Issues
Non-permissive License
Ambiguous License Classifier
Copyleft License
Unidentified License
No License Found
License exception
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.
Dec 14, 2023
Hijacked cryptocurrency library adds malware
Widely-used library in cryptocurrency frontend was compromised to include wallet-draining code, following the hijacking of NPM account credentials via phishing.
Jan 06, 2022
Maintainer intentionally adds malware
Rogue maintainer sabotages his own open source package with 100M downloads/month, notably breaking Amazon's AWS SDK.
Nov 15, 2021
npm discovers a platform vulnerability allowing unauthorized publishing of any package
Attackers could publish new versions of any npm package without authorization for multiple years.
Oct 22, 2021
Hijacked package adds cryptominers and password-stealing malware
Multiple packages with 30M downloads/month are hijacked and publish malicious versions directly into the software supply chain.
Nov 26, 2018
Package hijacked adding organization specific backdoors
Obfuscated malware added to a dependency which targeted a single company, went undetected for over a week, and made it into their production build.
Get our latest security research, open source insights, and product updates.
Security News
A clarification on our recent research investigating 60 malicious Ruby gems.
Security News
ESLint now supports parallel linting with a new --concurrency flag, delivering major speed gains and closing a 10-year-old feature request.
Research
/Security News
A malicious Go module posing as an SSH brute forcer exfiltrates stolen credentials to a Telegram bot controlled by a Russian-speaking threat actor.