OpenSSF/OSV advisory MAL-2026-13465 confirms this npm version as malicious. The package is advertised as a Vite plugin that generates a local pathInfo.json map, but its generateBundle hook appends obfuscated JavaScript to the largest/entry JS chunk of the developer's build when a hidden MD5 license check (global['gva-project-name'] vs global['gva-secret']) fails. The appended code is stored as base64 constants (G, v, O) decoded via atob() at runtime...
Source
OpenSSF Malicious Packages via OSV
Summary
Malicious code in vite-vue-path-map (npm)
Details
The package is advertised as a Vite plugin that generates a local pathInfo.json map, but its generateBundle hook appends obfuscated JavaScript to the largest/entry JS chunk of the developer's build when a hidden MD5 license check (global['gva-project-name'] vs global['gva-secret']) fails. The appended code is stored as base64 constants (G, v, O) decoded via atob() at runtime. On every page load of the resulting production site it creates an invisible 0x0 off-screen <img> whose src decodes to https://plugin.gin-vue-admin.com/api/shopImage/view?name=logo.svg, sending a per-visitor beacon to an author-controlled domain. If that request fails or the server returns a non-image response, the onerror handler invokes document.open() and document.write() with a base64-decoded Chinese-language 'project unauthorized, contact WeChat shouzi_1994' HTML page, replacing the developer's application in every visitor's browser. The injection, beacon, and defacement behavior are not documented in the README and are activated at server-side discretion of the author's domain, giving whoever controls plugin.gin-vue-admin.com a remote switch to deface any site that shipped a build produced with this plugin.
Decision reason
OpenSSF Malicious Packages via OSV confirms vite-vue-path-map@1.0.0 as malicious (MAL-2026-13465): Malicious code in vite-vue-path-map (npm)