BitcoinWorld What Happened in the Billion-Download NPM Supply-Chain Attack of September 2025? As of September 9, 2025, the JavaScript ecosystem is responding to a major supply-chain attack that compromised the NPM account of the popular developer qix. This compromise led to the publication of malicious versions of dozens of widely-used packages, including chalk, strip-ansi, and color-convert. The combined weekly downloads of the affected packages exceed one billion, making this one of the most significant security incidents in open-source history. Initial Discovery: The attack was first detected through a cryptic build failure in a CI/CD pipeline, specifically a ReferenceError: fetch is not defined. This error occurred because the malware’s attempt to exfiltrate data via a fetch call failed in an older Node.js environment that lacked the global fetch function. Root Cause: The attacker gained control of the qix NPM account, allowing them to publish malicious patch versions of key libraries. Vast Impact: The compromised packages are fundamental building blocks of countless projects, often buried deep within dependency trees. Key affected packages and their approximate weekly downloads include: chalk: ~300 million strip-ansi: ~261 million color-convert: ~193 million color-name: ~191 million is-core-module: ~69 million error-ex: ~47 million simple-swizzle: ~26 million has-ansi: ~12 million   How Does the Crypto-Clipper Malware from the NPM Attack Steal Funds? The malicious code, a sophisticated “crypto-clipper,” is designed to steal cryptocurrency by targeting user transactions and wallet interactions. It operates using a two-pronged strategy:   Passive Address Swapping: The malware “monkey-patches” the browser’s native fetch and XMLHttpRequest functions to intercept all network traffic. It contains a list of attacker-owned wallet addresses for currencies like Bitcoin (BTC), Ethereum (ETH), Solana (SOL), Tron (TRX), Litecoin (LTC), and Bitcoin Cash (BCH). Using the Levenshtein distance algorithm, the script finds the attacker’s address that is typographically most similar to the user’s legitimate one, making the substitution difficult for the human eye to detect. Active Transaction Hijacking: If the malware detects a browser-based wallet like MetaMask by checking for window.ethereum, it hijacks the wallet’s communication methods (request, send). When a user initiates a transaction, the malware modifies the data in memory, replacing the legitimate recipient’s address with a hardcoded attacker’s address. The user then unknowingly signs a fraudulent transaction, redirecting their funds to the attacker. Tracking the Attack: The transparency of blockchains allows for the monitoring of these fraudulent transactions. One of the primary Ethereum addresses used by the attacker is 0xFc4a4858bafef54D1b1d7697bfb5c52F4c166976. A complete list of compromised wallets is available in a public GitHub Gist.   What Immediate Steps Can Developers Take to Protect Their Projects? While NPM and the open-source community are actively working to remediate the attack by removing malicious versions, compromised packages may still exist in project dependencies or lock files. To protect your projects, developers must take these immediate, critical steps: Audit Your Dependencies: Immediately check your project’s package-lock.json or yarn.lock file to identify any use of the affected packages. Pin to Safe Versions: Use the overrides feature in your package.json file to force npm to use known-safe versions of the compromised packages. This is crucial for fixing transitive dependencies.   Example package.json configuration: JSON { "name": "your-project", "version": "1.0.0", "overrides": { "chalk": "5.3.0", "strip-ansi": "7.1.0", "color-convert": "2.0.1", "color-name": "1.1.4", "is-core-module": "2.13.1", "error-ex": "1.3.2", "has-ansi": "5.0.1" } }   Clean and Reinstall: After adding the overrides, delete your node_modules folder and package-lock.json file. Then, run npm install to generate a new, clean lock file with the pinned, safe versions. This ensures that no vulnerable code remains in your project’s environment. Why is the qix NPM account compromise a significant supply-chain security threat? The compromise of the qix NPM account is a critical threat because it allowed an attacker to inject malicious code into extremely popular, foundational JavaScript packages. These libraries are not typically direct dependencies but are pulled in by hundreds or thousands of other packages. This vast and invisible dependency tree meant the malicious code could spread to millions of applications and developer machines with minimal friction, weaponizing the inherent trust within the open-source ecosystem.   What is a “crypto-clipper” and how does it relate to the September 2025 NPM attack? A “crypto-clipper” is a type of malware that hijacks cryptocurrency transactions. In the context of the NPM attack, the malicious code injected into packages like chalk and strip-ansi acts as a crypto-clipper. It silently monitors web traffic and clipboard data, specifically looking for crypto wallet addresses. When a user copies or initiates a transaction, the clipper swaps the legitimate recipient address with the attacker’s, rerouting funds and causing financial loss without the user’s immediate knowledge.   How can a simple build error uncover a sophisticated supply-chain attack? In this attack, a seemingly minor build error, a ReferenceError: fetch is not defined, was the first indicator of a deep-rooted problem. This error occurred because the malware’s data exfiltration attempt relied on a modern browser function that was not present in an older Node.js environment. The failure to execute its payload made the malicious code visible, highlighting how even a simple configuration mismatch or an outdated environment can inadvertently act as a tripwire for sophisticated, obfuscated attacks.   The qix NPM account attack serves as a stark reminder that the open-source ecosystem, despite its collaborative nature, is a major target for sophisticated cyber threats. The vulnerability exposed is not just a technical flaw but a systemic risk stemming from the trust placed in third-party dependencies. Organizations must move beyond basic security practices and adopt a proactive, vigilant stance that includes hardening CI/CD pipelines, implementing strict dependency management policies, and fostering a security-first culture. Failing to act now leaves projects exposed to similar threats that can compromise intellectual property, user data, and financial assets on a massive scale. This post What Happened in the Billion-Download NPM Supply-Chain Attack of September 2025? first appeared on BitcoinWorld and is written by Keshav AggarwalBitcoinWorld What Happened in the Billion-Download NPM Supply-Chain Attack of September 2025? As of September 9, 2025, the JavaScript ecosystem is responding to a major supply-chain attack that compromised the NPM account of the popular developer qix. This compromise led to the publication of malicious versions of dozens of widely-used packages, including chalk, strip-ansi, and color-convert. The combined weekly downloads of the affected packages exceed one billion, making this one of the most significant security incidents in open-source history. Initial Discovery: The attack was first detected through a cryptic build failure in a CI/CD pipeline, specifically a ReferenceError: fetch is not defined. This error occurred because the malware’s attempt to exfiltrate data via a fetch call failed in an older Node.js environment that lacked the global fetch function. Root Cause: The attacker gained control of the qix NPM account, allowing them to publish malicious patch versions of key libraries. Vast Impact: The compromised packages are fundamental building blocks of countless projects, often buried deep within dependency trees. Key affected packages and their approximate weekly downloads include: chalk: ~300 million strip-ansi: ~261 million color-convert: ~193 million color-name: ~191 million is-core-module: ~69 million error-ex: ~47 million simple-swizzle: ~26 million has-ansi: ~12 million   How Does the Crypto-Clipper Malware from the NPM Attack Steal Funds? The malicious code, a sophisticated “crypto-clipper,” is designed to steal cryptocurrency by targeting user transactions and wallet interactions. It operates using a two-pronged strategy:   Passive Address Swapping: The malware “monkey-patches” the browser’s native fetch and XMLHttpRequest functions to intercept all network traffic. It contains a list of attacker-owned wallet addresses for currencies like Bitcoin (BTC), Ethereum (ETH), Solana (SOL), Tron (TRX), Litecoin (LTC), and Bitcoin Cash (BCH). Using the Levenshtein distance algorithm, the script finds the attacker’s address that is typographically most similar to the user’s legitimate one, making the substitution difficult for the human eye to detect. Active Transaction Hijacking: If the malware detects a browser-based wallet like MetaMask by checking for window.ethereum, it hijacks the wallet’s communication methods (request, send). When a user initiates a transaction, the malware modifies the data in memory, replacing the legitimate recipient’s address with a hardcoded attacker’s address. The user then unknowingly signs a fraudulent transaction, redirecting their funds to the attacker. Tracking the Attack: The transparency of blockchains allows for the monitoring of these fraudulent transactions. One of the primary Ethereum addresses used by the attacker is 0xFc4a4858bafef54D1b1d7697bfb5c52F4c166976. A complete list of compromised wallets is available in a public GitHub Gist.   What Immediate Steps Can Developers Take to Protect Their Projects? While NPM and the open-source community are actively working to remediate the attack by removing malicious versions, compromised packages may still exist in project dependencies or lock files. To protect your projects, developers must take these immediate, critical steps: Audit Your Dependencies: Immediately check your project’s package-lock.json or yarn.lock file to identify any use of the affected packages. Pin to Safe Versions: Use the overrides feature in your package.json file to force npm to use known-safe versions of the compromised packages. This is crucial for fixing transitive dependencies.   Example package.json configuration: JSON { "name": "your-project", "version": "1.0.0", "overrides": { "chalk": "5.3.0", "strip-ansi": "7.1.0", "color-convert": "2.0.1", "color-name": "1.1.4", "is-core-module": "2.13.1", "error-ex": "1.3.2", "has-ansi": "5.0.1" } }   Clean and Reinstall: After adding the overrides, delete your node_modules folder and package-lock.json file. Then, run npm install to generate a new, clean lock file with the pinned, safe versions. This ensures that no vulnerable code remains in your project’s environment. Why is the qix NPM account compromise a significant supply-chain security threat? The compromise of the qix NPM account is a critical threat because it allowed an attacker to inject malicious code into extremely popular, foundational JavaScript packages. These libraries are not typically direct dependencies but are pulled in by hundreds or thousands of other packages. This vast and invisible dependency tree meant the malicious code could spread to millions of applications and developer machines with minimal friction, weaponizing the inherent trust within the open-source ecosystem.   What is a “crypto-clipper” and how does it relate to the September 2025 NPM attack? A “crypto-clipper” is a type of malware that hijacks cryptocurrency transactions. In the context of the NPM attack, the malicious code injected into packages like chalk and strip-ansi acts as a crypto-clipper. It silently monitors web traffic and clipboard data, specifically looking for crypto wallet addresses. When a user copies or initiates a transaction, the clipper swaps the legitimate recipient address with the attacker’s, rerouting funds and causing financial loss without the user’s immediate knowledge.   How can a simple build error uncover a sophisticated supply-chain attack? In this attack, a seemingly minor build error, a ReferenceError: fetch is not defined, was the first indicator of a deep-rooted problem. This error occurred because the malware’s data exfiltration attempt relied on a modern browser function that was not present in an older Node.js environment. The failure to execute its payload made the malicious code visible, highlighting how even a simple configuration mismatch or an outdated environment can inadvertently act as a tripwire for sophisticated, obfuscated attacks.   The qix NPM account attack serves as a stark reminder that the open-source ecosystem, despite its collaborative nature, is a major target for sophisticated cyber threats. The vulnerability exposed is not just a technical flaw but a systemic risk stemming from the trust placed in third-party dependencies. Organizations must move beyond basic security practices and adopt a proactive, vigilant stance that includes hardening CI/CD pipelines, implementing strict dependency management policies, and fostering a security-first culture. Failing to act now leaves projects exposed to similar threats that can compromise intellectual property, user data, and financial assets on a massive scale. This post What Happened in the Billion-Download NPM Supply-Chain Attack of September 2025? first appeared on BitcoinWorld and is written by Keshav Aggarwal

