Izdanje uslužnog programa GNU cflow 1.7

Nakon tri godine razvoja, objavljen je uslužni program GNU cflow 1.7, dizajniran za izgradnju vizualnog grafikona poziva funkcija u C programima, koji se može koristiti za pojednostavljenje proučavanja logike aplikacije. Graf se konstruira samo na temelju analize izvornih tekstova, bez potrebe za izvršavanjem programa. Podržano je generiranje dijagrama toka naprijed i obrnuto izvršenje, kao i generiranje popisa unakrsnih referenci za kodne datoteke.

Izdanje je značajno po implementaciji podrške za "točkasti" izlazni format ('—format=dot') za generiranje rezultata u DOT jeziku za naknadnu vizualizaciju u paketu Graphviz. Dodana je mogućnost određivanja višestrukih početnih funkcija dupliciranjem opcija '—main'; za svaku od ovih funkcija bit će generiran zaseban grafikon. Također je dodana opcija “--target=FUNCTION” koja vam omogućuje da ograničite rezultirajući graf samo na granu koja uključuje određene funkcije (opcija “--target” može se specificirati nekoliko puta). Nove naredbe za navigaciju grafom dodane su u cflow-mode: “c” - idite na funkciju koja poziva, “n” - idite na sljedeću funkciju na danoj razini ugniježđivanja i “p” - idite na prethodnu funkciju s istim razina gniježđenja.

Nova verzija također uklanja dvije ranjivosti koje su identificirane još 2019. godine i dovode do oštećenja memorije prilikom obrade posebno formatiranih izvornih tekstova u cflowu. Prva ranjivost (CVE-2019-16165) uzrokovana je korištenjem pristupa memoriji nakon oslobađanja u kodu parsera (referentna funkcija u parser.c). Druga ranjivost (CVE-2019-16166) povezana je s prekoračenjem međuspremnika u funkciji nexttoken(). Prema programerima, ovi problemi ne predstavljaju sigurnosnu prijetnju, budući da su ograničeni na abnormalno prekidanje uslužnog programa.

Izvor: opennet.ru

Dodajte komentar