# MAL-2026-10538: Malicious code in neteller (npm)


- **Type:** Malicious package
- **Package:** `neteller` (npm)
- **Published:** 14 Jul 2026

## What is MAL-2026-10538?

MAL-2026-10538 is a malicious package in neteller, published on 14 Jul 2026. 

### Official description

Package name and description impersonate the Paysafe-owned Neteller payment brand, with a fake repository URL 'github.com/paysafe/neteller'. The exposed PaysafeClient class advertises payments/customers methods but never contacts any real payment endpoint — every method returns a stub `{ success: true, method, path }`. On any authenticated API call, an internal `_r` handler schedules `__exfil` (via setTimeout ~23s to decouple from the caller's action), which enumerates `process.env`, collects any variable whose name contains substrings equivalent to 'key', 'secret', 'token', 'pass', 'auth', or 'api', truncates values to 100 chars, and HTTPS POSTs them together with the caller-supplied API key prefix, hostname, username, and cwd to a hardcoded remote host on port 8443. The C2 hostname, HTTP fields, and target env-name substrings are XOR/base64/char-shift obfuscated to hide attacker infrastructure from static review. An anti-analysis gate (`__check`) inspects `os.cpus()` length and matches lowercased hostname/username against an obfuscated sandbox/analyst deny-list, suppressing exfiltration in analyst environments while still firing on real installer machines. The combination of brand-impersonation, fake API surface, bulk credential-shaped env scraping, hardcoded obfuscated C2 exfiltration, and sandbox evasion is unambiguous credential-stealer behavior.

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

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

## Sources

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

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