La recherche de bug ne s’arrête jamais. Des experts de Wiz (spécialiste sur la sécurité du cloud) viennent d’en trouver un (nommé NotLegit) dans Azure App Service. Cette solution de Microsoft est également connue sous le nom d’Azure Web Apps. Il s’agit d’une plateforme cloud pour l’hébergement d’applications et de sites Web. Au sein de cet outil, les développeurs ont plusieurs manières de déployer le code source et les artefacts. L’une d’entre elles est Local Git, par laquelle les utilisateurs lancent un repository dans le conteneur Azure App Service. Le développeur peut ainsi pousser le code vers le serveur.
Quand Local Git est utilisé pour le déploiement dans Azure App Service, le dépôt Git était créé dans un répertoire accessible au public (home/site/wwwroot) soulignent les analystes dans un blog. Conscient du risque de cette exposition, Microsoft a ajouté un fichier « web.config » au dossier .git dans le répertoire public. Cependant, seul le serveur Web IIS (Internet Information Services) gère les fichier « web.config », précisent les experts.
Le code en PHP, Ruby, Python et Node concerné
Pour les développeurs s’appuyant sur C# ou ASP.NET, les applications ont été déployées avec IIS et l’atténuation de Microsoft a fonctionné. Mais pour ceux qui codent en PHP, Ruby, Python et Node, les dépôts sont déployés avec des serveurs Web différents qui ne gèrent pas les fichiers « web.config ». Les mesures d’atténuation sont donc caduques et les programmes vulnérables, car des pirates peuvent récupérer des codes sources qui ne sont pas censés être publics.
Les chercheurs ont alerté Microsoft de ce bug le 7 octobre 2021, mais estime que ce problème existe depuis septembre 2017. La firme de Redmond a reconnu l’erreur. « Cela se produit car le système tente de préserver les fichiers actuellement déployés comme faisant partie du contenu du référentiel, et active ce que l'on appelle les déploiements sur place via le moteur Kudu », écrit le Microsoft Security Response Center dans un billet de blog. La firme a temporisé la portée de cette mauvaise configuration limitée selon elle aux clients d'Azure App Service Linux qui ont déployé des applications en utilisant Local Git après que des fichiers aient été créés ou modifiés dans le répertoire racine du contenu. Au final, elle a annoncé des mises à jour pour résoudre le problème et les clients concernés ont été contactés.