Intel publie ControlFlag 1.2, un outil de détection des anomalies dans le code source

Intel a publié la version ControlFlag 1.2, une boîte à outils qui vous permet d'identifier les erreurs et anomalies dans le code source à l'aide d'un système d'apprentissage automatique formé sur une grande quantité de code existant. Contrairement aux analyseurs statiques traditionnels, ControlFlag n'applique pas de règles toutes faites, dans lesquelles il est difficile de prévoir toutes les options possibles, mais repose sur des statistiques sur l'utilisation de diverses constructions de langage dans un grand nombre de projets existants. Le code ControlFlag est écrit en C++ et est open source sous licence MIT.

La nouvelle version se distingue par la mise en œuvre d'une prise en charge complète de la détection des anomalies et de l'apprentissage basé sur des modèles de code courants pour le langage C++. Dans les versions précédentes, une prise en charge similaire était fournie pour les langages C et PHP. Le système est adapté pour identifier différents types de problèmes dans le code, depuis l'identification des fautes de frappe et des incompatibilités de types, jusqu'à l'identification des anomalies dans les instructions if et des vérifications NULL manquantes dans les pointeurs. Le système est formé en construisant un modèle statistique de la gamme de codes existante de projets open source en C, C++ et PHP, publiés sur GitHub et dans des référentiels publics similaires.

Au stade de la formation, le système détermine des modèles typiques de construction de structures dans le code et construit un arbre syntaxique de connexions entre ces modèles, reflétant le flux d'exécution du code dans le programme. En conséquence, un arbre décisionnel de référence est formé, combinant l'expérience de développement de tous les codes sources analysés. Le code en cours d'examen est soumis à un processus similaire d'identification de modèles qui sont vérifiés par rapport à un arbre de décision de référence. Des écarts importants avec les branches voisines indiquent la présence d'une anomalie dans le motif vérifié.

Intel publie ControlFlag 1.2, un outil de détection des anomalies dans le code source


Source: opennet.ru

Ajouter un commentaire