
Un package PyPI malveillant récemment découvert nommé « disgrasya » qui abuse des magasins WooCommerce légitimes pour valider les cartes de crédit volées a été téléchargé plus de 34 000 fois à partir de la plate-forme de packages open source.
Le script ciblait spécifiquement les magasins WooCommerce utilisant la passerelle de paiement CyberSource pour valider les cartes, ce qui est une étape clé pour les acteurs du cardage qui doivent évaluer des milliers de cartes volées à partir de décharges sur le Dark Web et de bases de données divulguées pour déterminer leur valeur et leur exploitation potentielle.
Bien que le package ait été supprimé de PyPI, son nombre élevé de téléchargements montre le volume d’abus pour ces types d’opérations malveillantes.
« Contrairement aux attaques typiques de la chaîne d’approvisionnement qui reposent sur la tromperie ou le typosquattage, disgrasya n’a fait aucune tentative pour paraître légitime », explique un rapport des chercheurs de Socket.
« C’était ouvertement malveillant, abusant de PyPI comme canal de distribution pour atteindre un public plus large de fraudeurs. »
L’abus effronté de PyPI pour héberger un package dont les créateurs ont clairement indiqué dans la description qu’il était utilisé pour une activité malveillante est particulièrement intéressant.
« Un utilitaire pour vérifier les cartes de crédit via plusieurs passerelles en utilisant le multi-threading et les proxys », lit-on dans la description du package disgrasya.
Socket note que la fonctionnalité malveillante sur le package a été introduite dans la version 7.36.9, probablement une tentative d’échapper à la détection par des contrôles de sécurité qui pourraient être plus stricts pour les soumissions initiales par rapport aux mises à jour ultérieures.
Émuler les acheteurs pour valider les cartes
Le package malveillant contient un script Python qui visite les sites WooCommerce légitimes, collecte les identifiants de produit, puis ajoute des articles au panier en invoquant le backend du magasin.
Ensuite, il accède à la page de paiement du site d’où il vole le jeton CSRF et un contexte de capture, qui est un extrait de code des utilisateurs de CyberSource pour traiter les données de la carte en toute sécurité.
Socket indique que ces deux éléments sont normalement masqués sur la page et expirent rapidement, mais le script les saisit instantanément tout en remplissant le formulaire de paiement avec des informations client inventées.
À l’étape suivante, au lieu d’envoyer la carte volée directement à la passerelle de paiement, elle l’envoie à un serveur contrôlé par l’attaquant (railgunmisaka.com), qui prétend être CyberSource et rend un faux jeton pour la carte.

Enfin, la commande avec la carte à jetons est soumise sur la boutique en ligne, et si elle passe, elle vérifie que la carte est valide. S’il échoue, il enregistre l’erreur et essaie la carte suivante.

En utilisant un outil comme celui-ci, les acteurs de la menace sont en mesure d’effectuer la validation d’un grand volume de cartes de crédit volées de manière automatisée.
Ces cartes vérifiées peuvent ensuite être utilisées abusivement pour commettre des fraudes financières ou vendues sur des places de marché de la cybercriminalité.
Comment bloquer les attaques de cardage
Socket commente que ce processus d’émulation de caisse de bout en bout est particulièrement difficile à détecter pour les systèmes de détection des fraudes sur les sites Web ciblés.
« L’ensemble de ce flux de travail—de la collecte des identifiants de produit et des jetons de paiement à l’envoi des données de carte volées à un tiers malveillant, en passant par la simulation d’un flux de paiement complet—est hautement ciblé et méthodique », explique Socket.
« Il est conçu pour se fondre dans les modèles de trafic normaux, ce qui rend la détection incroyablement difficile pour les systèmes traditionnels de détection des fraudes. »
Pourtant, Socket dit qu’il existe des méthodes pour atténuer le problème, comme le blocage des commandes de très faible valeur inférieures à 5$, qui sont généralement utilisées dans les attaques de cardage, la surveillance de plusieurs petites commandes qui ont des taux d’échec inhabituellement élevés, ou des volumes de paiement élevés liés à une seule adresse IP ou région.
Socket suggère également d’ajouter des étapes CAPTCHA sur le flux de paiement qui peuvent interrompre le fonctionnement des scripts de cardage, ainsi que d’appliquer une limitation de débit sur les points de terminaison de paiement et de paiement.