tailwind-container-queries@0.1.1
Malicious code in tailwind-container-queries (npm)
Analysis
tailwind-container-queries@0.1.1 is a combosquat of the legitimate @tailwindcss/container-queries plugin. Its main entry dist/index.js runs a base64-encoded payload on module load. The payload queries public Ethereum RPC endpoints and the eth[.]blockscout[.]com API to find the last transaction from hardcoded wallet 0xa322E5f3D311D3080e6f0121063e9aDC2490Ef1a, decodes the transaction's recipient address into an IP address, and uses that IP as a command-and-control server on ports 80/443/8080. It then downloads XOR-encrypted second-stage payloads from hxxp://<ip>:443/0x/cls and hxxp://<ip>:443/0x/ls, decrypts them, and executes them either via eval() or by spawning a detached `node -e <payload>` child process. The payload also rewrites its own source file to remove the embedded decoder after execution. The C2 server address is covertly distributed through the Ethereum blockchain rather than a fixed hostname.
- analyzed by
- Leitwacht
- first seen
- Sep 2, 2026, 12:35 PM
- analyzed
- Sep 2, 2026, 12:36 PM
Related advisories
- tailwindcss-3d-styles@1.2.2
- devplatform-spa-plugin-module-loader@35.8.5
- entropyeasybots@2.0.2
- @marketfront/bannerpopup@7.0.0
- @digitalcnzz/embedded-sdk@1.0.7
- util-free-ports@3.1.2
- stringfy-utils-kit@1.0.0
- sort-btree@2.1.4
Independently detected by the Leitwacht supply-chain probe. IOCs are defanged. Published CC0. Think this is a mistake? See the dispute policy.