Skip to main content
Blog
Blog

L'attaque de la chaîne d'approvisionnement BrowseAloud : Une étude de cas sur le cryptojacking

Cette attaque a touché plus de 4 000 sites web, y compris des sites gouvernementaux et éducatifs, exposant des milliers d'utilisateurs au cryptojacking à leur insu.

Jun 10, 2024 7 min read
L'attaque de cryptojacking BrowseAloud, CoinHive injecté via un plugin de confiance

En bref : le plugin d'accessibilité BrowseAloud, CoinHive et le cryptojacking

  • Des plugins devenus mineurs : Des plugins d'accessibilité transformés en mineurs. L'attaque BrowseAloud a démontré qu'un script tiers utile dispose des mêmes privilèges d'exécution que votre propre code, et l'ICO elle-même minait du Monero sur ses visiteurs.
  • 4 000 sites minés : Un seul fichier BrowseAloud compromis a entraîné plus de 4 000 sites, dont des pages gouvernementales britanniques et américaines, dans un minage de Monero non consenti avant que Texthelp ne le retire. cside peut bloquer l'exécution d'un script tiers en se basant sur le comportement observé, et non uniquement sur sa source.
  • SRI ne suffit pas : Si vous comptez sur Subresource Integrity pour un fournisseur de widget, sachez que SRI n'aide que pour les ressources statiques. Si votre plugin sert du code dynamique, ajoutez une surveillance à l'exécution avant que sa prochaine mise à jour ne transforme un outil de synthèse vocale en mineur.

Peu de temps ? Découvrez le blocage de Magecart et de skimmers dans le navigateur par cside. Elle couvre tout ce qui suit en un seul déploiement.

En février 2018, plus de 4 000 sites web, y compris des organismes gouvernementaux de premier plan comme le Bureau du Commissaire à l'information (ICO) du Royaume-Uni, ont été victimes de l'attaque BrowseAloud. Elle a montré comment un seul script tiers compromis peut toucher des milliers de sites d'un seul coup.

Que s'est-il passé lors de l'attaque BrowseAloud ?

Un service tiers apparemment inoffensif appelé BrowseAloud, qui aide les sites web à améliorer l'accessibilité en convertissant le texte en parole, a été compromis. Des acteurs malveillants ont injecté le script de minage de cryptomonnaie CoinHive dans le code de BrowseAloud. Ce script a ensuite été exécuté involontairement par les navigateurs de milliers de visiteurs sur divers sites web, utilisant leurs appareils pour miner de la cryptomonnaie sans consentement.

Le minage de cryptomonnaie consiste à résoudre des problèmes mathématiques complexes pour valider des transactions sur la blockchain, une tâche qui nécessite traditionnellement des ressources informatiques substantielles. Cependant, avec l'apparition de scripts comme CoinHive, ce processus a été introduit dans les navigateurs d'utilisateurs sans méfiance. Voici comment cela fonctionne :

  1. Exécution JavaScript : CoinHive et les scripts similaires sont écrits en JavaScript, qui peut être exécuté dans n'importe quel navigateur web standard. Cela rend leur déploiement à grande échelle incroyablement facile. C'est probablement l'aspect le plus important des attaques de la chaîne d'approvisionnement web, et c'est ce que cside sécurise.
  2. Utilisation non consensuelle des ressources : Contrairement au minage classique, qui nécessite un consentement explicite et du matériel dédié, le minage basé sur le navigateur utilise les ressources CPU de tout visiteur d'un site infecté. Le script s'exécute tant que la page web est ouverte, ce qui le rend moins perceptible mais potentiellement nuisible aux appareils des utilisateurs, en raison d'une consommation d'énergie accrue et de l'usure.
  3. Rentabilité pour les attaquants : Chaque appareil détourné contribue une petite quantité de puissance de minage. Cependant, une fois multipliée par des milliers d'appareils, cette puissance peut générer des sommes significatives de cryptomonnaie pour les attaquants.

L'impact de cette attaque

Cette attaque a touché plus de 4 000 sites web, y compris des sites gouvernementaux et éducatifs, exposant des milliers d'utilisateurs au cryptojacking à leur insu. Aucune donnée personnelle n'a été volée, mais les implications étaient néanmoins significatives. Les sites web ont dû être mis hors ligne, causant des interruptions de service et des dommages à la réputation. Les attaquants ont exploité une pratique courante mais risquée : l'acceptation automatique des mises à jour de scripts tiers. Cet incident a clairement montré que les composants tiers nécessitent une surveillance et une gestion rigoureuses, ce que de nombreuses organisations avaient négligé.

C'est précisément ce contre quoi cside protège, à la fois en surveillant le changement et en ayant la possibilité de prendre des mesures de manière autonome pour empêcher le code malveillant d'être chargé dans le navigateur de l'utilisateur.

En d'autres termes, cela ne se serait très probablement pas produit si cside avait existé et été déployé à l'époque. Vous pouvez commencer avec cside pour vous protéger gratuitement contre tout type d'attaque par script tiers.

Qu'est-il arrivé à BrowseAloud par la suite ?

Après l'attaque de cryptojacking, la société mère de BrowseAloud, Texthelp, a pris des mesures immédiates en mettant temporairement le service hors ligne pour atténuer le problème et effectuer un examen de sécurité approfondi. L'incident a conduit à une sensibilisation accrue concernant la sécurité des services tiers et la nécessité d'une vigilance continue et d'audits de sécurité réguliers.