What Happened in the Billion-Download NPM Supply-Chain Attack of September 2025?

BitcoinWorld

What Happened in the Billion-Download NPM Supply-Chain Attack of September 2025?

As of September 9, 2025, the JavaScript ecosystem is responding to a major supply-chain attack that compromised the NPM account of the popular developer qix. This compromise led to the publication of malicious versions of dozens of widely-used packages, including chalk, strip-ansi, and color-convert. The combined weekly downloads of the affected packages exceed one billion, making this one of the most significant security incidents in open-source history.

  • Initial Discovery: The attack was first detected through a cryptic build failure in a CI/CD pipeline, specifically a ReferenceError: fetch is not defined. This error occurred because the malware’s attempt to exfiltrate data via a fetch call failed in an older Node.js environment that lacked the global fetch function.
  • Root Cause: The attacker gained control of the qix NPM account, allowing them to publish malicious patch versions of key libraries.
  • Vast Impact: The compromised packages are fundamental building blocks of countless projects, often buried deep within dependency trees. Key affected packages and their approximate weekly downloads include:
  • chalk: ~300 million
  • strip-ansi: ~261 million
  • color-convert: ~193 million
  • color-name: ~191 million
  • is-core-module: ~69 million
  • error-ex: ~47 million
  • simple-swizzle: ~26 million
  • has-ansi: ~12 million

 

