Microsoft lance un analyseur de code source ouvert

Cherchant à aider les développeurs qui s'appuient sur des composants logiciels externes, Microsoft a introduit un analyseur de code source, Microsoft Application Inspector, pour aider à mettre en évidence les fonctionnalités et autres caractéristiques du code source. 

Téléchargeable à partir de GitHub, l'outil de ligne de commande multiplateforme est conçu pour analyser les composants avant utilisation afin d'aider à déterminer ce qu'est le logiciel ou ce qu'il fait. Les données qu'il fournit peuvent être utiles pour réduire le temps nécessaire pour déterminer ce que font les composants logiciels en examinant directement le code source plutôt que de se fier à la documentation. 

Application Inspector est différent des outils d'analyse statique traditionnels en ce qu'il ne tente pas d'identifier des modèles «bons» ou «mauvais», indique la documentation de Microsoft. Au lieu de cela, l'outil rapporte ce qu'il trouve par rapport à un ensemble de plus de 400 modèles de règles pour la détection de fonctionnalités, y compris des fonctionnalités ayant un impact sur la sécurité, telles que l'utilisation de la cryptographie. 

Les autres fonctionnalités clés d'Application Inspector incluent:

  • Un moteur de règles basé sur JSON qui effectue une analyse statique.
  • La capacité d'analyser des millions de lignes de code source à partir de composants construits en utilisant de nombreux langages.
  • La capacité d'identifier les composants à haut risque et ceux présentant des fonctionnalités inattendues.
  • La capacité d'identifier les modifications apportées à l'ensemble de fonctionnalités d'un composant, d'une version à l'autre, qui peuvent indiquer n'importe quoi, d'une porte dérobée malveillante à une surface d'attaque accrue.
  • La possibilité de générer des résultats dans plusieurs formats, notamment JSON et HTML.
  • La capacité de détecter les fonctionnalités couvrant les API de service Microsoft Azure, Amazon Web Services et Google Cloud Platform et les fonctions du système d'exploitation telles que le système de fichiers, les fonctionnalités de sécurité et les cadres d'application.

Microsoft a déclaré que l'Inspecteur d'application diffère des autres outils d'analyse statique en ce qu'il ne se limite pas à la détection de mauvaises pratiques de programmation; il met en évidence des caractéristiques de code qui seraient difficiles ou chronophages à identifier par une inspection manuelle.