Magecart en Magento: cómo un skimmer roba tarjetas sin que lo notes
Magecart y el skimmer de tarjeta en Magento: cómo se inyecta el código, por qué es invisible para el cliente y el comerciante, y cómo detectarlo a tiempo.

Un ataque de Magecart en Magento no tira la tienda ni ralentiza el checkout. Al contrario: su éxito depende de que todo siga funcionando con normalidad mientras un skimmer copia, en segundo plano, cada número de tarjeta que el cliente teclea. Este análisis forma parte de nuestro radar sobre seguridad de e-commerce y multi-CMS, y explica por qué el robo de tarjeta por skimmer es tan difícil de notar y cómo detectarlo antes de que se convierta en una brecha con datos de tarjeta comprometidos.
Qué es Magecart y cómo funciona el skimmer de tarjeta en Magento
Magecart no es un grupo único, sino un conjunto de actores que comparten una técnica: el formjacking. La idea es inyectar JavaScript malicioso en la página de pago para interceptar los datos del formulario en el momento en que se introducen, antes de que se cifren y viajen a la pasarela. El cliente ve el formulario legítimo, la transacción se completa con éxito, y una copia de los datos sale hacia un servidor controlado por el atacante.
El flujo típico tiene cuatro fases:
- Entrada: explotación de una vulnerabilidad de Magento o de una extensión sin parchear, credenciales de administrador robadas, o compromiso de un componente de terceros que la tienda carga (un chat, una analítica, un CDN).
- Inyección: se añade el skimmer a una plantilla, a un bloque de contenido de la base de datos, o a un archivo JavaScript legítimo, para camuflarlo.
- Captura: un listener escucha el evento de envío del formulario o registra las pulsaciones en los campos de tarjeta.
- Exfiltración: los datos salen codificados hacia un dominio de apariencia inocua, a veces imitando el nombre de un servicio real.
Por qué es invisible
El skimmer está diseñado para no llamar la atención. Suele ejecutarse solo en la página de checkout, ignorar sesiones que parezcan de administrador, y ofuscar tanto el código como el destino de exfiltración. Para el comerciante, la tienda vende con normalidad; para el cliente, el pago se procesa sin fricción. La primera señal externa suele llegar semanas después, cuando el banco o la marca de tarjeta detecta un patrón de fraude con un «punto común de compra» que apunta a tu dominio.
Ataques a la cadena de suministro
La variante más insidiosa no toca tu servidor. Si tu tienda carga un script desde un tercero comprometido, el skimmer se sirve desde fuera y tu Magento nunca contiene código malicioso. Por eso una auditoría que solo mire los archivos locales puede dar un falso negativo: el problema está en lo que el navegador del cliente ejecuta, no en lo que hay en tu disco.
Cómo detectar y prevenir un skimmer
La detección eficaz combina vigilancia del lado servidor y del lado cliente:
- Integridad de archivos y base de datos: monitoriza cambios en plantillas, en bloques CMS y en los archivos JavaScript. Un skimmer insertado en un bloque de la base de datos no aparece si solo vigilas el sistema de ficheros.
- Inventario de scripts de terceros: cataloga cada dominio externo que carga tu checkout y vigila las conexiones salientes nuevas.
- Content Security Policy y Subresource Integrity: una CSP estricta limita a qué dominios puede conectar la página de pago; la SRI bloquea un script de terceros que cambie sin autorización.
- Actualización agresiva: parchea Magento y sus extensiones con prioridad. El robo de tarjeta por skimmer casi siempre empieza en un fallo conocido y sin corregir.
El mismo principio de «un componente sin parchear como puerta de entrada» reaparece en otras plataformas. Si estás valorando arquitectura, nuestra comparativa entre Shopify y tienda autoalojada analiza cómo cambia la superficie de ataque según quién administra el servidor; y las vulnerabilidades de ejecución remota tipo Drupalgeddon muestran hasta dónde llega un atacante cuando esa puerta se deja abierta.
Para el marco de cumplimiento, el PCI Security Standards Council es la referencia obligada: sus requisitos sobre scripts de pago y monitorización de cambios existen precisamente por Magecart. Como contraste entre plataformas, revisa la documentación de seguridad de PrestaShop y, si operas también otros CMS, el Joomla! Security Centre.
Un skimmer convierte una tienda que funciona en una brecha con datos de tarjeta. En PathSentinel atendemos entornos exigentes —banca y comercio con datos de tarjeta— donde la exfiltración silenciosa es el peor escenario posible. Si quieres una revisión del checkout con criterio forense, escríbenos desde contacto.
Comprueba si tu tienda carga scripts inesperados o conexiones salientes propias de un skimmer, sin instalar nada en tu servidor.
Cada semana, las vulnerabilidades de plugins de WordPress que de verdad importan y un caso real de investigación, en español. Sin ruido, sin spam.