Un problème de sécurité (CVE-2021-41077) a été découvert dans le service d'intégration continue Travis CI, destiné aux tests et à la construction de projets développés sur GitHub et Bitbucket. Cette vulnérabilité permet de révéler le contenu des variables d'environnement sensibles des dépôts publics utilisant Travis CI. En particulier, elle permet de connaître les clés utilisées dans Travis CI pour générer des signatures numériques, ainsi que les clés d'accès et les jetons pour accéder à l'API.
Le problème a existé dans Travis CI du 3 au 10 septembre. Fait intéressant, l'information concernant la vulnérabilité a été transmise aux développeurs le 7 septembre, mais la réponse reçue était uniquement une suggestion d'effectuer une rotation des clés. Ne recevant pas de retour adéquat, les chercheurs ont contacté GitHub et ont proposé de mettre Travis sur liste noire. Le problème a été résolu seulement le 10 septembre après un grand nombre de plaintes de différents projets. Après cet incident, un rapport curieux sur le site de Travis CI a été publié, dans lequel, au lieu d'informer sur la correction de la vulnérabilité, une recommandation qui sortait du contexte a été donnée, conseillant de changer cycliquement les clés d'accès.
Suite à l'indignation concernant la dissimulation d'informations exprimée par plusieurs grands projets, un rapport plus détaillé a été publié sur le forum de support de Travis CI, indiquant que le propriétaire d'un fork de tout dépôt public pouvait, en envoyant une pull request, initier le processus de construction et obtenir un accès non autorisé aux variables d'environnement sensibles du dépôt source, exposées pendant la construction en fonction des champs du fichier «.travis.yml» ou définies via l'interface web de Travis CI. Ces variables sont stockées sous forme chiffrée et ne sont décrites qu'au moment de la construction. Le problème ne concernait que les dépôts accessibles au public ayant des forks (les dépôts privés n'étaient pas vulnérables).
Source : opennet.ru
