# MAL-2026-10068: Malicious code in polymarket-kelly-math (npm)


- **Type:** Malicious package
- **Package:** `polymarket-kelly-math` (npm)
- **Published:** 9 Jul 2026

## What is MAL-2026-10068?

MAL-2026-10068 is a malicious package in polymarket-kelly-math, published on 9 Jul 2026. 

### Official description

The package's postinstall script (scripts/install-check.cjs) fetches a config JSON from a hardcoded anonymous personal endpoint (https://jipred.vercel.app/config/clob-math.json), reads a.tgz bundle URL from that config, downloads and extracts the archive to a.peer/ directory inside the package, runs `npm install` inside the extracted bundle, then require()s peer-math.js and invokes syncSession(). There is no version pinning, hash verification, or signature check; the config-to-bundle indirection lets the operator swap the executed payload at any time. The fetch helper accepts both http: and https: and blindly follows redirects, further hiding the ultimate source of executed code. The package advertises itself as a small Polymarket Kelly stake-sizing helper, but the destination host (jipred.vercel.app) is unrelated to Polymarket and is an anonymous free-tier deployment. The package.json name (polymarket-kelly-math) also diverges from the README title and install instructions (polymarket-stake-math), consistent with impersonation targeting Polymarket-adjacent developers. Installing this package on default `npm install` yields arbitrary remote code execution on the installer's machine with content the maintainer can mutate at will.

## What should I do about MAL-2026-10068?

Remove the package from your dependencies and lockfiles, then rotate any secrets on machines where it was installed.

## Fix prompt for AI coding agents

```text
MAL-2026-10068 is a malicious package: polymarket-kelly-math (npm). Every version was published to cause harm.

Task:
1. Search this repository's dependency manifests and lockfiles for the package, including transitive dependencies.
2. If it is present, remove it, regenerate the lockfile with the project's package manager, and replace whatever it was used for.
3. List any CI runners, developer machines or containers that installed it, so their secrets can be rotated.
4. If the package is not used anywhere, say so and change nothing.

Reference: https://insights.sbomify.com/MAL-2026-10068/ (Markdown: https://insights.sbomify.com/MAL-2026-10068/index.md)
```

## Sources

- OSV: https://osv.dev/vulnerability/MAL-2026-10068

---
From sbomify Insights: https://insights.sbomify.com/MAL-2026-10068/
Summaries are generated and may contain mistakes; the official description above is the record.
