Malicious code in maplibre-gl-vue3 (npm)
--- _-= Per source details. Do not edit below this line.=-_ ## Source: amazon-inspector (a46347c152553bd008255683dd927e5f25233224d3c6f1df6ae87533350b5815) The package advertises itself as MapLibre GL bindings for Vue 3 and re-exports the upstream maplibre-gl API, but on import it unconditionally injects a <script> tag into document.head pointing at http://121.199.166.250:19527/myApi/pipesnetwork.js. src/index.ts calls loadGuardScript() at module top level; src/license.ts defines GUARD_SCRIPT_URL and appends the script element to document.head. Any Vue 3 application that imports this package will fetch and execute attacker-controlled JavaScript from a hardcoded bare-IP, plaintext-HTTP endpoint in the consumer's browser context — giving the operator of that endpoint full access to cookies, localStorage, session tokens, and user input in the host application. The endpoint is unpinned (no SRI, no version), served over HTTP (mutable in transit), and unrelated to mapping functionality. A source comment ('改这里:发布给第三方前换成你托管的 guard 脚本地址' — 'change this before releasing to third parties: replace with your hosted guard script address') indicates the loader is intended to deliver third-party-controlled code to downstream consumers. The package name also shadows the maplibre-gl ecosystem (legitimate Vue bindings are published as vue-maplibre-gl), increasing the chance of accidental installation.
AI Analysis
Technical Summary
The maplibre-gl-vue3 npm package (version 1.0.0) masquerades as Vue 3 bindings for MapLibre GL but unconditionally injects a <script> tag pointing to a hardcoded HTTP URL (http://121.199.166.250:19527/myApi/pipesnetwork.js) into the document head upon import. This script is attacker-controlled and fetched without integrity verification or encryption, enabling remote code execution in the browser context of the host application. The malicious behavior is embedded in the module's top-level code, and a source comment suggests the script URL was intended to be replaced before release, indicating the loader is designed to deliver third-party code. The package name shadows the legitimate vue-maplibre-gl package, increasing the likelihood of inadvertent use.
Potential Impact
Any Vue 3 application importing [email protected] will execute attacker-controlled JavaScript in the user's browser, potentially compromising cookies, localStorage, session tokens, and user inputs. This can lead to user session hijacking, data theft, and further client-side compromise. The use of an unencrypted HTTP endpoint without subresource integrity allows tampering and interception of the malicious script during transit.
Mitigation Recommendations
No official patch or remediation is currently available for [email protected]. Users should immediately avoid installing or importing this package. Replace any usage of maplibre-gl-vue3 with the legitimate vue-maplibre-gl package or other trusted alternatives. Monitor dependencies for supply chain risks and verify package authenticity before installation. Patch status is not yet confirmed — check the vendor advisory or trusted sources for updates.
Malicious code in maplibre-gl-vue3 (npm)
Description
--- _-= Per source details. Do not edit below this line.=-_ ## Source: amazon-inspector (a46347c152553bd008255683dd927e5f25233224d3c6f1df6ae87533350b5815) The package advertises itself as MapLibre GL bindings for Vue 3 and re-exports the upstream maplibre-gl API, but on import it unconditionally injects a <script> tag into document.head pointing at http://121.199.166.250:19527/myApi/pipesnetwork.js. src/index.ts calls loadGuardScript() at module top level; src/license.ts defines GUARD_SCRIPT_URL and appends the script element to document.head. Any Vue 3 application that imports this package will fetch and execute attacker-controlled JavaScript from a hardcoded bare-IP, plaintext-HTTP endpoint in the consumer's browser context — giving the operator of that endpoint full access to cookies, localStorage, session tokens, and user input in the host application. The endpoint is unpinned (no SRI, no version), served over HTTP (mutable in transit), and unrelated to mapping functionality. A source comment ('改这里:发布给第三方前换成你托管的 guard 脚本地址' — 'change this before releasing to third parties: replace with your hosted guard script address') indicates the loader is intended to deliver third-party-controlled code to downstream consumers. The package name also shadows the maplibre-gl ecosystem (legitimate Vue bindings are published as vue-maplibre-gl), increasing the chance of accidental installation.
Affected software
Run on your own infrastructure? Check whether these packages are installed with threat-finder — our free open-source scanner.
AI-Powered Analysis
Machine-generated threat intelligence
Technical Analysis
The maplibre-gl-vue3 npm package (version 1.0.0) masquerades as Vue 3 bindings for MapLibre GL but unconditionally injects a <script> tag pointing to a hardcoded HTTP URL (http://121.199.166.250:19527/myApi/pipesnetwork.js) into the document head upon import. This script is attacker-controlled and fetched without integrity verification or encryption, enabling remote code execution in the browser context of the host application. The malicious behavior is embedded in the module's top-level code, and a source comment suggests the script URL was intended to be replaced before release, indicating the loader is designed to deliver third-party code. The package name shadows the legitimate vue-maplibre-gl package, increasing the likelihood of inadvertent use.
Potential Impact
Any Vue 3 application importing [email protected] will execute attacker-controlled JavaScript in the user's browser, potentially compromising cookies, localStorage, session tokens, and user inputs. This can lead to user session hijacking, data theft, and further client-side compromise. The use of an unencrypted HTTP endpoint without subresource integrity allows tampering and interception of the malicious script during transit.
Mitigation Recommendations
No official patch or remediation is currently available for [email protected]. Users should immediately avoid installing or importing this package. Replace any usage of maplibre-gl-vue3 with the legitimate vue-maplibre-gl package or other trusted alternatives. Monitor dependencies for supply chain risks and verify package authenticity before installation. Patch status is not yet confirmed — check the vendor advisory or trusted sources for updates.
Technical Details
- Gcve Source
- db.gcve.eu
- Osv Id
- MAL-2026-6592
- Osv Schema Version
- 1.7.4
- Aliases
- []
- Ecosystems
- ["npm"]
- Database Specific Severity
- null
- Cvss Version
- null
Threat ID: 6a42ed6527e9c79719937db9
Added to database: 06/29/2026, 22:10:45 UTC
Last enriched: 07/09/2026, 10:48:00 UTC
Last updated: 07/31/2026, 02:17:30 UTC
Views: 65
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
Need more coverage?
Upgrade to Pro Console for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.