A GNU cflow 1.7 segédprogram kiadása

Három évnyi fejlesztés után megjelent a GNU cflow 1.7 segédprogram, amely C-programokban a függvényhívások vizuális grafikonjának felépítésére szolgál, amely segítségével leegyszerűsíthető az alkalmazás logikájának tanulmányozása. A gráf csak a forrásszövegek elemzése alapján készül, a program végrehajtása nélkül. Mind az előre, mind a visszirányú végrehajtási folyamatgrafikonok generálása támogatott, valamint a kódfájlok kereszthivatkozási listáinak generálása.

A kiadás figyelemre méltó a „dot” kimeneti formátum ('—format=dot') támogatásának megvalósítása az eredmény DOT nyelven történő generálásához a későbbi megjelenítéshez a Graphviz csomagban. Több kiindulási függvény megadásának lehetősége hozzáadva a „—main” opciók megkettőzésével; külön grafikon jön létre ezekhez a függvényekhez. Szintén hozzáadódik a „--target=FUNCTION” opció, amely lehetővé teszi, hogy a kapott gráfot csak arra az ágra korlátozzuk, amely bizonyos függvényeket tartalmaz (a „--target” opció többször is megadható). A cflow-módhoz új parancsok kerültek a grafikon navigációhoz: „c” - ugrás a hívó függvényre, „n” - ugrás a következő függvényre adott beágyazási szinten és „p” - ugrás az előző függvényre ugyanazzal fészkelő szint.

Az új verzió két sérülékenységet is kiküszöböl, amelyeket 2019-ben azonosítottak, és amelyek memóriasérüléshez vezetnek a speciálisan formázott forrásszövegek cflow-ban történő feldolgozása során. Az első sérülékenységet (CVE-2019-16165) az értelmező kódban található memóriahasználat utáni használat okozza (a parser.c hivatkozási funkciója). A második biztonsági rés (CVE-2019-16166) a nexttoken() függvény puffertúlcsordulásával kapcsolatos. A fejlesztők szerint ezek a problémák nem jelentenek biztonsági fenyegetést, mivel a segédprogram rendellenes leállására korlátozódnak.

Forrás: opennet.ru

Hozzászólás