Skip to content
OpenAdvisories
Malicious MAL-2026-12283 GHSA-pmq9-57f4-g2v7

tinkoff-ui-angular-addon-wysiwyg

npm package · versions 20.7.8

Reported Aug 5, 2026 · Updated Aug 26, 2026

If this package is installed

Remove it, treat the machine (or CI runner) as compromised, and rotate every secret, token and key it could access — from a different, clean machine.

Details

Source: amazon-inspector (78e68f5ef666d2dc9c0582121a44516c5b01abcecda034b830e8d13973e16520)
The package impersonates a Tinkoff UI Angular addon but ships only a stub class plus a dropper at _ext.js that is loaded via index.js on require. On load, _ext.js downloads a platform-specific native executable over HTTPS from runtime-reconstructed Cloudflare Workers subdomains (oob-worker.cf99-9b3.workers.dev, oob-worker.cf101-adf.workers.dev, oob-worker.cf102-baf.workers.dev), with a DNS TXT-record fallback channel that reassembles chunked base64 payloads from tin.dl.well1.site and related subdomains. The fetched binary is written to a temporary path under a masquerade name (dotnet_diag_<tag>.exe on Windows, hidden.cache_<tag> on Unix), chmodded 0755, and spawned detached via /bin/sh -c or cmd. No hash or signature verification is performed; C2 hostnames are assembled from split string arrays (e.g. ["oob-worker.cf99-9b3.workers.d","ev"].join("")) to evade static grep. Cover-story identifiers such as analytics_state, DISABLE_TELEMETRY, and CDN-compatibility comments disguise the drop-and-execute behavior.

Source: ghsa-malware (b9d45082ef736b44e27af03d4686db7d71933d0fa7dfc96e3ad6a341f6e704e4)
Any computer that has this package installed or running should be considered fully compromised. All secrets and keys stored on that computer should be rotated immediately from a different computer. The package should be removed, but as full control of the computer may have been given to an outside entity, there is no guarantee that removing the package will remove all malicious software resulting from installing it.