BrowseAloud est revenu en ligne avec des mesures de sécurité renforcées visant à prévenir des incidents similaires. L'attaque a également déclenché une discussion plus large parmi les fournisseurs de services web sur l'importance de sécuriser et de surveiller rigoureusement les scripts tiers.

Le destin de CoinHive

CoinHive, en revanche, a connu une trajectoire différente. Initialement lancé comme un outil légitime pour monétiser le contenu des sites web sans publicité, en utilisant la puissance CPU des visiteurs pour miner de la cryptomonnaie, CoinHive est rapidement devenu associé au cryptojacking non autorisé. La connotation négative et l'utilisation abusive du script dans diverses attaques malveillantes ont conduit à un examen minutieux important.

La viabilité du service a été davantage remise en question par la baisse de la valeur du Monero et la difficulté croissante à le miner de manière rentable. Par conséquent, CoinHive a annoncé sa fermeture en mars 2019, citant l'inviabilité économique comme raison principale de sa fermeture.

Le domaine CoinHive.com appartient désormais à l'expert du secteur Troy Hunt. Il est sûr et héberge son point de vue sur la protection contre des attaques similaires et sur le cryptojacking en général.

Article éducatif hébergé par Troy Hunt sur l'ancien domaine Coinhive.com

De la même manière que nous possédons désormais le domaine Baways.com et l'avons transformé en site web éducatif.

Page éducative actuelle de baways.com gérée par cside

L'utilisation d'anciens domaines déjà utilisés comme ceux-ci peut causer d'autres problèmes, comme Troy Hunt en a récemment fait l'expérience.

Email amusant / stupide / idiot du jour :

@copytrack

gère un service pour suivre les instances d'images protégées par le droit d'auteur utilisées sans licence. En mars, ils m'ont envoyé plusieurs emails exigeant de l'argent pour violation du droit d'auteur. Aujourd'hui, j'en ai reçu un autre demandant plusieurs centaines d'euros :

pic.twitter.com/4IUUlvslZ8

, Troy Hunt (@troyhunt)

15 juin 2024

Pour en revenir à ses recommandations sur le sujet, son approche consiste à utiliser une CSP pour faire en sorte que les navigateurs ignorent toute commande provenant d'un domaine qui n'est pas explicitement autorisé. Dans son cas, après avoir sécurisé le domaine CoinHive, il a mis en place une CSP qui garantit que même si des scripts malveillants sont injectés, ils ne seront pas exécutés, car ils ne proviendraient pas d'une liste de domaines autorisés.

À notre avis, cette approche est bonne, mais insuffisante. En résumé, les CSP ne devraient pas être la seule mesure de sécurité contre les attaques JavaScript tierces. Notre page de comparaison donne un excellent aperçu des fonctionnalités que nous avons mises en œuvre en plus des CSP pour offrir la meilleure protection possible contre les compromissions de scripts tiers.

Nous pensons que la véritable réponse consiste à analyser l'intégralité du script avant qu'il n'atteigne le navigateur de l'utilisateur. Cela présente naturellement quelques défis, pour lesquels nous avons conçu des solutions. Vous pouvez en savoir plus sur ce point de vue, et sur la façon dont nous sécurisons les scripts tiers, ici.

Simon Wijckmans
Founder & CEO

Founder and CEO of cside. Previously a product manager on Cloudflare Page Shield (now Cloudflare Client-Side Security). Co-chair of the W3C Anti-Fraud Community Group and a Forbes 30 Under 30 honoree. Building accessible security against client-side attacks, web security is not an enterprise-only problem.

FAQ

Frequently Asked Questions

En 2018, le script d'accessibilité Browsealoud a été compromis et a commencé à charger Coinhive sur chaque site qui l'intégrait, y compris des pages gouvernementales britanniques et américaines. Les visiteurs minaient du Monero pour l'attaquant jusqu'à la désactivation du script.

Tout script tiers intégré peut être discrètement remplacé. Subresource Integrity aide pour les ressources statiques, mais ne détecte pas les changements de contenu exécutés à l'exécution. Une surveillance continue côté client permet de repérer le remplacement lorsqu'il se produit.

Surveillez et sécurisez vos scripts tiers

Gain full visibility and control over every script delivered to your users to enhance site security and performance.

Commencez gratuitement, ou essayez Business avec un essai de 14 jours.

Interface du tableau de bord cside affichant la surveillance des scripts et les analyses de sécurité
Related Articles
Réserver une démonstration

Envie de passer tout ça en revue avec un ingénieur ?

Trente minutes, sur votre propre site. Pas de slides.

Nous vous montrerons :

Quels scripts tiers s'exécutent actuellement sur votre site
Où vous en êtes sur les exigences PCI DSS 6.4.3 et 11.6.1
Quelle part de votre trafic provient de bots et d'agents IA

Vous préférez simplement poser une question ?

Recherche de créneaux…

Humains uniquement. On le saurait.

Un problème pour réserver ? Ouvrir le calendrier dans un nouvel onglet

Quel problème cherchez-vous à résoudre ?

Dites-le-nous en une ligne et nous reviendrons vers vous avec quelque chose d'utile, pas un discours générique.

Nous aidons souvent sur :

Voir quels scripts tiers s'exécutent sur votre site
Les preuves pour PCI DSS 6.4.3 et 11.6.1
Les bots, les agents IA et le vol de comptes

Vous préférez réserver un créneau ? Choisir un créneau