Magecart est le logiciel malveillant à l'origine des violations de données de British Airways et de Ticketmaster il y a quelques années et, malheureusement, il est toujours bien vivant. En fait, la dernière victime semble être OXO, une marque d'articles ménagers.
Magecart injecte du Javascript malveillant sur des sites web hébergés par des serveurs compromis. Ce langage Javascript s'exécute dans les navigateurs web des clients chaque fois qu'ils visitent le site web et récupère les numéros de cartes de crédit des consommateurs, les envoyant au serveur de l'attaquant. Les pirates mettent continuellement à jour les noms de domaine qu'ils utilisent pour héberger ces scripts afin d'éviter d'être détectés.
Heureusement, les chercheurs continuent de traquer Magecart et il est facile de détecter la compromission en recherchant des liens vers ce code malveillant. Nous avons vu un tweet l'autre jour qui nous a incités à effectuer une recherche rapide :
Arrêter Magecart
Au-delà des fonctions de sécurité des sites web, telles que la séparation des droits et des autorisations et les pratiques et mises à jour de sécurité des applications, le navigateur peut être utilisé pour défendre les données de l'utilisateur final. La fonction d'intégrité des sous-ressources (SRI) vous permet de prendre l'empreinte cryptographique des scripts auxquels vous êtes lié et de forcer le code chargé à correspondre avant qu'il ne s'exécute. Bien que cela n'empêche pas la modification d'un site web, cela empêcherait le code de s'exécuter sur le client, ce qui bloquerait efficacement Magecart et d'autres logiciels malveillants similaires.
Un deuxième mécanisme de défense du navigateur dont il faut tirer parti est la fonction de politique de sécurité du contenu(CSP) des navigateurs modernes, qui permet au propriétaire du site web de contrôler le code côté client qui a le droit de s'exécuter lorsqu'il est chargé à partir du site web. La CSP comporte un certain nombre de contrôles qui contribueront à garantir l'intégrité des scripts présentés par le site web au client.