C’est une mauvaise journée pour les bugs. Plus tôt dans la journée, Sentry a annoncé sa fonctionnalité AI Autofix pour déboguer le code de production et maintenant, quelques heures plus tard, GitHub lance la première version bêta de sa fonctionnalité de correction automatique par analyse de code pour rechercher et corriger les vulnérabilités de sécurité pendant le processus de codage. Cette nouvelle fonctionnalité combine les capacités en temps réel du Copilot de GitHub avec CodeQL, le moteur d’analyse de code sémantique de l’entreprise. La société a présenté cette fonctionnalité pour la première fois en novembre dernier.
GitHub promet que ce nouveau système peut corriger plus des deux tiers des vulnérabilités détectées, souvent sans que les développeurs n’aient à modifier eux-mêmes le code. La société promet également que la correction automatique de l’analyse du code couvrira plus de 90 % des types d’alertes dans les langages qu’elle prend en charge, qui sont actuellement JavaScript, Typescript, Java et Python.
Cette nouvelle fonctionnalité est désormais disponible pour tous GitHub Clients de sécurité avancée (GHAS).
« Tout comme GitHub Copilot soulage les développeurs des tâches fastidieuses et répétitives, la correction automatique de l’analyse du code aidera les équipes de développement à récupérer le temps autrefois consacré à la remédiation », écrit GitHub dans l’annonce d’aujourd’hui. « Les équipes de sécurité bénéficieront également d’un volume réduit de vulnérabilités quotidiennes, afin de pouvoir se concentrer sur des stratégies visant à protéger l’entreprise tout en suivant un rythme de développement accéléré. »
En arrière-plan, cette nouvelle fonctionnalité utilise le moteur CodeQL, le moteur d’analyse sémantique de GitHub pour trouver les vulnérabilités du code, avant même son exécution. La société a mis une première génération de CodeQL à la disposition du public fin 2019 après avoir acquis la startup d’analyse de code Semmle, où CodeQL était incubé. Au fil des années, CodeQL a apporté un certain nombre d’améliorations, mais une chose qui n’a jamais changé est que CodeQL n’était disponible que gratuitement pour les chercheurs et les développeurs open source.
CodeQL est désormais au centre de ce nouvel outil, même si GitHub note également qu’il utilise « une combinaison d’heuristiques et GitHub Copilot APIs » pour suggérer ses correctifs. Pour générer les correctifs et leurs explications, GitHub utilise le modèle GPT-4 d’OpenAI. Et bien que GitHub soit clairement suffisamment confiant pour suggérer que la grande majorité des suggestions de correctifs automatiques seront correctes, la société note qu ‘«un petit pourcentage de correctifs suggérés reflétera une incompréhension importante de la base de code ou de la vulnérabilité».