Our analysis confirmed the behaviour described in the threat library entry. Do not install it. Read the analysis and indicators →
Also reported by malext.io, reddit.com
ZAPGYN
Confirmed member of a tracked malicious supply-chain campaign.
Analysis record
- Analysed
- Today
- Version
- v7.4.3.87
- Artifact
- SHA256 021…426
- Source
- Findings (non-IoC)
Is ZAPGYN safe?
ZAPGYN adds CRM features to WhatsApp Web, letting you organize chats and contacts from inside the app. The logged manifest lists no permission strings and no host permissions, so its reach comes from content scripts running in WhatsApp. The network endpoints tied to the bundle are a mix of library hosts such as api.statsigcdn.com and api.dev.atlassian.com, plus one service of its own, app.wascript.com.
The findings that look alarming mostly describe plumbing. NET-SOCKET_IO-content/assets/js/v_7_4_3_86_085ff17f-7684-4a41-bfdd-8bd9d5293bb2148.js:64 marks a socket.io client, which is how a live CRM keeps a session open with its server. NET-FETCH-background.js:137 marks a fetch call in the background script. A WhatsApp helper has to read your chat window and sync with a backend, so both are expected.
What the scanner tripped on is the size and packaging of the code. Hundreds of code-smell matches come from bundled JavaScript libraries. Hundreds of the collected domain-like values are not domains at all: ae.jobs, above.sm, btn.glass and border.radius.circle are UI strings read as hostnames. The two obfuscation matches, OBFUSCATION-LARGE_BASE64 in a hashed chunk and OBFUSCATION-FUNCTION_INDIRECT in a bundle file, are standard build-tool output.
No malware signature, no credential-stealing pattern and no exposed key turned up. The thing worth knowing is that any tool running inside WhatsApp Web can see your messages, so the trust question is about whoever operates app.wascript.com. Nothing we found shows data going anywhere other than that backend.
Evidence ledger
Ranked by severity · findings with a source location link to the code viewer
YARA Rule Matches
16 rules| Severity | Rule | Hits | Files | Metadata |
|---|---|---|---|---|
| LOW | credential env files | 30 | content/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d289213.jscontent/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d289145.jscontent/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d289240.js +27 more | - |
| LOW | postinstall persistence mechanism | 19 | fluxo/assets/js/emoji-picker-react.esm.LrTXoimj.jscrm/assets/js/emoji-picker-react.esm.aMh8OwYb.jsfunnil/assets/css/style.css +16 more | - |
| LOW | postinstall file download | 55 | content/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d2896.jscontent/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d289128.jscrm/assets/ttf/Segoeui.chunk.ttf +52 more | - |
| LOW | NoUseEval | 1 | whatsapp/wpp/index.js | - |
| LOW | NoUseWeakRandom | 38 | funnil/assets/js/2e0cf7f6-e9bc-41e0-84b5-f570a0e461c8.B8VBrnTG.jscrm/assets/js/2b070b0a-2c0f-4c9c-bb5b-938727270e32.CWg5n8f0.jscontent/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d289175.js +35 more | - |
| LOW | SQLInjection | 1 | fluxo/index.js | - |
| LOW | ServerHostnameNotVerified | 1 | content/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d289.js | - |
| LOW | LocalStorageShouldNotBeUsed | 15 | content/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d2895.jscrm/assets/js/emoji-picker-react.esm.aMh8OwYb.jsfunnil/assets/js/68038811-0075-484f-8b19-297df42f51e1.CVYXH02z.js +12 more | - |
| LOW | postinstall environment access | 111 | content/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d2896.jscontent/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d289171.jscontent/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d28975.js +108 more | - |
| LOW | postinstall network communication | 94 | content/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d28934.jsfluxo/assets/js/emoji-picker-react.esm.LrTXoimj.jscontent/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d289121.js +91 more | - |
| LOW | OriginsNotVerified | 5 | funnil/assets/js/770d23cd-9021-4aef-887e-d47811b5c322.B8_nURbH.jscontent/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d2896.jscrm/assets/js/b3c3d2a2-f432-4ecd-a3f4-0b4582cc4a6c.B8_nURbH.js +2 more | - |
| LOW | postinstall crypto operations | 44 | content/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d28924.jscontent/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d2894.jscontent/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d28922.js +41 more | - |
| LOW | postinstall system command | 77 | crm/assets/css/style.csswhatsapp/wpp_module/index.jscontent/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d289114.js +74 more | - |
| LOW | postinstall obfuscation | 83 | content/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d2895.jsfluxo/index.jscontent/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d289187.js +80 more | - |
| LOW | postinstall registry modification | 8 | content/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d289175.jscontent/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d289260.jsfunnil/assets/js/68038811-0075-484f-8b19-297df42f51e1.CVYXH02z.js +5 more | - |
| LOW | postinstall file manipulation | 172 | content/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d28922.jsfunnil/assets/js/4996b552-cc74-45cb-b126-d42da07124b7.Due0rgrp.jscontent/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d289127.js +169 more | - |
Publisher Evidence
Limited evidencePublisher identity, store signals, distribution reach, and warning signals used for context. Treat this as supporting evidence, not a clean bill of health.
Chrome does not expose the same publisher verification data as IDE stores, so this score is deliberately conservative.
11 evidence rows available.
Finding Categories
YARA Rules Matched
16 rules(754 hits)Requested Permissions
5 permissionsAI Security Report
AI Security Review
Evidence context: threat category none; evidence quality moderate.
ZAPGYN adds CRM features to WhatsApp Web: chat organization, contact handling and campaign tools. The bundle is a large JavaScript application, and almost everything flagged inside it traces to bundled libraries or to the extractor misreading UI strings as network destinations.
Start with what did not match. Across the scan there are no malware-signature hits, no malware-family hits, no exposed secrets and no tool-poisoning findings. On a bundle this size that absence carries more weight than the 754 code-smell entries, which fire on ordinary JavaScript constructs.
The 22 network findings are library detections, not evidence of exfiltration. NET-JQUERY_AJAX-content/assets/js/v_7_4_3_86_085ff17f-7684-4a41-bfdd-8bd9d5293bb223.js, NET-SOCKET_IO-content/assets/js/v_7_4_3_86_085ff17f-7684-4a41-bfdd-8bd9d5293bb2148.js:64 and NET-FETCH-background.js:137 mark where jQuery's ajax helper, the socket.io client and the fetch API appear in the source. Those are the plumbing inside any bundled web app. Alone, they say nothing about where data goes or who controls the far end.
The endpoint list is the clearest sign of extractor noise. Entries like ae.jobs, above.sm, below.sm, btn.glass, avatar.online, border.radius.circle, artboard.phone and color.border.accent.orange are not hostnames a server could resolve. They are UI tokens, class-name fragments and JSON keys lifted out of the source. Mixed in are api.statsigcdn.com for feature-flag delivery and api.dev.atlassian.com plus atlassian-isolated.net for editor and collaboration libraries. One endpoint, app.wascript.com, belongs to a WhatsApp automation backend, which is what a WhatsApp CRM talks to.
The two obfuscation findings are routine for this kind of build. OBFUSCATION-LARGE_BASE64-funnil/assets/js/ed6113f2-bc09-4421-a453-bbbd66fe9488.DCssQ7AT.js points at a content-hashed chunk with inlined assets, and OBFUSCATION-FUNCTION_INDIRECT-content/assets/js/v_7_4_3_86_085ff17f-7684-4a41-bfdd-8bd9d5293bb2259.js is the indirect-call pattern webpack and Babel emit. Neither is a hand-written packer. The recorded manifest lists no permission strings and no host permissions, so reach comes from content scripts injected into WhatsApp Web rather than broad browser access.
The strongest argument against calling this clean is that a WhatsApp CRM runs inside your chat window. Its content scripts can read message text, and the socket.io and fetch calls in content/assets/js/ can move that data to a server while you work. That capability is real and it is the product. What is missing is any evidence the data path goes somewhere unexpected: no IoCs against login or banking domains, no cookie-access pattern, no obfuscated entry point, and the only non-CDN endpoint is the extension's own backend. A runtime capture of traffic to app.wascript.com would close that question.
Key Reasons
- Zero malware-signature, malware, secret and tool-poisoning matches across 1183 findings; only medium and low severity entries exist.
- All 22 network findings are library-level detections (NET-JQUERY_AJAX, NET-SOCKET_IO, NET-FETCH) inside content/assets/js and background.js, with no destination attribution.
- Endpoint list is dominated by non-resolvable UI tokens (btn.glass, border.radius.circle, artboard.phone, above.sm), a signature of XIOC extractor noise.
- Obfuscation findings are OBFUSCATION-LARGE_BASE64 and OBFUSCATION-FUNCTION_INDIRECT in webpack-style hashed bundle chunks, not a hand-written packer.
- The only non-CDN endpoint, app.wascript.com, is a WhatsApp automation backend consistent with the extension's stated CRM purpose.
False Positive Considerations
- 404 IoC entries include UI tokens, CSS class fragments and JSON keys misread as domains (ae.jobs, btn.glass, border.radius.circle, calls.function.arguments.delta).
- 754 code-smell findings generated by bundled third-party libraries in content/assets/js and funnil/assets/js.
- Obfuscation rules firing on webpack/babel output: large inlined base64 assets and indirect function-call patterns in content-hashed chunks.
- High finding volume from dist-style bundled dependencies rather than from any single flagged behaviour.
Reviewed 2026-10-10; recommended action: suppress false positive; model confidence 76%.
Chrome version history
Risk trend by version
15 analyzed versions. Each point is the latest successful scan for that version; failed zero-score scans are hidden. Dates are based on first seen by risky plugins.
Pick any point on the chart to explore that version's code below.
Source Code Not Available
Source code is not available for this version of the extension.
About This Extension
Frequently Asked Questions
Similar Extensions
Related extensions from the same publisher or marketplace
waSuper
[email protected]
Wa Elo IA
[email protected]
Whapro – Automação, CRM e Vendas no WhatsApp Web
[email protected]
Vende+
[email protected]
WaListall | O Melhor CRM para WhatsApp Web – Teste Grátis
[email protected]
InfiChat
[email protected]