En réponse à la récente flambée des attaques d’extraction de crypto-monnaie, GitHub a changé la façon dont les demandes d’extraction des forks publics sont gérées dans les actions GitHub pour éviter les abus.
Comme l’explique le PDG de la plateforme DevOps LayerCI, Colin Chartier dans un article récent,
Alors que la capitalisation boursière de la crypto-monnaie est passée de 190 milliards de dollars en janvier 2020 à 2000 milliards de dollars en avril 2021, il est devenu rentable pour les mauvais acteurs de s’attaquer à plein temps aux niveaux gratuits des fournisseurs de plate-forme en tant que service.
Chartier décrit comment un attaquant peut abuser des actions GitHub cron
fonctionnalité pour créer de nouveaux commits toutes les heures dans le but d’exploiter les crypto-monnaies.
Parce que les développeurs peuvent exécuter du code arbitraire sur nos serveurs, ils enfreignent souvent nos conditions de service pour exécuter des mineurs de crypto-monnaie comme une « étape de construction » pour leurs sites Web.
Selon Chartier, une stratégie pour réduire les chances d’être détecté qui devient populaire consiste à utiliser un navigateur sans tête pour ces attaques.
En conséquence, les principaux fournisseurs de plates-formes CI à niveau gratuit, y compris GitLab et TraviCI, ont annoncé des restrictions à leurs offres gratuites pour éviter les abus.
Dans ce contexte, GitHub a annoncé deux changements dans la gestion des pull request pour rendre plus difficile pour les attaquants de déclencher l’exécution de code d’exploration de données sur les référentiels en amont en soumettant simplement une pull request.
Cette […] a un impact négatif sur les propriétaires de référentiels dont les demandes d’extraction et les comptes légitimes peuvent être bloqués en raison de cette activité.
Dans un premier temps, les référentiels en amont ne seront pas tenus pour responsables des attaques abusives déclenchées par des dépôts fourchus.
Notre application sera dirigée vers le compte hébergeant le fork et non le compte associé au référentiel en amont.
De plus, lorsqu’un contributeur soumet une demande d’extraction pour la première fois, l’approbation manuelle d’un collaborateur du référentiel avec accès en écriture sera requise avant qu’une action GitHub puisse être exécutée.
Sur la base de conversations avec plusieurs responsables de la maintenance, nous pensons que cette étape est un bon équilibre entre l’approbation manuelle et les flux de travail automatisés existants. Ce sera le paramètre par défaut et, à partir de maintenant, il n’y a aucun moyen de désactiver le comportement.
GitHub a également déclaré que cette approche pourrait être rendue plus flexible à l’avenir, si elle a un impact négatif sur les responsables de la maintenance.
Bien que la stratégie GitHub puisse fonctionner pour le moment, selon Chartier, il est probable que les attaques deviendront plus sophistiquées et contourneront toutes les mesures. Dans son point de vue plutôt pessimiste, seul l’abandon de l’exploitation minière de preuve de concept coûteuse en calcul pourrait préserver les niveaux gratuits des plates-formes CI.
.