Rilascio dello strumento GNU cflow 1.7

Dopo tre anni di sviluppo, è stata pubblicata la versione 1.7 dell'utility GNU cflow, progettata per creare un grafico visivo delle chiamate di funzione nei programmi scritti in C, utile per semplificare l'apprendimento della logica dell'applicazione. Il grafico è costruito esclusivamente attraverso l'analisi del codice sorgente, senza necessità di eseguire il programma. È supportata la generazione sia di grafici diretti che inversi dei flussi di esecuzione, insieme alla creazione di elenchi di riferimenti incrociati per i file di codice.

La versione è notevole per l'introduzione del supporto per il formato di output "dot" ("—format=dot") per generare risultati nel linguaggio DOT per la successiva visualizzazione con il pacchetto Graphviz. È stata aggiunta la possibilità di specificare più funzioni principali tramite la duplicazione dell'opzione "—main"; per ciascuna di queste funzioni sarà generato un grafico separato. Inoltre, è stata introdotta l'opzione "—target=FUNCTION" che consente di limitare il grafico risultante solo al ramo che include determinate funzioni (l'opzione "—target" può essere specificata più volte). Sono stati aggiunti nuovi comandi per la navigazione nel grafico nella modalità cflow: "c" – torna alla funzione chiamante, "n" – passa alla funzione successiva a questo livello di annidamento e "p" – ritorna alla funzione precedente con lo stesso livello di annidamento.

Nella nuova versione sono state corrette anche due vulnerabilità scoperte nel 2019, che causano un danneggiamento della memoria durante l'elaborazione di testi sorgente appositamente formattati in cflow. La prima vulnerabilità (CVE-2019-16165) è causata dall'accesso alla memoria dopo che è stata liberata (use-after-free) nel codice del parser (funzione reference in parser.c). La seconda vulnerabilità (CVE-2019-16166) è legata a un overflow del buffer nella funzione nexttoken(). Secondo gli sviluppatori, i problemi indicati non rappresentano una minaccia per la sicurezza, poiché si limitano a causare il crash dell'utility.

Fonte: opennet.ru

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster