Intel publicerar ControlFlag 1.2, ett verktyg för att upptäcka anomalier i källkoden

Intel har publicerat släppet av ControlFlag 1.2, en verktygslåda som låter dig identifiera fel och anomalier i källkoden med hjälp av ett maskininlärningssystem tränat på en stor mängd befintlig kod. Till skillnad från traditionella statiska analysatorer tillämpar ControlFlag inte färdiga regler, där det är svårt att tillhandahålla alla möjliga alternativ, utan baseras på statistik över användningen av olika språkkonstruktioner i ett stort antal befintliga projekt. ControlFlag-koden är skriven i C++ och är öppen källkod under MIT-licensen.

Den nya utgåvan är känd för implementeringen av fullt stöd för avvikelsedetektering och inlärning baserat på vanliga kodmönster för C++-språket. I tidigare versioner gavs liknande stöd för C- och PHP-språken. Systemet är lämpligt för att identifiera olika typer av problem i kod, från att identifiera stavfel och typfel, till att identifiera anomalier i if-satser och saknade NULL-kontroller i pekare. Systemet tränas genom att bygga en statistisk modell av den befintliga kodarrayen av projekt med öppen källkod i C, C++ och PHP, publicerade i GitHub och liknande offentliga arkiv.

På träningsstadiet bestämmer systemet typiska mönster för att konstruera strukturer i koden och bygger ett syntaktiskt träd av kopplingar mellan dessa mönster, vilket återspeglar flödet av kodexekvering i programmet. Som ett resultat bildas ett referensbeslutsträd som kombinerar utvecklingserfarenheten för alla analyserade källkoder. Koden som granskas genomgår en liknande process för att identifiera mönster som kontrolleras mot ett referensbeslutsträd. Stora avvikelser med närliggande grenar indikerar förekomsten av en anomali i mönstret som kontrolleras.

Intel publicerar ControlFlag 1.2, ett verktyg för att upptäcka anomalier i källkoden


Källa: opennet.ru

Lägg en kommentar