En résumé : Magecart désigne des groupes de pirates qui injectent du JavaScript malveillant dans les boutiques en ligne pour voler les numéros de carte saisis lors du paiement. Pas besoin de pirater le prestataire de paiement : ils piratent votre boutique et interceptent les données avant qu'elles ne soient chiffrées. L'infection est souvent silencieuse pendant des semaines.
Comment fonctionne une attaque Magecart
Le principe est d'une simplicité redoutable :
- Le pirate obtient un accès à votre serveur ou à vos fichiers (module obsolète, compte FTP faible, plugin tiers compromis, thème modifié).
- Il injecte un petit script JavaScript dans une page que vos clients visitent — souvent la page de paiement ou le fichier JavaScript principal de votre thème.
- Le script intercepte silencieusement les données saisies (numéro de carte, date d'expiration, cryptogramme) et les envoie à un serveur contrôlé par le pirate.
- Le code est conçu pour ne rien casser : la boutique continue de fonctionner normalement, le paiement passe, personne ne remarque rien.
Les groupes Magecart (dont certains opèrent depuis des années) automatisent cette attaque à grande échelle : ils scannent en continu le web à la recherche de boutiques vulnérables, comme les botnets que nous décrivions dans notre étude sur 60 boutiques.
Pourquoi votre boutique PrestaShop est une cible
- Modules obsolètes : la première porte d'entrée. Un module tiers non mis à jour depuis un an est une faille documentée, scannée en continu par les attaquants.
- Serveurs FTP/SFTP faibles : mots de passe courts ou réutilisés, comptes partagés.
- Fichiers de thème modifiables : un thème non protégé en écriture permet d'injecter le skimmer dans les fichiers JavaScript.
- Backdoors résiduelles : une boutique déjà piratée par le passé et « nettoyée » sans identifier la faille d'origine est réinfectée en quelques jours.
Comment détecter une infection
Les signes d'un skimmer sont rarement visibles à l'œil nu, mais quelques vérifications ciblées suffisent souvent :
- Fichiers JavaScript modifiés récemment : un fichier
theme.js ou global.js modifié il y a 3 jours alors que personne n'a touché au site.
- Code obfusqué : une ligne de code illisible (fonctions encodées en base64,
eval(), atob(), fromCharCode) dans un fichier JS qui n'en contenait pas.
- Requêtes sortantes inconnues : le code de la page appelle un domaine qui n'est ni le vôtre, ni celui d'un prestataire connu (analytics, paiement, CDN).
- Nouveaux fichiers suspects : fichiers PHP ou JS aux noms aléatoires (
cache/xx.php, sitemap-2.js...).
C'est exactement ce que le scan malware de PrestaShield cherche automatiquement : patterns d'infection connus (eval+decode, obfuscation, exécution dynamique), fichiers récents dans les dossiers critiques, et .htaccess modifiés. Un scan complet prend quelques minutes et se lance depuis votre back-office, avec alerte email si quelque chose change entre deux scans.
Les 5 réflexes de prévention
- Mettez tout à jour : PrestaShop, modules, thème, PHP. Un site à jour ferme la majorité des portes d'entrée (voir notre checklist complète).
- Restreignez les accès : un compte FTP par personne, mots de passe uniques, double authentification partout.
- Protégez les fichiers en écriture : les fichiers du thème et les répertoires critiques en lecture seule côté serveur.
- Surveillez l'intégrité : un outil qui détecte les fichiers modifiés (comme le scan de PrestaShield) transforme une infection silencieuse en alerte immédiate.
- Scannez régulièrement : un scan hebdomadaire suffit à détecter la quasi-totalité des skimmers avant qu'ils ne fassent des dégâts.
Si vous pensez que votre boutique est infectée, ne nettoyez pas sans avoir identifié la faille d'origine — notre article « Ma boutique a été piratée » détaille l'ordre exact des opérations, et vous pouvez nous contacter pour une intervention.
Vérifiez votre boutique maintenant
Audit passif, sans modification de votre site. Note /100 en 30 secondes.
Sources : analyses publiques des groupes Magecart (RiskIQ/Microsoft), rapports d'incidents PrestaShop, recommandations OWASP sur le JavaScript d'intégrité (SRI).