Cómo WhatsApp detecta extensiones de difusión: mitos y hechos
AndySendy academy
← Todas las entradas

🔍 Cómo WhatsApp detecta realmente extensiones de difusión

Extensión gratis de Chrome Web Store, 12 mensajes - baneo permanente. El dueño creía que era la velocidad. En realidad lo delató un rastro técnico ajeno a la velocidad. La mayoría de artículos mezclan mecanismos reales del navegador con suposiciones de foros como posición oficial de Meta.

WhatsApp actualiza la protección del cliente web más rápido que los foros actualizan manuales. Tras leer sabrás qué explicaciones populares están confirmadas y cuáles descartar.


Qué ve WhatsApp y qué no

WhatsApp Web es una página web normal. Una extensión que lee chats, inserta texto o pulsa Enviar debe ejecutar JavaScript y cambiar el DOM - transporte gris como Puppeteer/Selenium, en forma de plugin.

Lista completa de extensiones instaladas: la página no la ve - el navegador aísla. Pero todo lo que la extensión hace dentro de la pestaña - tags extra, clics interceptados, texto insertado - es observable en la misma ejecución que WhatsApp Web.

WhatsApp no «escanea tu navegador» - como mucho ve consecuencias dentro de su propia página.


Mito principal: Code Verify

Antes: WhatsApp verifica hash del código vía Code Verify y detecta extensiones.

Después: Code Verify es extensión que el usuario instala voluntariamente para comprobar que no le sustituyeron el código de WhatsApp Web (MITM, red). Hash local contra referencia Meta vía Cloudflare.

Meta indica que no envía datos a WhatsApp/Meta - no saben si lo tienes instalado. No puede ser herramienta de detección de difusión - verificación para el usuario, no vigilancia.

«Desactiva Code Verify para difundir» - sin sentido.


DOM y MutationObserver

Confirmado: extensiones añaden UI o insertan en markup del chat.

No confirmado: WhatsApp Web usa MutationObserver para buscar extensiones y banea por nodo DOM ajeno. Teoría de foros.

Teoría más audaz: ocultar panel con display: none → logout instantáneo - hipótesis BlackHatWorld, no hecho documentado.

Más reestructuración = más huellas técnicas.


isTrusted: señal que no se falsifica desde la página

Extensión con click() o inserción DOM → Event.isTrusted = false - especificación del navegador, content script no puede cambiarlo. Parte del antispam conductual.

Señal Humano Extensión básica
isTrusted true false
Movimiento cursor a menudo no
Retardo entre teclas 80–300+ ms a menudo 0 ms
Foco antes de escribir natural puede faltar

Cuentas con volumen y isTrusted = false → baneo ~5–15 min tras inicio (observación práctica, no cifra Meta).

Mercado de «emulación humana»: 50–150 ms por carácter, pausas 15–45 s - baja un riesgo; isTrusted sigue false en content script normal.


Resource Timing y Extension ID

Fingerprinting vía web_accessible_resources existe técnicamente. «WhatsApp Web escanea IDs de extensiones de difusión» - sin confirmación.

Desarrolladores grises ofuscan rutas y cambian Extension ID - señal de batalla real.


Dos casos

Fallo. Extensión gratis, base fría 200 números - 12 mensajes, baneo permanente. DOM + click() programático, isTrusted = false.

Emulación compleja. Antidetect + Puppeteer stealth/CDP + cursor Bézier - base calentada, 80–100 msg/día. No garantía; carrera costosa que caduca.

«Invisible para WhatsApp» - sin auditoría independiente; isTrusted dice lo contrario.


Señal sin relación con código

Umbral de denuncias y rating de calidad - documentado mejor que DOM. Base fría con denuncias masivas → baneo aunque isTrusted limpio.


Confirmado vs suposiciones

Mecanismo Estado
Code Verify Confirmado, al revés - para usuario
isTrusted Confirmado por spec
Rating por denuncias Confirmado política WABA
MutationObserver No confirmado
Resource Timing No confirmado uso WA
Logout por CSS No confirmado
Ban solo por isTrusted No confirmado causa única

Multi-cuenta: distribución, granjas.


🎯 Siguiente paso

Revisa tu extensión: inserción directa, click() sin emulación, reestructuración UI. Volumen crecido → WABA oficial.

Conclusión

Regla práctica:

La extensión no engaña a WhatsApp - aún no la han pillado. Construye el proceso como si fuera mañana.