How Does the Crypto-Clipper Malware from the NPM Attack Steal Funds?

The malicious code, a sophisticated “crypto-clipper,” is designed to steal cryptocurrency by targeting user transactions and wallet interactions. It operates using a two-pronged strategy:

 

  • Passive Address Swapping: The malware “monkey-patches” the browser’s native fetch and XMLHttpRequest functions to intercept all network traffic. It contains a list of attacker-owned wallet addresses for currencies like Bitcoin (BTC), Ethereum (ETH), Solana (SOL), Tron (TRX), Litecoin (LTC), and Bitcoin Cash (BCH). Using the Levenshtein distance algorithm, the script finds the attacker’s address that is typographically most similar to the user’s legitimate one, making the substitution difficult for the human eye to detect.
  • Active Transaction Hijacking: If the malware detects a browser-based wallet like MetaMask by checking for window.ethereum, it hijacks the wallet’s communication methods (request, send). When a user initiates a transaction, the malware modifies the data in memory, replacing the legitimate recipient’s address with a hardcoded attacker’s address. The user then unknowingly signs a fraudulent transaction, redirecting their funds to the attacker.

Tracking the Attack: The transparency of blockchains allows for the monitoring of these fraudulent transactions. One of the primary Ethereum addresses used by the attacker is 0xFc4a4858bafef54D1b1d7697bfb5c52F4c166976. A complete list of compromised wallets is available in a public GitHub Gist.

 

