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
WhatsSelling
Confirmed member of a tracked malicious supply-chain campaign.
Analysis record
- Analysed
- 6 days ago
- Version
- v7.4.3.87
- Artifact
- SHA256 FB4…AC0
- Source
- Findings (non-IoC)
Is WhatsSelling safe?
WhatsSelling bills itself as a CRM for Chrome, and the code backs that up. Content scripts connect to app.wascript.com, keep a live socket open, and call api.statsigcdn.com for feature flags. The manifest declares no special permissions and no host permissions, so the extension cannot reach into pages or domains beyond what the browser grants by default.
One file draws attention in the scans. funnil/assets/js/9cf42769-2ad5-4714-8614-9a2b4c455349.CgnacD38.js trips a rule called OBFUSCATION-LARGE_BASE64, which fires whenever a script packs a long encoded blob into a single string. Bundled assets do this constantly, for inline images, fonts and source maps. A real hidden payload would arrive with a malware signature beside it, and across the whole extension the malware scanner matched nothing.
The rest of the alert volume comes from the endpoint extractor misreading code. Entries like color.border.accent.orange, border.radius.circle and calls.function.arguments.delta resemble CSS token names and JavaScript property chains rather than servers anyone contacts. The same extractor counts infrastructure hosts that ship inside every bundled library. Hundreds of the 414 flagged indicators belong in that pile.
A small CRM extension with 67 users sits behind all this, and its content scripts use ordinary web APIs: fetch, jQuery ajax and socket.io. None of the network calls point at login pages, credential stores or unknown drop servers. Anyone uneasy about the socket.io connection can ask the developers where it terminates, but the destinations named in the code match the product's own backend. The findings describe how modern JavaScript bundles look under a scanner.
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 | postinstall environment access | 111 | funnil/assets/js/comp.DyHpIB2X.jscontent/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d289270.jscontent/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d289185.js +108 more | - |
| LOW | postinstall network communication | 94 | content/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d289167.jscontent/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d289211.jscrm/assets/js/5e35787c-36b2-4a56-8ea4-4e0a75aa6943.D2Np3EBj.js +91 more | - |
| LOW | OriginsNotVerified | 5 | funnil/assets/js/770d23cd-9021-4aef-887e-d47811b5c322.B8_nURbH.jscrm/assets/js/b3c3d2a2-f432-4ecd-a3f4-0b4582cc4a6c.B8_nURbH.jscontent/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d2896.js +2 more | - |
| LOW | postinstall crypto operations | 44 | crm/assets/js/81588378-4894-485b-a1a7-52b1571a56a9.B9qdt_GQ.jsfluxo/index.jscontent/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d28929.js +41 more | - |
| LOW | postinstall system command | 77 | crm/assets/js/22224ae4-c9a0-456b-97d3-6f47a43e6f69.cO50aLre.jscontent/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d2893.jscontent/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d28958.js +74 more | - |
| LOW | postinstall obfuscation | 83 | content/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d28937.jscrm/assets/js/22224ae4-c9a0-456b-97d3-6f47a43e6f69.cO50aLre.jscontent/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d2893.js +80 more | - |
| LOW | postinstall registry modification | 8 | fluxo/assets/js/aacac57f-f9a2-4a7d-9569-51c193124758.BUttUo7e.jscontent/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d289149.jscontent/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d289175.js +5 more | - |
| LOW | postinstall file manipulation | 172 | crm/assets/js/index.CqdIRXBX.jscontent/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d289213.jscontent/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d28912.js +169 more | - |
| 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-3a9d8748d289266.jscontent/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d289216.js +27 more | - |
| LOW | postinstall persistence mechanism | 19 | content/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d289260.jsfunnil/assets/js/68038811-0075-484f-8b19-297df42f51e1.CVYXH02z.jsfunnil/assets/js/2e0cf7f6-e9bc-41e0-84b5-f570a0e461c8.B8VBrnTG.js +16 more | - |
| 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-3a9d8748d28952.jscontent/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d2895.jscontent/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d289260.js +12 more | - |
| LOW | postinstall file download | 55 | crm/index.jsfunnil/assets/ttf/Segoeuibold.chunk.ttffunnil/assets/js/9cf42769-2ad5-4714-8614-9a2b4c455349.CgnacD38.js +52 more | - |
| LOW | NoUseEval | 1 | whatsapp/wpp/index.js | - |
| LOW | NoUseWeakRandom | 38 | funnil/index.jsfunnil/assets/js/2e0cf7f6-e9bc-41e0-84b5-f570a0e461c8.B8VBrnTG.jsfluxo/assets/js/aacac57f-f9a2-4a7d-9569-51c193124758.BUttUo7e.js +35 more | - |
| LOW | SQLInjection | 1 | fluxo/index.js | - |
Network Indicators
Concrete URLs, domains, IPs, emails, and hashes extracted from the analyzed artifact.
Loading network indicators
IoC detail rows are loaded outside the initial page render.
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.
Version 7.4.3.87 of WhatsSelling arrives with 1,193 scanner findings, and their shape matters more than their number. The malware scanner matched nothing: zero malware signatures, zero confirmed families, zero exposed secrets. Nearly all the volume sits in two high-noise categories, 754 code-smell hits and 414 indicator extractions. The 22 network findings and the 2 obfuscation findings carry the only real signal, and both hold up once you look at what they point to.
The network findings name frameworks rather than destinations. NET-JQUERY_AJAX fires inside content/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d28923.js, NET-SOCKET_IO inside ...8912.js, ...89149.js, ...89175.js and ...8966.js, and NET-FETCH inside background.js:137 plus a dozen content assets. jQuery ajax, socket.io and fetch form the plumbing of any web app that talks to a server, and a CRM with a live inbox needs a persistent channel. The only named endpoints in the bundle, app.wascript.com and api.statsigcdn.com, fit that description: an application backend and a feature-flag service. api.atlassian.com and the atlassian-us-gov-mod.com hosts look like a bundled Atlassian SDK.
The endpoint list also carries extractor garbage. color.border.accent.orange, border.radius.circle, calls.function.arguments.delta, artboard.phone and btn.glass read as CSS custom properties and JavaScript property chains. They sit in the same list as above.sm and below.sm, which shows the indicator count measures token shape, not hosts contacted.
Two obfuscation flags appear. OBFUSCATION-LARGE_BASE64 lands on funnil/assets/js/9cf42769-2ad5-4714-8614-9a2b4c455349.CgnacD38.js, and OBFUSCATION-FUNCTION_INDIRECT on content/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d289260.js. Long base64 strings appear in bundled front ends for inline images, fonts and source maps, and indirect calls appear in any transpiled output. A payload would show obfuscation alongside a malware signature, a credential-targeting domain or a cookie read. Obfuscation on its own tells us little.
A skeptic would point at the publisher. [email protected] reads as a mailbox rather than a company, the store listing misspells Chrome, the extension has 67 users, and the manifest shows no declared permissions or host permissions at all. An extension that opens a socket while declaring nothing could be siphoning page data. Three things undercut that reading. Nothing in the scans touches a login page, a session cookie or a password store. The socket destinations match the product's own backend. And the empty permission arrays come with a single manifest-analysis finding, so the manifest parse may simply be incomplete. A fresh scan of the manifest would settle it, and that gap is the only one worth closing.
Key Reasons
- Zero malware signatures, zero confirmed malware families and zero exposed secrets across 1,193 findings
- Network findings (NET-SOCKET_IO, NET-FETCH, NET-JQUERY_AJAX) match framework plumbing in bundled content assets, with named endpoints app.wascript.com and api.statsigcdn.com fitting a CRM backend
- 414 IoC entries include obvious non-hosts such as border.radius.circle and calls.function.arguments.delta
- Obfuscation flags (OBFUSCATION-LARGE_BASE64, OBFUSCATION-FUNCTION_INDIRECT) appear without adjacent malware signatures or credential-targeting domains
- Empty permissions and host_permissions arrays alongside a single manifest-analysis finding point to a parse gap rather than hidden capability
False Positive Considerations
- IoI extractor reading CSS custom properties and JS property chains (color.border.accent.orange, calls.function.arguments.delta) as domains
- 754 low-severity code-smell findings, a documented high-noise class
- Large base64 blob in funnil/assets/js/9cf42769-2ad5-4714-8614-9a2b4c455349.CgnacD38.js, normal for bundled front-end builds
- jQuery ajax, socket.io and fetch flags firing on standard web-app communication patterns in minified assets
Reviewed 2026-10-13; recommended action: suppress false positive; model confidence 70%.
Chrome version history
Risk trend by version
16 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]