Avaluació inicial sense contrasenyes Pressupost abans d’intervenir Un especialista responsable de principi a fi

Visible Symptoms Initial Triage

Apareix JavaScript desconegut a totes les pàgines de WordPress

Rastreja JavaScript global desconegut mitjançant hooks del tema, connectors, opcions de base, memòria cau, Tag Manager i hosting.

Un script desconegut apareix a la portada, articles, formularis i checkout. Com que és global, probablement prové d’una plantilla compartida, hook, connector, opció de base, memòria cau o sistema extern d’etiquetes.

Desconegut no significa necessàriament maliciós: Analytics, consentiment i accessibilitat també carreguen globalment. Determina propietat i comportament abans de retirar-lo.

Conserva el marcatge públic exacte

Desa l’HTML desconnectat d’una pàgina afectada, amb hora i capçaleres. Registra URL, contingut inline, atributs i posició de l’script.

Compara dues plantilles i la vista connectada. Si desapareix per als administradors, augmenta la sospita. No obris directament la URL ni enganxis el codi en descodificadors en línia.

Anota el hash del contingut servit i si canvia entre visites. Una URL estable pot lliurar payloads diferents per país, hora o referrer. Conserva només mostres controlades i metadades necessàries, sense enviar formularis reals ni obrir destinacions descarregables.

Rastreja l’iniciador

Si l’etiqueta és a l’HTML inicial, cerca una URL o cadena distintiva al codi i la base. Si es crea després, utilitza la cadena d’iniciadors de la xarxa per localitzar l’script pare.

Comprova si l’insereix un service worker o extensió del navegador repetint en un perfil net. Verifica els dominis contra integracions documentades, no només pel nom.

Inspecciona punts d’inserció global

Revisa header.php, footer.php, functions.php, tema fill, mu-plugins i connectors de snippets. Cerca callbacks a wp_head i wp_footer.

Consulta connectors que afegeixen scripts, analítica o anuncis i els seus canvis recents.

No editis un tema pare o connector per esborrar una línia. Preserva evidència i corregeix la capa d’origen perquè una actualització no la restauri o amagui.

Cerca marcatge controlat per la base

Els scripts poden residir en ginys, blocs reutilitzables, modificacions del tema, plantilles de constructor o wp_options. Utilitza cerques de només lectura que respectin dades serialitzades.

Cerca el hostname exacte o un fragment distintiu, no el terme genèric script.

Abans de canviar una opció, exporta-la i identifica’n el propietari. Esborrar un array complet pot trencar molt més que el camp injectat.

Revisa Tag Manager i CDN

Un contenidor pot afegir JavaScript sense canviar WordPress. Revisa versions publicades, HTML personalitzat, usuaris i disparadors de consentiment.

Algunes CDN afegeixen aplicacions o optimitzen scripts. Confirma apps, Workers i regles de transformació.

Si s’ha compromès un compte extern, torna a una versió coneguda, revoca sessions i reforça l’accés. Netejar WordPress no evita la reinjecció.

Determina què fa l’script

Analitza’l en aïllament. Registra dominis contactats, emmagatzematge creat, canvis DOM, redireccions i accés a formularis o checkout.

Si llegeix camps de pagament, descarrega executables, crea iframes ocults o redirigeix, contén immediatament. Una analítica legítima però antiga es pot retirar de forma planificada.

No enviïs dades reals de checkout mentre les pugui observar.

Relaciona cada comportament amb una finalitat aprovada. Una integració legítima ha de tenir propietari, documentació, domini esperat, dades que rep i mecanisme per retirar-la. Si ningú la pot assumir, mantén tancat el recorregut sensible mentre s’investiga.

Una política CSP en mode informe pot aportar evidència de dominis i bloqueigs, però no substitueix localitzar la inserció. No publiquis una llista permissiva àmplia per fer desaparèixer errors de consola.

Neteja i verifica globalment

Preserva evidència, elimina el codi maliciós a l’origen, tanca la via i rota credencials. Purga memòries cau després de netejar.

Prova plantilles, idiomes i WooCommerce des de perfils nous. Cerca el hostname antic a l’HTML i la xarxa i monitoritza recurrència.

Revisa també plantilles de correu si el mateix peu o integració s’hi pot inserir.

Després de netejar, captura una referència de scripts per plantilla i alerta davant de hostnames nous o canvis de hash en recursos propis. Els tercers poden canviar legítimament, per tant la revisió ha de combinar comportament, propietari i historial de publicació.

Quan demanar ajuda

Demana una avaluació quan no es coneix el propietari, l’script només apareix a visitants o toca checkout. Envia URL pública i hostname com a text, sense credencials ni payload executable.

La reparació ha d’establir l’autoria, eliminar tots els punts d’inserció, protegir recorreguts sensibles i demostrar que el codi ha desaparegut de cada plantilla compartida.

ABANS D’ENVIAR LA SOL·LICITUD

Preguntes freqüents.

Demaneu contrasenyes al formulari?+

No. El formulari públic no demana mai accessos. Les dades segures es demanen només després d’aprovar l’abast i el pressupost.

Qui revisa la incidència?+

La sol·licitud arriba a Jordi Ensenyat, fundador de Code Barcelona i especialista en WordPress amb més de 15 anys d’experiència.

Es canvia res abans del pressupost?+

No. Primer es revisen els símptomes visibles i es defineix l’abast. La intervenció comença després de l’aprovació i amb una via de recuperació preparada.

Treballeu amb webs en anglès i fora d’Espanya?+

Sí. WP Repair atén incidències de WordPress i WooCommerce en català, castellà i anglès mitjançant un servei remot.

Avaluar la meva incidència