Intel publikoi ControlFlag 1.2, një mjet për zbulimin e anomalive në kodin burimor

Kompania Intel ka publikuar versionin 1.2 të paketës së mjeteve ControlFlag, e cila mundëson zbulimin e gabimeve dhe anomalive në kodin burimor duke përdorur një sistem të mësimit automatik të trajnuar mbi një vëllim të madh kodi ekzistues. Ndryshe nga analizuesit tradicionalë statikë, ControlFlag nuk përdor rregulla të gatshme, ku është e vështirë të parashikohen të gjitha variantet e mundshme, por mbështetet te statistikat e përdorimit të strukturave të ndryshme gjuhësore në një numër të madh projektesh ekzistuese. Kodi i ControlFlag është shkruar në C++ dhe është i disponueshëm me licencën MIT.

Versioni i ri dallohet për zbatimin e mbështetjes së plotë për zbulimin e anomalive dhe trajnimin mbi bazën e modeleve tipike të kodit për gjuhën C++. Në versionet e mëparshme, mbështetje e tillë ishte ofruar për gjuhët C dhe PHP. Sistemi është i përshtatshëm për identifikimin e llojeve të ndryshme të problemeve në kod, që nga zbulimi i gabimeve tipografike dhe kombinimeve të pasakta të tipeve, deri te evidentimi i anomalive në shprehjet kushtore «if» dhe mungesa e kontrollit të vlerës NULL te pointerët. Sistemi trajnohet duke ndërtuar një model statistikor mbi bazën e një korpusi ekzistues kodi nga projekte open source në gjuhët C, C++ dhe PHP, të publikuara në GitHub dhe depo të ngjashme publike.

Në fazën e trajnimit, sistemi përcakton modelet tipike të ndërtimit të strukturave në kod dhe krijon një pemë sintaksore të lidhjeve mes këtyre modeleve, e cila pasqyron rrjedhën e ekzekutimit të kodit në program. Si rezultat, formohet një pemë referuese e vendimmarrjes që përmbledh përvojën e zhvillimit nga të gjitha kodet burimore të analizuara. Për kodin që verifikohet zbatohet një proces i ngjashëm i përcaktimit të modeleve, të cilat krahasohen me pemën referuese të vendimmarrjes. Devijimet e mëdha nga degët fqinje tregojnë praninë e një anomalie në modelin që po verifikohet.

Intel publikoi ControlFlag 1.2, një mjet për zbulimin e anomalive në kodin burimor


Burimi: opennet.ru
Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster