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
SellerHub360
Confirmed member of a tracked malicious supply-chain campaign.
Analysis record
- Analysed
- 6 days ago
- Version
- v7.4.3.86
- Artifact
- SHA256 A89…0C9
- Source
- Findings (non-IoC)
Is SellerHub360 safe?
SellerHub360 is a customer-management dashboard that runs on top of WhatsApp Web, published through the extensao.store shop. The manifest we examined declares no special permissions and no host permissions, so everything the extension does runs from its own scripts. Most of the web addresses that turned up are nonsense: 'border.radius.circle' and 'calls.function.arguments.delta' are CSS values and JavaScript field names that the scanner read as domains. The entry that looks like a genuine service is app.wascript.com, the vendor's own backend for syncing chat data, alongside a feature-flag CDN at api.statsigcdn.com.
The findings worth explaining are the network ones. A content script named content/assets/js/v_7_4_3_86_085ff17f-7684-4a41-bfdd-8bd9d5293bb212.js opens a socket.io connection, and background.js:137 makes a fetch call. For a CRM that shows live WhatsApp conversations, a WebSocket and an HTTP call are the minimum needed to work. If that socket were sending your chats to an unrelated company, it would mean your conversations were being copied to a third party; the addresses recovered point at the vendor's own service instead.
Two obfuscation alerts fired as well, on funnil/assets/js/ed6113f2-bc09-4421-a453-bbbd66fe9488.DCssQ7AT.js and one of the content bundles. Both are what webpack output looks like: an embedded base64 asset and indirect function calls. No malware signature matched anywhere in the extension, and nothing in the code targets a login page, a password field or a browser setting.
That is why the findings here look worse than the code does. The scanner counted framework calls, minified bundle structure and hundreds of string fragments, and read the volume as trouble. The code does not support that reading.
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_86_085ff17f-7684-4a41-bfdd-8bd9d5293bb2212.jscontent/assets/js/v_7_4_3_86_085ff17f-7684-4a41-bfdd-8bd9d5293bb2182.jsfluxo/assets/js/daf37cd0-f0ab-4695-bf53-7f59a28f946f.B_kSv3Hj.js +27 more | - |
| LOW | postinstall persistence mechanism | 19 | content/assets/js/v_7_4_3_86_085ff17f-7684-4a41-bfdd-8bd9d5293bb2199.jswhatsapp/wpp/index.jscontent/assets/js/v_7_4_3_86_085ff17f-7684-4a41-bfdd-8bd9d5293bb23.js +16 more | - |
| LOW | ServerHostnameNotVerified | 1 | content/assets/js/v_7_4_3_86_085ff17f-7684-4a41-bfdd-8bd9d5293bb2.js | - |
| LOW | LocalStorageShouldNotBeUsed | 15 | crm/index.jsfluxo/assets/js/51c96fe2-de18-4a51-8321-31e382281457.D-N0xPou.jscontent/assets/js/v_7_4_3_86_085ff17f-7684-4a41-bfdd-8bd9d5293bb227.js +12 more | - |
| LOW | postinstall file download | 55 | content/assets/js/v_7_4_3_86_085ff17f-7684-4a41-bfdd-8bd9d5293bb27.jscontent/assets/js/v_7_4_3_86_085ff17f-7684-4a41-bfdd-8bd9d5293bb225.jsfunnil/assets/ttf/Segoeuiitalic.chunk.ttf +52 more | - |
| LOW | NoUseEval | 1 | whatsapp/wpp/index.js | - |
| LOW | NoUseWeakRandom | 38 | content/assets/js/v_7_4_3_86_085ff17f-7684-4a41-bfdd-8bd9d5293bb244.jscontent/assets/js/v_7_4_3_86_085ff17f-7684-4a41-bfdd-8bd9d5293bb23.jscontent/assets/js/v_7_4_3_86_085ff17f-7684-4a41-bfdd-8bd9d5293bb214.js +35 more | - |
| LOW | SQLInjection | 1 | fluxo/index.js | - |
| LOW | postinstall environment access | 111 | content/assets/js/v_7_4_3_86_085ff17f-7684-4a41-bfdd-8bd9d5293bb2259.jsfunnil/assets/js/22e13c6e-4942-4ae4-8827-bb3a258c5825.DbdGUX_W.jscontent/assets/js/v_7_4_3_86_085ff17f-7684-4a41-bfdd-8bd9d5293bb2174.js +108 more | - |
| LOW | postinstall network communication | 94 | content/assets/js/v_7_4_3_86_085ff17f-7684-4a41-bfdd-8bd9d5293bb223.jscontent/assets/js/v_7_4_3_86_085ff17f-7684-4a41-bfdd-8bd9d5293bb2128.js_metadata/verified_contents.json +91 more | - |
| LOW | OriginsNotVerified | 5 | crm/assets/js/d6653158-a7fc-4ea6-8b92-e12c0e34e796.B8_nURbH.jsfluxo/assets/js/daf37cd0-f0ab-4695-bf53-7f59a28f946f.B_kSv3Hj.jsfunnil/assets/js/519c7000-9b58-4d38-93d3-b531a03af7c8.B8_nURbH.js +2 more | - |
| LOW | postinstall system command | 77 | _metadata/verified_contents.jsonfluxo/assets/js/emoji-picker-react.esm.BXnERab_.jsfunnil/assets/js/c1772cff-e6cb-49ab-a0a3-c65995b79740.DcKVToV-.js +74 more | - |
| LOW | postinstall obfuscation | 83 | content/assets/js/v_7_4_3_86_085ff17f-7684-4a41-bfdd-8bd9d5293bb221.jscontent/assets/js/v_7_4_3_86_085ff17f-7684-4a41-bfdd-8bd9d5293bb2269.jscontent/assets/js/v_7_4_3_86_085ff17f-7684-4a41-bfdd-8bd9d5293bb2148.js +80 more | - |
| LOW | postinstall registry modification | 8 | content/assets/js/v_7_4_3_86_085ff17f-7684-4a41-bfdd-8bd9d5293bb25.jsfunnil/assets/js/c5014c9f-5e7e-4a5e-971d-69a5eb7d6119.BBiWvLKc.jsfluxo/assets/js/51c96fe2-de18-4a51-8321-31e382281457.D-N0xPou.js +5 more | - |
| LOW | postinstall crypto operations | 44 | content/assets/js/v_7_4_3_86_085ff17f-7684-4a41-bfdd-8bd9d5293bb25.jsfunnil/assets/js/ed6113f2-bc09-4421-a453-bbbd66fe9488.DCssQ7AT.jscrm/assets/js/f97c5ce3-0a5a-4e4c-91fd-a481c50e41a1.CyPiqdYK.js +41 more | - |
| LOW | postinstall file manipulation | 172 | crm/assets/js/index.ByX2iicK.jscontent/assets/js/v_7_4_3_86_085ff17f-7684-4a41-bfdd-8bd9d5293bb238.jscrm/assets/js/f24d37bf-442f-4453-a037-f9bbcd9a216c.mzI81xJw.js +169 more | - |
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.
SellerHub360 is a WhatsApp Web CRM: a content script that layers a sales dashboard over the chat interface. The manifest as extracted shows empty permission and host permission arrays, so the behavioural evidence sits in background.js and the bundled scripts under content/assets/js/.
The network findings record library behaviour. NET-FETCH-background.js-137 and NET-FETCH on content/assets/js/v_7_4_3_86_085ff17f-7684-4a41-bfdd-8bd9d5293bb2136.js:1 mark fetch() calls. NET-SOCKET_IO on v_7_4_3_86_085ff17f-7684-4a41-bfdd-8bd9d5293bb212.js:15 and ...bb2148.js:64 mark socket.io client code. NET-JQUERY_AJAX on ...bb224.js:181 marks jQuery's ajax transport. A CRM that live-syncs WhatsApp conversations needs a WebSocket plus an HTTP client, and socket.io is the standard choice. None of these findings identify a destination host.
The endpoint list is where the extractor falls apart. 'border.radius.circle', 'btn.glass', 'calls.function.arguments.delta' and 'avatar.online' are CSS keywords, API field paths and property chains that the string parser promoted to domains. '4g.ve', 'above.sm', 'ae.online' and 'af.pf' are two-letter fragments of the same kind. The entries that resolve to something real are app.wascript.com, the vendor's own service, api.statsigcdn.com, a feature-flag CDN, and a set of api.*.atlassian.com hosts that sit inside bundled client libraries.
The two obfuscation alerts are minification artifacts. OBFUSCATION-FUNCTION_INDIRECT on content/assets/js/v_7_4_3_86_085ff17f-7684-4a41-bfdd-8bd9d5293bb2259.js:1 flags indirect function invocation, which is how every webpack and esbuild bundle calls modules through its runtime. OBFUSCATION-LARGE_BASE64 on funnil/assets/js/ed6113f2-bc09-4421-a453-bbbd66fe9488.DCssQ7AT.js:1 flags an embedded base64 blob, the usual shape of a bundled font, icon sprite or inlined image. Neither is the deliberate string scrambling that hides intent.
What is absent carries weight. No malware signature matched, no secret was recovered, no tool-poisoning indicator fired, and no dependency finding is present. The remaining volume is code-smell, which fires on ordinary JavaScript patterns, plus IoC strings of the kind already shown to be garbage.
A skeptic could argue the opposite case. The publisher is an email address rather than a named company, the file names are content-hashed and opaque (v_7_4_3_86_085ff17f-...), and a base64 blob plus indirect calls is also what a hidden payload looks like. That reading fails on specifics: hidden payloads normally arrive with at least one credential-targeting indicator, one non-generic external host, or a malware family match, and this extension has none. The hashed names share one consistent version prefix across the whole content/ tree, which is what a build pipeline produces. What would change the picture is a socket.io endpoint resolving outside wascript.com, or a manifest entry granting access to sites beyond web.whatsapp.com.
Key Reasons
- No malware signature, secret, dependency or tool-poisoning finding anywhere in the extension.
- Network findings are framework detections (socket.io, fetch, jQuery ajax) in bundled content scripts, with no destination host attached.
- Endpoint list is dominated by parser garbage such as 'border.radius.circle' and 'calls.function.arguments.delta'; the real hosts are app.wascript.com, api.statsigcdn.com and Atlassian API strings inside bundled libraries.
- Both obfuscation alerts match standard webpack/esbuild output: an embedded base64 asset and indirect module calls.
- Behaviour matches the stated product; a WhatsApp Web CRM needs a live socket and an HTTP client.
False Positive Considerations
- IoC extractor promoted CSS values and JavaScript property chains to domains
- Hundreds of low-severity code-smell hits on minified JavaScript
- Content-hashed bundle files under content/assets/js/ multiply framework detections
- Obfuscation rules firing on webpack output rather than deliberate string hiding
Reviewed 2026-10-13; recommended action: suppress false positive; model confidence 75%.
Chrome version history
Risk trend by version
20 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]