What Immediate Steps Can Developers Take to Protect Their Projects?

While NPM and the open-source community are actively working to remediate the attack by removing malicious versions, compromised packages may still exist in project dependencies or lock files. To protect your projects, developers must take these immediate, critical steps:

  • Audit Your Dependencies: Immediately check your project’s package-lock.json or yarn.lock file to identify any use of the affected packages.
  • Pin to Safe Versions: Use the overrides feature in your package.json file to force npm to use known-safe versions of the compromised packages. This is crucial for fixing transitive dependencies.

 

  • Example package.json configuration:
JSON
{   "name": "your-project",   "version": "1.0.0",   "overrides": {     "chalk": "5.3.0",     "strip-ansi": "7.1.0",     "color-convert": "2.0.1",     "color-name": "1.1.4",     "is-core-module": "2.13.1",     "error-ex": "1.3.2",     "has-ansi": "5.0.1"   } } 

 

  • Clean and Reinstall: After adding the overrides, delete your node_modules folder and package-lock.json file. Then, run npm install to generate a new, clean lock file with the pinned, safe versions. This ensures that no vulnerable code remains in your project’s environment.

Why is the qix NPM account compromise a significant supply-chain security threat?

The compromise of the qix NPM account is a critical threat because it allowed an attacker to inject malicious code into extremely popular, foundational JavaScript packages. These libraries are not typically direct dependencies but are pulled in by hundreds or thousands of other packages. This vast and invisible dependency tree meant the malicious code could spread to millions of applications and developer machines with minimal friction, weaponizing the inherent trust within the open-source ecosystem.

 

What is a “crypto-clipper” and how does it relate to the September 2025 NPM attack?

A “crypto-clipper” is a type of malware that hijacks cryptocurrency transactions. In the context of the NPM attack, the malicious code injected into packages like chalk and strip-ansi acts as a crypto-clipper. It silently monitors web traffic and clipboard data, specifically looking for crypto wallet addresses. When a user copies or initiates a transaction, the clipper swaps the legitimate recipient address with the attacker’s, rerouting funds and causing financial loss without the user’s immediate knowledge.

 

How can a simple build error uncover a sophisticated supply-chain attack?

In this attack, a seemingly minor build error, a ReferenceError: fetch is not defined, was the first indicator of a deep-rooted problem. This error occurred because the malware’s data exfiltration attempt relied on a modern browser function that was not present in an older Node.js environment. The failure to execute its payload made the malicious code visible, highlighting how even a simple configuration mismatch or an outdated environment can inadvertently act as a tripwire for sophisticated, obfuscated attacks.

 

The qix NPM account attack serves as a stark reminder that the open-source ecosystem, despite its collaborative nature, is a major target for sophisticated cyber threats. The vulnerability exposed is not just a technical flaw but a systemic risk stemming from the trust placed in third-party dependencies. Organizations must move beyond basic security practices and adopt a proactive, vigilant stance that includes hardening CI/CD pipelines, implementing strict dependency management policies, and fostering a security-first culture. Failing to act now leaves projects exposed to similar threats that can compromise intellectual property, user data, and financial assets on a massive scale.

This post What Happened in the Billion-Download NPM Supply-Chain Attack of September 2025? first appeared on BitcoinWorld and is written by Keshav Aggarwal

Market Opportunity
Bitcoin Cash Node Logo
Bitcoin Cash Node Price(BCH)
$591.7
$591.7$591.7
-1.05%
USD
Bitcoin Cash Node (BCH) Live Price Chart
Disclaimer: The articles reposted on this site are sourced from public platforms and are provided for informational purposes only. They do not necessarily reflect the views of MEXC. All rights remain with the original authors. If you believe any content infringes on third-party rights, please contact service@support.mexc.com for removal. MEXC makes no guarantees regarding the accuracy, completeness, or timeliness of the content and is not responsible for any actions taken based on the information provided. The content does not constitute financial, legal, or other professional advice, nor should it be considered a recommendation or endorsement by MEXC.

You May Also Like

IP Hits $11.75, HYPE Climbs to $55, BlockDAG Surpasses Both with $407M Presale Surge!

IP Hits $11.75, HYPE Climbs to $55, BlockDAG Surpasses Both with $407M Presale Surge!

The post IP Hits $11.75, HYPE Climbs to $55, BlockDAG Surpasses Both with $407M Presale Surge! appeared on BitcoinEthereumNews.com. Crypto News 17 September 2025 | 18:00 Discover why BlockDAG’s upcoming Awakening Testnet launch makes it the best crypto to buy today as Story (IP) price jumps to $11.75 and Hyperliquid hits new highs. Recent crypto market numbers show strength but also some limits. The Story (IP) price jump has been sharp, fueled by big buybacks and speculation, yet critics point out that revenue still lags far behind its valuation. The Hyperliquid (HYPE) price looks solid around the mid-$50s after a new all-time high, but questions remain about sustainability once the hype around USDH proposals cools down. So the obvious question is: why chase coins that are either stretched thin or at risk of retracing when you could back a network that’s already proving itself on the ground? That’s where BlockDAG comes in. While other chains are stuck dealing with validator congestion or outages, BlockDAG’s upcoming Awakening Testnet will be stress-testing its EVM-compatible smart chain with real miners before listing. For anyone looking for the best crypto coin to buy, the choice between waiting on fixes or joining live progress feels like an easy one. BlockDAG: Smart Chain Running Before Launch Ethereum continues to wrestle with gas congestion, and Solana is still known for network freezes, yet BlockDAG is already showing a different picture. Its upcoming Awakening Testnet, set to launch on September 25, isn’t just a demo; it’s a live rollout where the chain’s base protocols are being stress-tested with miners connected globally. EVM compatibility is active, account abstraction is built in, and tools like updated vesting contracts and Stratum integration are already functional. Instead of waiting for fixes like other networks, BlockDAG is proving its infrastructure in real time. What makes this even more important is that the technology is operational before the coin even hits exchanges. That…
Share
BitcoinEthereumNews2025/09/18 00:32
Edges higher ahead of BoC-Fed policy outcome

Edges higher ahead of BoC-Fed policy outcome

The post Edges higher ahead of BoC-Fed policy outcome appeared on BitcoinEthereumNews.com. USD/CAD gains marginally to near 1.3760 ahead of monetary policy announcements by the Fed and the BoC. Both the Fed and the BoC are expected to lower interest rates. USD/CAD forms a Head and Shoulder chart pattern. The USD/CAD pair ticks up to near 1.3760 during the late European session on Wednesday. The Loonie pair gains marginally ahead of monetary policy outcomes by the Bank of Canada (BoC) and the Federal Reserve (Fed) during New York trading hours. Both the BoC and the Fed are expected to cut interest rates amid mounting labor market conditions in their respective economies. Inflationary pressures in the Canadian economy have cooled down, emerging as another reason behind the BoC’s dovish expectations. However, the Fed is expected to start the monetary-easing campaign despite the United States (US) inflation remaining higher. Investors will closely monitor press conferences from both Fed Chair Jerome Powell and BoC Governor Tiff Macklem to get cues about whether there will be more interest rate cuts in the remainder of the year. According to analysts from Barclays, the Fed’s latest median projections for interest rates are likely to call for three interest rate cuts by 2025. Ahead of the Fed’s monetary policy, the US Dollar Index (DXY), which tracks the Greenback’s value against six major currencies, holds onto Tuesday’s losses near 96.60. USD/CAD forms a Head and Shoulder chart pattern, which indicates a bearish reversal. The neckline of the above-mentioned chart pattern is plotted near 1.3715. The near-term trend of the pair remains bearish as it stays below the 20-day Exponential Moving Average (EMA), which trades around 1.3800. The 14-day Relative Strength Index (RSI) slides to near 40.00. A fresh bearish momentum would emerge if the RSI falls below that level. Going forward, the asset could slide towards the round level of…
Share
BitcoinEthereumNews2025/09/18 01:23
Zero Knowledge Proof Sparks 300x Growth Discussion! Bitcoin Cash & Ethereum Cool Off

Zero Knowledge Proof Sparks 300x Growth Discussion! Bitcoin Cash & Ethereum Cool Off

Explore how Bitcoin Cash and Ethereum move sideways while Zero Knowledge Proof (ZKP) gains notice with a live presale auction, working infra, shipping Proof Pods
Share
CoinLive2026/01/18 07:00