Si gestionas una tienda Magento 2 y has recibido alertas de fraude en tarjetas, un informe PCI o clientes con cargos no reconocidos, es posible que tu checkout esté infectado con un script Magecart: malware que roba datos de tarjeta en el momento del pago.
Esta guía explica cómo detectar el robo de tarjetas en Magento 2, dónde se oculta el código y qué pasos seguir para recuperar la confianza de tus clientes y cumplir con tus obligaciones de seguridad.
¿Qué es Magecart y por qué afecta tanto a Magento?
Magecart es el nombre genérico de grupos y campañas que inyectan JavaScript en páginas de pago para capturar:
- Número de tarjeta (PAN)
- Fecha de caducidad
- CVV/CVC
- A veces nombre y dirección
Magento —especialmente versiones sin parchear o con extensiones de terceros— ha sido uno de los CMS e-commerce más atacados porque:
- El checkout concentra datos sensibles en pocas plantillas.
- Las extensiones de pago amplián la superficie de ataque.
- Muchas tiendas en Magento 2.3/2.4 antiguas no aplican parches de seguridad a tiempo.
Síntomas de Magento 2 comprometido (robo de tarjetas)
- Tu banco adquirente o Stripe/PayPal reporta fraude elevado en transacciones de tu tienda.
- Escaneo PCI ASV detecta scripts de terceros en
/checkouto/multishipping/checkout. - Archivos JS modificados en
pub/static/,app/design/o dentro de módulosVendor_Module. - Peticiones de red del navegador hacia dominios desconocidos al rellenar el formulario de pago.
- Clientes reportan uso fraudulento de tarjetas tras comprar en fechas concretas (te ayuda a acotar el backup limpio).
Dónde buscar skimmers en Magento 2
Plantillas y layout del checkout
app/design/frontend/[Vendor]/[theme]/Magento_Checkout/vendor/magento/module-checkout/view/frontend/(si fue modificado; no debería)app/code/*/view/frontend/web/js/en módulos de pago personalizados
Archivos estáticos comprometidos
Tras setup:static-content:deploy, muchos ataques persisten en pub/static/frontend/. Compara hashes con una instalación limpia de la misma versión. Un checkout-data.js o payment-method.js alterado es un hallazgo típico.
Módulos de terceros
Extensiones de one-step checkout, gift wrap, analytics «gratis» o parches nulled son vectores frecuentes. Revisa app/code/ y módulos en vendor/ que no correspondan a paquetes Composer oficiales.
Base de datos: CMS blocks y config
Bloques CMS insertados en checkout.footer o configuraciones en core_config_data con HTML/JavaScript malicioso (design/head/includes, scripts globales).
Admin comprometido
Usuarios admin nuevos en System → Permissions → All Users, API integrations no autorizadas, o scheduled jobs en cron_schedule ejecutando código externo.
Cómo verificar el checkout como lo ve el cliente
- Abre Chrome en incógnito → checkout hasta el paso de pago.
- DevTools → pestaña Red → filtra XHR/Fetch al introducir datos (usa tarjeta de prueba del TPV).
- DevTools → Fuentes → busca scripts externos cargados en la página.
- Compara el HTML servido con una instancia staging limpia de la misma versión.
Herramientas como Sucuri SiteCheck o escaneos PCI ayudan, pero la inspección manual del checkout sigue siendo la prueba definitiva.
Qué hacer si confirmas Magecart en Magento 2
- Notifica a tu procesador de pagos y responsable PCI; pueden exigir cierre temporal.
- Modo mantenimiento (
bin/magento maintenance:enable) hasta tener código limpio. - Preserva evidencias para forense y posibles reclamaciones.
- Restaura desde backup verificado anterior al compromiso o reinstala Magento limpio + migración controlada de datos.
- Parchea a la última versión segura soportada (Adobe publica parches frecuentes — APSB).
- Rota contraseñas admin, claves API, tokens OAuth, claves de despliegement.
- Auditoría completa: no basta con borrar un .js; busca backdoors PHP en
pub/media/,var/,generated/.
Prevención: hardening Magento 2
- Aplicar Adobe Security Patches en cuanto se publican.
- CSP y Subresource Integrity donde sea posible.
- Desactivar ejecución PHP en
pub/mediaypub/static. - 2FA obligatorio para administradores.
- Monitorizar integridad (Tripwire, Aide, plugins de seguridad Magento).
- Extensiones solo de vendors de confianza vía Composer.
Mantenimiento de tiendas Magento 2
En Sysprovider ofrecemos mantenimiento profesional para tiendas Magento 2: aplicación de parches de seguridad Adobe, copias de backup, monitorización y soporte en español. Si detectas posible robo de tarjetas, ofrecemos revisión urgente post-compromiso y hardening del checkout. También puedes combinarlo con nuestro hosting Magento gestionado.
Conclusión
Un Magento 2 hackeado para robar tarjetas puede operar meses sin síntomas visibles. Ante cualquier alerta de fraude, trata el checkout como escena del crimen: inspecciona JS, compara estáticos, restaura limpio y parchea. El mantenimiento continuo no es un lujo en e-commerce — es requisito para seguir cobrando con PCI y con la confianza de tus clientes.



