Your RSA-2048 keys break in 2030. Find every one of them before attackers do.
Malicious package

element-guci-utilnpm

element-guci-util is a confirmed malicious npm package (MAL-2026-15880) that executes malicious code on install (malicious versions 7.0.0, 7.1.1, 7.1.2…). Do not install it — remove it immediately and rotate any exposed credentials.

Malicious code in element-guci-util (npm)

MAL-2026-15880
Immediate action
Remove the package, then rotate any secrets the build/runtime could reach.
npm uninstall element-guci-util

What this malware does

Package is published as an element-ui utility library (element-guci-util, description '元素-ui 常用工具函数集合') but its main entrypoint contains no utility functions. On require()/import, top-level code invokes iconFont() which checks the current date and, on or after 2026-10-01, invokes iconDont(). iconDont fabricates a synthetic .exe Blob and triggers an anchor click to force a download on the end user, opens https://admin.nikolive.cn/ in a new window, calls location.reload(true) on a 500ms interval, and starts CPU/memory exhaustion loops. Package metadata carries placeholder values (author: '你的名字', repo 你的git仓库地址), and package.json declares the package as its own dependency at ^9.9.9 while publishing as 10.0.0 — a self-referential range disjoint from the published version, which alters what subsequent installs resolve to. Any web application bundling this module will ship the payload to its end users once the trigger date passes; the forced.exe download plus redirect to an attacker-controlled host constitutes an attacker-benefiting payload against the installer's downstream users, not benign vandalism.

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.

Malicious versions

18 flagged
7.0.07.1.17.1.28.0.08.1.18.1.29.0.09.1.19.1.29.9.910.0.010.1.110.2.210.3.311.11.1112.11.1112.11.1312.12.1

Indicators of compromise (SHA-256)

8649406e7c2820cb97dc67905db9b89efb2984a1083523550842fe581146b9b3
2e099870075dfd1c78054b0dc04c72a10d4c10fb1616bfe5278a976881feedd5
6b56d30f4a7c0f015faee2d2feafae1e10ad5f7ba32a248d0ca30d150f68afe3
79ef99a3589e4a97955279369c30161b5be5abfe13fc3375eb459b30232b2de9
873fb9f3200c9230af36f1bf7302336920106af9ce63c8fab121d78054147f84
9839fc2d59de6447fde0abd14d8a5cb02fb4395c4ee7ce4de637ea190fd471ee
a7bd383be4da675a4b281e96edf3c1792e95e5cc62ffb7c628f122b4697a704c
e43ee355ab038085d87ed11e81acc53a50163f14b617d54b7e9b9c31e800900a
0711c06cd2c0e1cd226730d78f01a3d96df802f7dded093184f55858090f484c
13bd5bb46ad65466234c8e2dd97fcf6364491886e0e1f8a97e96e6b7bccac893
f8f0acaf4d652503cd76c42e61619a8a3ed9c633afd9528294c6aecde9b4c0be
02e05596f71a9729d61d7a41382cf66947928d81cf521bc9b6576b4273298ebb
39cd4d1be89b104abb63e3c9ee9c5e4a9e78cc3e31176b1e1263b2705a140206
43db71dc41e164b42d4ce52470f4273bc7e3a502c1e91947249434903e197a15
6be9e6ba4aa27071b87f8160e2e06febfae025a8d6bce0b0f36bc270919fe8b8
6fa8d6e6941af61273bdedf41143449d371bf7ae134e8c20ff69f3041a6419c5
768cefb80f6be27a592fa7be179156e40396b1c5e0b3879d4a4323de18f6ccb8
ebba2442da6706c5560db205dc2012e74d6bc55e3e346768cc54e8084fb03159
0076ee552dd2ad0d0a62cd3b200aef13dd5ab9ab8931fac002488324495b84f7

Detection & response playbook

Malicious package
  1. Find it

    Scan your lockfiles (package-lock.json, pnpm-lock.yaml, yarn.lock, requirements.txt, poetry.lock, etc.) and build artifacts for element-guci-util (18 malicious versions). O3 Security's supply-chain scanner checks every dependency against known-malicious package intelligence at install time and in CI, flagging element-guci-util across your stack and pipelines.

  2. If you installed it — respond

    Remove element-guci-util from your project and lockfile, then assume any secrets accessible to the build or runtime were exposed: rotate API keys, tokens, and credentials, and audit for unexpected outbound activity or persistence.

  3. Did it already run?

    If element-guci-util was ever installed, its post-install/runtime payload may have already executed. O3's L7 egress monitoring and runtime eBPF sensors detect the credential exfiltration or command-and-control callback after install and block the malicious outbound channel, so you catch and contain the actual compromise — not just the presence of the package.

  4. How O3 protects you

    O3 blocks element-guci-util before install through its supply-chain scanner, and if it has already run, detects and severs the exfiltration or C2 callback at runtime through L7 egress monitoring and eBPF.

Frequently asked questions

No. element-guci-util on npm has been identified as a malicious package (versions 7.0.0, 7.1.1, 7.1.2, 8.0.0, 8.1.1, 8.1.2, 9.0.0, 9.1.1, and 10 more flagged). It should be removed immediately — do not install or keep it in your dependency tree.

Campaign

GHSA-rv3j-whh5-7gwgIN-MAL-2026-019493IN-MAL-2026-019487IN-MAL-2026-019492IN-MAL-2026-019490IN-MAL-2026-019491IN-MAL-2026-019486IN-MAL-2026-019484IN-MAL-2026-019488IN-MAL-2026-019485IN-MAL-2026-019489IN-MAL-2026-019607IN-MAL-2026-019609IN-MAL-2026-019606IN-MAL-2026-019611IN-MAL-2026-019604IN-MAL-2026-019605IN-MAL-2026-019610IN-MAL-2026-019608

References

Credits

  • Amazon Inspector · finder

Detect & block this

O3 blocks element-guci-util-class packages before install and in CI — and if it already ran, its runtime egress monitoring catches the malicious outbound activity and severs the channel.

Explore

element-guci-util (npm) malicious package — MAL-2026-15880 | O3 Security