Flagged in the threat library: WaSteal

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

Chrome Web Store Verified

WORKZAP

by [email protected] · 5 users · 5.0 rating
88ee04d7-a78a-5dc2-bf31-651fa16426b4 | v7.4.3.87
65/ 100
MEDIUM risk
No change since v7.4.3.85
Threat verdict
Do not install

Confirmed member of a tracked malicious supply-chain campaign.

Analysis record

Analysed
1 weeks ago
Version
v7.4.3.87
Artifact
SHA256 BE0…EF4
Source
Findings (non-IoC)

Is WORKZAP safe?

WORKZAP is a Chrome extension that adds a customer relationship workspace, and what we scanned is version 7.4.3.87 with content scripts plus a background script that calls fetch from background.js line 137. The manifest snapshot shows no host permissions and no API permissions, a strange fit for something that talks to a server, so that gap is probably how the scan read the file rather than a rule the extension set for itself.

The bulk of what the scanner turned up is network pattern matches. NET-FETCH, NET-SOCKET_IO and NET-JQUERY_AJAX show up across the content script chunks and in background.js. They tell you the extension opens connections. They do not tell you where those connections go, and a CRM keeping a live session with its backend will trip every one of them. The hostnames that look alarming in the list, things like btn.glass, above.sm and calls.function.arguments.delta, are not websites at all. They are fragments of minified code that the extractor read as domains. The real hosts are api.statsigcdn.com for feature flags, some Atlassian developer APIs, and app.wascript.com, the vendor's own service.

Two findings are worth naming rather than waving away. A large base64 block sits in funnil/assets/js/9cf42769-2ad5-4714-8614-9a2b4c455349.CgnacD38.js, and indirect function calls sit in content/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d289260.js. Big base64 strings in a JavaScript assets folder are usually inlined images or fonts, and minifiers produce indirect calls on their own. Nothing in the output shows credentials being read or data being sent somewhere new.

What makes this look like scanner noise is the mix: 754 of the findings are low-severity style rules that fire on any bundled JavaScript, and hundreds more are code fragments misread as addresses. No malware signature, no credential access and no known bad endpoint matched anything here.

Evidence ledger

Ranked by severity · findings with a source location link to the code viewer

779 detail rows

YARA Rule Matches

16 rules
SeverityRuleHitsFilesMetadata
LOWcredential env files 30
content/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d289237.jscontent/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d289260.jscrm/assets/js/b15575b9-e8eb-4d64-83b8-37d47f2b0b0a.BbRllemT.js +27 more
-
LOWpostinstall persistence mechanism 19
content/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d289200.jsfluxo/assets/css/style.csscrm/assets/js/5e35787c-36b2-4a56-8ea4-4e0a75aa6943.D2Np3EBj.js +16 more
-
LOWpostinstall environment access 111
content/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d289260.jsbackground.jscontent/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d289188.js +108 more
-
LOWpostinstall network communication 94
whatsapp/wpp/index.jscontent/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d28935.jsfunnil/assets/js/770d23cd-9021-4aef-887e-d47811b5c322.B8_nURbH.js +91 more
-
LOWOriginsNotVerified 5
fluxo/assets/js/b89d7b82-41f7-4061-9bc0-ae95ae5cd0a2.BLiJgZ4E.jsfunnil/assets/js/770d23cd-9021-4aef-887e-d47811b5c322.B8_nURbH.jsfluxo/index.js +2 more
-
LOWpostinstall crypto operations 44
funnil/assets/js/9cf42769-2ad5-4714-8614-9a2b4c455349.CgnacD38.jscrm/index.jscontent/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d289136.js +41 more
-
LOWpostinstall system command 77
content/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d289257.jsfunnil/assets/js/770d23cd-9021-4aef-887e-d47811b5c322.B8_nURbH.jsfluxo/index.js +74 more
-
LOWpostinstall obfuscation 83
funnil/assets/js/770d23cd-9021-4aef-887e-d47811b5c322.B8_nURbH.jscrm/assets/js/index.B6c6aVcv.jsfluxo/index.js +80 more
-
LOWpostinstall registry modification 8
funnil/assets/js/68038811-0075-484f-8b19-297df42f51e1.CVYXH02z.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-3a9d8748d289175.js +5 more
-
LOWpostinstall file manipulation 172
content/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d289141.jscrm/assets/js/index.DCTZnrKF.jscontent/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d28984.js +169 more
-
LOWpostinstall file download 55
content/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d2895.jsfunnil/index.jscontent/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d289137.js +52 more
-
LOWNoUseEval 1
whatsapp/wpp/index.js
-
LOWNoUseWeakRandom 38
crm/index.jscrm/assets/js/b3c3d2a2-f432-4ecd-a3f4-0b4582cc4a6c.B8_nURbH.jscrm/assets/js/9dad81b5-b157-4788-80f8-467ec81980f7.Da0m4lTf.js +35 more
-
LOWSQLInjection 1
fluxo/index.js
-
LOWServerHostnameNotVerified 1
content/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d289.js
-
LOWLocalStorageShouldNotBeUsed 15
crm/assets/js/5e35787c-36b2-4a56-8ea4-4e0a75aa6943.D2Np3EBj.jscontent/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d289260.jsfunnil/assets/js/68038811-0075-484f-8b19-297df42f51e1.CVYXH02z.js +12 more
-

