Skip to main content

Le plugin plugin-publish de Gradle vulnérable révèle des informations sensibles

Écrit par
prioritize vulns

31 mars 2020

0 minutes de lecture

Il y a quelques jours à peine, le 27 mars, une faille de sécurité a été divulguée et publiée — CVE-2020-7599 — dans le plugin plugin-publish de Gradle. Elle affecte toutes les versions du package antérieures à la version 0.11.0. La faille a été découverte le 4 mars par Danny Thomas, responsable de la productivité des développeurs chez Netflix, qui l’a immédiatement signalée à Gradle.

Informations sensibles

Le problème détecté dans ce package relève d’une vulnérabilité dite d’« insertion d’informations sensibles ». Dans ce cas précis, le package affiche des informations sensibles dans le fichier journal. Lorsqu’un auteur de plugin publie un plugin Gradle à l’aide du plugin Gradle com.gradle.plugin-publish, une URL AWS pré-signée est transmise au plugin. Si la compilation Gradle est exécutée avec le niveau de journalisation --info ou inférieur, cette URL apparaît dans le fichier journal. Si ce journal de compilation est accessible au public, comme c’est le cas avec de nombreux systèmes CI publics, l’URL peut être utilisée à des fins malveillantes. Danny Thomas montre un exemple de fuite de données de ce type dans cette compilation CI publique.

Attaque possible

L’URL est valide pendant une heure et peut être réutilisée. Un attaquant pourrait donc s’en servir pour remplacer un plugin récemment publié par un package malveillant. Après avoir enquêté sur le problème, Gradle a indiqué qu’aucun artefact n’avait été remplacé. Il est également important de préciser que, par défaut, l’URL n’apparaît pas dans les journaux, car le niveau de journalisation par défaut est LIFECYCLE, selon la documentation de Gradle.

Correctif

En réponse, Gradle a publié une nouvelle version du plugin de publication qui réduit le niveau de journalisation de l’URL. Il est recommandé de mettre à jour le plugin plugin-publish vers la version 0.11.0. Veillez également à ne pas exécuter Gradle avec le niveau de journalisation --debug, car l’URL reste alors exposée. De manière générale, réduire le niveau de journalisation est très risqué lorsque les journaux sont accessibles au public. En plus de publier une version corrigée du plugin, Gradle a également raccourci la durée de validité de l’URL pré-signée afin de réduire la fenêtre d’attaque. Pour en savoir plus, consultez leur blog sur la sécurité.

Lancez-vous dans les compétitions Capture The Flag

Apprenez à résoudre des défis de capture du drapeau en regardant à la demande notre atelier virtuel d’initiation.

Lire la suite

Blog

Les modèles de pointe ont trouvé les vulnérabilités. Seul l’attaquant a trouvé les chaînes d’exploitation.

L’analyse statique a détecté les failles, mais seuls des tests d’attaque en conditions réelles ont prouvé comment elles pouvaient être enchaînées pour provoquer des compromissions. Comparaison d’Evo COS, de Claude Security et de Claude Code Security.

feature insights context
Blog

Les attaques autonomes sont déjà là. La défense doit suivre leur rythme.

Les attaquants autonomes réduisent la fenêtre de défense. Découvrez comment la découverte, la correction, la validation et la prévention continues peuvent aider les équipes de sécurité à suivre le rythme.

Blog

Votre backlog de vulnérabilités n’est plus une dette technique, c’est une surface d’attaque

Un backlog de vulnérabilités qui s’allonge est plus qu’une dette technique : c’est une surface d’attaque. Découvrez pourquoi les anciennes hypothèses de risque, les attaquants automatisés et les vulnérabilités en chaîne exigent une nouvelle approche.