Skimmer en el head.tpl de PrestaShop: cómo comprobar tu tienda
El aviso de seguridad de PrestaShop de febrero de 2026: un script que cambia los botones de pago del checkout. No hay parche: hay que mirar la tienda. Cómo encontrarlo con un grep y qué hacer después.
En febrero de 2026, PrestaShop mandó a los dueños de tiendas un aviso con el asunto «Security Alert – Recommended Check of Your Stores». Media comunidad lo recibió esa misma mañana y la primera pregunta fue la de siempre: ¿hay parche? No lo hay, porque no es un fallo que se arregle actualizando. Hay que mirar la tienda.
Qué hace
Es un skimmer, un script que sustituye los botones de pago del checkout por otros falsos. El cliente que pulsa uno de ellos acaba en un formulario de pago falso que le roba los datos de la tarjeta.
El script va metido en una etiqueta <script> dentro de templates/_partials/head.tpl del tema activo. Eso significa que el atacante ya podía escribir ficheros en la tienda: el skimmer es el síntoma, no la entrada.
Su forma es siempre parecida: crea un XMLHttpRequest, descarga un código desde una dirección escondida con atob('…') y lo ejecuta con Function(…). La cadena en base64 cambia en cada tienda, y a veces lleva código delante o detrás para despistar.
Cómo comprobarlo
Por SSH, desde la raíz de la tienda:
grep -rn "atob(" themes/*/templates/_partials/head.tpl
grep -rln "atob(" themes/ modules/ --include=*.tpl --include=*.js | head -50
Sin SSH, abre por FTP o desde el administrador de archivos del hosting el head.tpl del tema que tengas activo (y el del tema padre, si usas un tema hijo). Busca cualquier <script> que no reconozcas, sobre todo si lleva atob.
atob también lo usan scripts legítimos, así que un resultado no significa por sí solo que estés infectado. Lo que delata al skimmer es la combinación de atob + XMLHttpRequest + Function( en un head.tpl.
Si lo encuentras
- Quítalo, pero no te quedes ahí: hay que encontrar por dónde entró. Revisa módulos sin actualizar, contraseñas de FTP, SSH y panel, empleados y claves de API.
- Cambia todas las contraseñas de acceso y regenera las claves.
- Revisa otros ficheros modificados en las mismas fechas: rara vez dejan solo uno.
- Si ha habido robo de datos de pago, avisa a tu pasarela. Una brecha de datos personales se notifica a la AEPD en un plazo de 72 horas (art. 33 del RGPD).
Más detalle en el aviso oficial de PrestaShop.
¿Prefieres que lo revisemos nosotros? En Rekire hacemos análisis de seguridad y limpieza de tiendas PrestaShop. → Contacto
Esto salió en @PrestashopEsp, la mayor comunidad PrestaShop de España en Telegram. Ver la conversación