Publisher Evidence

Limited evidence

[email protected]

Publisher 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.

51
Noisy-finding weight
x1.00
Publisher domain
extensao.store
Observed
Store verification signal
Limited signal
Limited
Extension portfolio
174
Portfolio

11 evidence rows available.

Finding Categories

2
Obfuscation
22
Network
408
IoC Indicators

YARA Rules Matched

16 rules(754 hits)
credential env files postinstall persistence mechanism postinstall environment access postinstall network communication OriginsNotVerified postinstall crypto operations postinstall system command postinstall obfuscation postinstall registry modification postinstall file manipulation postinstall file download NoUseEval NoUseWeakRandom SQLInjection ServerHostnameNotVerified LocalStorageShouldNotBeUsed

Requested Permissions

5 permissions
tabs
Medium
unlimitedStorage
Low
storage
Low
alarms
Low
https://web.whatsapp.com/*
Low

AI Security Report

AI Security Review

Evidence context: threat category none; evidence quality moderate.

WORKZAP is a Chrome CRM client at version 7.4.3.87, published by [email protected] and installed by four users. The manifest snapshot lists no host permissions and no API permissions, while the code itself ships content scripts and a background.js that calls fetch at line 137. What follows is 1,188 findings, and their shape matters far more than their total.

Start with what is missing. No malware signature matched. No malware family matched. No secret was lifted from the bundle. No tool-poisoning indicator fired. In a package this size, that absence is the most useful thing in the set.

The 22 network findings are patterns rather than destinations. NET-FETCH appears in background.js:137 and across a long run of content/assets/js/v_7_4_3_87_0a650f0a-*.js chunks. NET-SOCKET_IO appears in four of the same chunks, and NET-JQUERY_AJAX in two. A CRM that holds a live link to its backend uses sockets and fetch. These hits say the code talks to a server, which is the product's job. Not one of them names an endpoint worth flagging.

The endpoint list is where the extractor comes apart. border.radius.circle, btn.glass, color.border.accent.orange, calls.function.arguments.delta, above.sm and below.sm are not hosts. They are property chains and design-token strings pulled out of minified JavaScript. Of the hostnames that do exist, api.statsigcdn.com serves feature flags, api.dev.atlassian.com and api.stg.atlassian.com are Atlassian's own developer APIs, and app.wascript.com is the vendor's application host. None of these is a collection point.

The 754 code-smell findings are the same problem at scale. Those rules match ordinary JavaScript: eval-adjacent patterns, randomness calls, environment variable reads. Every bundled dependency triggers its own set, and the count multiplies.

That leaves the two obfuscation findings, which are the honest case against calling this clean. OBFUSCATION-LARGE_BASE64 points at funnil/assets/js/9cf42769-2ad5-4714-8614-9a2b4c455349.CgnacD38.js, and OBFUSCATION-FUNCTION_INDIRECT points at content/assets/js/v_7_4_3_87_0a650f0a-57a6-4989-860e-3a9d8748d289260.js. A large base64 string inside an assets/js folder is normally an inlined font, sprite or icon set, and indirect calls are what minifiers emit. Normally is doing real work in that sentence. Decoding the blob in the funnil chunk would settle it; until then it stays an open thread.

