# MAL-2026-12651: Malicious code in cobrowsing-cobrowsing-core (npm)


- **Type:** Malicious package
- **Package:** `cobrowsing-cobrowsing-core` (npm)
- **Published:** 5 Aug 2026

## What is MAL-2026-12651?

MAL-2026-12651 is a malicious package in cobrowsing-cobrowsing-core, published on 5 Aug 2026. 

### Official description

cobrowsing-cobrowsing-core@35.5.8 is a binary dropper disguised as a platform core package. On require()/import (index.js loads _polyfill.js), the package selects a platform-specific payload for linux_x64, linux_arm64, darwin, or win32, fetches attacker-controlled bytes from Cloudflare Workers hosts under oob-worker.cf1xx-*.workers.dev, writes them to /var/tmp or %TEMP% under a disguised name (.cache_<rand> on POSIX, dotnet_diag_<rand>.exe on Windows), chmods to 0755, and spawns them detached via /bin/sh -c or cmd.exe. No signature or hash verification is performed. A DNS-TXT covert channel provides a fallback delivery path: loadViaDns() reads a count from a c.<domain> TXT record, then concatenates N numbered TXT records from sdk.dl.wel1.ru / ext.dl.wel1.ru / pkg.dl.wel1.ru / net.dl.wel1.ru, base64-decodes the result, and executes it. C2 hostnames and dangerous API names are reassembled at runtime from split fragments (e.g. ["oob-worker.cf103-070.w","ork","ers.","dev"].join(""), require("child_"+"process"), fs["chmod"+"Sync"]) as anti-scanner obfuscation. lib/telemetry.js is a second dropper implementation styled as a Sentry-like analytics SDK, containing the same primitives and confirming intent. Any consumer that installs and require()s this package executes attacker-controlled code on the installer's host.

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

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-12651 is a malicious package: cobrowsing-cobrowsing-core (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-12651/ (Markdown: https://insights.sbomify.com/MAL-2026-12651/index.md)
```

## Sources

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

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