Grafana breach caused by missed token rotation after TanStack attack

1 minute de lecture

Mis à jour :

Failles dans la rotation des jetons : le piratage de Grafana via la chaîne d’approvisionnement

L’incident de sécurité chez Grafana Labs découle de la campagne de logiciels malveillants « Shai-Hulud », où des attaquants (le groupe TeamPCP) ont compromis des paquets npm légitimes (TanStack). En intégrant ces paquets infectés dans leur environnement CI/CD, Grafana a vu ses jetons GitHub exfiltrés vers les attaquants. Malgré une réponse immédiate, l’oubli d’un jeton spécifique lors de la procédure de rotation a permis aux cybercriminels d’accéder à des dépôts privés, entraînant le vol de code source et d’informations opérationnelles, bien que les données de production des clients demeurent intactes.

Points clés

  • Origine : Attaque par empoisonnement de la chaîne d’approvisionnement logicielle via des paquets npm corrompus.
  • Impact technique : Exfiltration de jetons GitHub workflow, permettant un accès non autorisé à des dépôts privés et à des données professionnelles (noms/emails).
  • Conséquences : Aucun impact sur les systèmes de production ou les données des clients de Grafana Cloud. Le code source est resté intègre et n’a pas été altéré.

Vulnérabilités

  • Supply-Chain Attack : Utilisation de dépendances tierces malveillantes (packages npm TanStack) pour l’exécution de code à distance (info-stealer) dans l’environnement CI/CD.
  • Gestion des secrets : Échec du processus de remédiation (rotation des jetons) dû à l’oubli d’un jeton de workflow GitHub critique.

Recommandations

  • Audit des dépendances : Renforcer la surveillance et la vérification de l’intégrité des paquets tiers utilisés dans les pipelines de déploiement.
  • Automatisation de la révocation : Mettre en place des processus de révocation de secrets plus robustes et automatisés lors de la détection d’une compromission, pour éviter les omissions humaines.
  • Principe du moindre privilège : Restreindre les permissions des jetons GitHub workflow au strict nécessaire pour limiter les dommages en cas de fuite.

Source