A skeptic would point at the publisher. An email at a domain called extensao.store, no company name, four users, and chunk files named with UUIDs and a version string. That is the profile of a throwaway upload. It is also the profile of a small shop shipping a niche CRM, and a file listing cannot separate the two. What the findings can say is narrower and more useful: nothing in this bundle reads credentials, matches a malware signature, or reports to an endpoint that is not a recognised service or the vendor's own host. Suspicion about who published it is not evidence about what it does.

Key Reasons

  • Zero malware-signature, malware, secret and tool-poisoning matches across 1,188 findings
  • All 22 network findings are protocol patterns (NET-FETCH, NET-SOCKET_IO, NET-JQUERY_AJAX) rather than suspicious endpoints
  • The endpoint list is dominated by extractor artifacts such as border.radius.circle, btn.glass and calls.function.arguments.delta
  • Named hosts resolve to legitimate services (api.statsigcdn.com, api.dev.atlassian.com) or the vendor's own app.wascript.com
  • 754 of 1,188 findings are low-severity code-smell rules that fire on any bundled JavaScript

False Positive Considerations

  • 754 low-severity code-smell findings from bundled/minified JavaScript
  • 409 IoC entries including property chains and CSS design tokens misparsed as domains
  • Network findings are protocol detections (fetch, socket.io, XHR), not endpoint detections
  • High finding count in hashed bundle chunks creates multiplicative per-file matches

Reviewed 2026-10-10; recommended action: monitor; model confidence 70%.

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.

Selected
65
Change since first
+4
Change from previous
No change
Versions:
First analyzed version
7.4.3.54
Jun 19, 2026
Risk range
60 to 73
Across analyzed versions
Latest analyzed version
7.4.3.87
Oct 8, 2026
Selected version
medium
Version
v7.4.3.87
1 weeks ago
Risk score
65
Findings
1189
Change vs previous
No change

Pick any point on the chart to explore that version's code below.

About This Extension

Características do WORKZAP: ✔ Envio em massa para contatos ou importados via CSV – Envie mensagens para múltiplos contatos de maneira rápida e prática, sem complicação. ✔ Criação de Abas Personalizadas – Organize seus contatos de forma eficiente e encontre facilmente os mais importantes. ✔ Visão Kanban dos Contatos – Tenha uma visão clara e organizada dos seus contatos com a opção de arrastar e soltar. ✔ Envio de Mensagens para Números Não Salvos – Envie mensagens para qualquer número, mesmo que não esteja na sua agenda, sem precisar adicionar à lista de contatos. ✔ Criação de Notas Personalizadas – Anote informações importantes para cada contato diretamente no perfil deles. ✔ Lembretes para Contatos – Nunca se esqueça de retornar uma ligação ou seguir com um compromisso. Crie lembretes específicos para cada contato. ✔ Agendamento de Reuniões no Google Agenda – Agende compromissos diretamente no seu Google Agenda com facilidade, sem precisar sair da plataforma. ✔ Lembretes Simples e Notificações – Crie lembretes rápidos e receba notificações diretamente no seu dispositivo. ✔ Banco de Respostas Rápidas – Tenha respostas pré-configuradas e envie com um clique para otimizar seu tempo. ✔ Exportação de Contatos do Wpp – Exporte seus contatos diretamente do Wpp ou de grupos de Wpp para facilitar a organização. ✔ Suporte Multilíngue – Use a plataforma em seu idioma nativo: português, espanhol ou inglês, garantindo facilidade de uso. ✔ Assistente AI — Sua inteligência artificial pronta para ajudar! Otimize seu tempo com um assistente inteligente, rápido e sempre disponível. Responda dúvidas, automatize tarefas, gere textos, traduções e muito mais com o poder da IA. Ideal para profissionais, equipes e quem busca praticidade no dia a dia. WORKZAP é uma ferramenta independente, sem qualquer vínculo com o WhatsApp ou a empresa responsável. Funciona exclusivamente através da Chrome Web Store e opera de maneira autônoma. Não somos uma ferramenta oficial do WhatsApp, mas oferecemos funcionalidades inovadoras para quem precisa de mais praticidade na gestão de contatos e mensagens.

Frequently Asked Questions