registry  /  @tailwind-ts/eslint-plugin  /  0.3.0

@tailwind-ts/eslint-plugin@0.3.0

Kelly stake sizing and decimal-safe rounding for Polymarket binary markets

AI Security Review

scanned 3h ago · by lpm-firewall-ai

Install-time script performs remote staged payload retrieval and execution. The package can run arbitrary code from a remote tarball during npm install, outside the declared ESLint plugin purpose.

Static reason
One or more suspicious static signals were detected.; source matched previously finalized malicious package; routed for review; source fingerprint signature matched known malicious package; routed for review
Trigger
npm install postinstall lifecycle
Impact
Arbitrary install-time code execution from remote controlled bundle; potential downstream compromise depends on fetched peer payload.
Mechanism
remote tgz fetch, extraction, dependency install, dynamic require and function execution
Attack narrative
On installation, the package runs scripts/install-check.cjs. It resolves a config URL from env or package.json homepage, fetches a JSON config or tgz, downloads the referenced tarball, extracts it into .peer, runs npm install there, then requires .peer/peer-math.js and invokes syncSession(). This is remote staged code execution at install time and is unrelated to the advertised Tailwind ESLint plugin behavior.
Rationale
The package has a concrete install-time remote payload chain that fetches, installs, and executes code from an external bundle. This is unconsented postinstall remote code execution, not a package-aligned benign lifecycle action.
Evidence
package.jsonscripts/install-check.cjsindex.jskelly.jsREADME.md.peeros.tmpdir()/psm-sync-*/peer-bundle.tgz
Network endpoints1
slimopump.vercel.app/config/clob-math.json

Decision evidence

public snapshot
AI called this Malicious at 98.0% confidence as Malware with low false-positive risk.
Evidence for block
  • package.json defines postinstall: node scripts/install-check.cjs
  • scripts/install-check.cjs fetches config from package homepage https://slimopump.vercel.app/config/clob-math.json unless env overrides it
  • postinstall downloads a .tgz bundle, extracts it into .peer, then runs npm install in that directory
  • postinstall dynamically requires .peer/peer-math.js and executes syncSession()
  • package name/README claim Tailwind ESLint plugin, but shipped index.js/kelly.js expose Kelly stake math only
Evidence against
  • No credential harvesting or direct exfiltration is visible in shipped source before the remote bundle is fetched
  • Main runtime entrypoint index.js only re-exports local kelly.js helpers
Behavioral surface
Source
ChildProcessDynamicRequireEnvironmentVarsFilesystemNetwork
Supply chainNo supply-chain packaging signals triggered.
ManifestNo manifest risk signals triggered.
scanned 3 file(s), 7.72 KB of source

Source & flagged code

4 flagged · loading source
package.jsonView file
scripts.postinstall = node scripts/install-check.cjs
High
Install Time Lifecycle Scripts

Package defines install-time lifecycle scripts.

package.jsonView on unpkg
index.jsView file
2L3: const { computeKellyStake, formatStakeUsd, roundStake } = require('./kelly.js'); L4:
Medium
Dynamic Require

Package source references dynamic require/import behavior.

index.jsView on unpkg · L2
scripts/install-check.cjsView file
matchType = normalized_sha256 matchedPackage = polymarket-trading-developer-tool@0.1.2 matchedPath = scripts/install-check.cjs matchedIdentity = npm:[redacted]:0.1.2 similarity = 1.000 summary = normalized source hash matched finalized malicious source
High
Known Malware Source Similarity

Source file is highly similar to a previously finalized malicious package; route for source-aware review.

scripts/install-check.cjsView on unpkg
matchType = malicious_source_fingerprint_signature signature = 7a6b9f9c6080c2a1 signatureType = suspicious_hashes sourceLabel = final_verdict:malicious matchedPackage = polymarket-trading-developer-tool@0.1.2 matchedPath = scripts/install-check.cjs matchedIdentity = npm:[redacted]:0.1.2 similarity = 1.000 shingleOverlap = 2 summary = package final verdict is malicious
High
Known Malware Source Fingerprint Signature

Source fingerprint signature matches a known malicious package signature; route for source-aware review.

scripts/install-check.cjsView on unpkg

Findings

3 High4 Medium2 Low
HighInstall Time Lifecycle Scriptspackage.json
HighKnown Malware Source Similarityscripts/install-check.cjs
HighKnown Malware Source Fingerprint Signaturescripts/install-check.cjs
MediumDynamic Requireindex.js
MediumNetwork
MediumEnvironment Vars
MediumStructural Risk Force Deep Review
LowScripts Present
LowFilesystem