Microsoft vient d’annoncer le rachat de Semmle, éditeur d’une plateforme d’analyse de code, pour un montant non communiqué. L’entreprise basée à San Francisco viendra renforcer les équipes du référentiel de code GitHub, racheté en juin 2018 par l'éditeur de Redmond pour 7,5 Md$. « Au début de Semmle en 2006, nous avons eu l’idée de faire des requêtes sur le code source comme sur n’importe quel autre type de données », explique Oege de Moor, fondateur et CEO de la société dans un billet. A l’époque, rappelle-t-il, il semblait impossible de le réaliser en profondeur et à l’échelle, ce qui n’a pas manqué d’être souligné à la start-up d’alors. Pourtant, sa vision s’est concrétisée dans un produit désormais utilisé par Google, la NASA, Nasdaq, Mozilla, Dell, Murex, Crédit Suisse, Uber, Microsoft et d’autres pour sécuriser leurs logiciels. Dans un billet commentant le rachat, Nat Friedman, CEO de GitHub, qualifie de révolutionnaire ce moteur d’analyse sémantique qui permet aux développeurs d’écrire des requêtes qui identifient des modèles au sein d’importantes bases de code pour y trouver des vulnérabilités et leurs variantes.

L’utilisation open source de Semmle a été multiplié par 10 l’an dernier, selon Oege de Moor. Il explique que les chercheurs en sécurité étudient les conditions qui rendent le code vulnérable et les expriment sous forme de requêtes sur le code. Celles-ci « peuvent être partagées et affinées, facilitant la collaboration et éliminant une classe entière de vulnérabilités », décrit le fondateur de Semmle. « Les développeurs voient le résultat de ces requêtes directement dans leur revue de code, ce qui permet de s’assurer qu’une fois qu’un nouveau type de vulnérabilité a été détecté, il sera éradiqué définitivement ». Ce qui se fait actuellement sur une petite échelle pourra passer à l’étape supérieure avec l’arrivée de la technologie sur le site de partage de code Github qui, en août 2019, hébergeait 100 millions de repositories pour une communauté de 40 millions de personnes.

Associer un jour une requête Semmle à chaque faille CVE

Semmle a deux produits d’analyse automatique, QL et LGTM, l’un pour trouver toutes les variantes des vulnérabilités pour les supprimer avant qu’elles n’engendrent des problèmes, et l’autre pour examiner à la loupe chaque soumission de code (commit) afin d’identifier de façon précoce les failles zero-day avant la mise en production du logiciel. Si l'adoption de ces outils progresse largement, on peut imaginer que chaque faille décrite sur la liste CVE des vulnérabilités connues soit un jour assortie d’une requête Semmle, imagine Oege de Moor. Sur son blog, l’éditeur racheté par Microsoft propose différentes vidéos montrant ses outils en action.

L'accès à la plateforme LGTM est entièrement gratuit pour les projets open source. (Crédit : Semmle)

Sur la plateforme LGTM.com, accessible en ligne, plus de 39 millions de commits soumis par plus de 700 000 développeurs ont été analysés pour 135 821 projets open source. On peut se connecter sur LGTM à partir de GitHub, mais aussi de GitLab, de Bitcucket ou d’un compte Google. « Il n’y aura pas de rupture pour les clients existants des produits Semmle », assure Oege de Moor dans son billet. « LGTM.com continuera à être disponible gratuitement pour les référentiels publics et l’open source. Nous continuerons aussi notre recherche en sécurité open source qui, à ce jour, a donné 107 CVE pour des projets aussi importants que Apache Struts, le noyau Linux, Memcached, VLC, XNU d’Apple ou UBoot ».