PĂ€rast kolme aasta arendust on vĂ€lja antud GNU cflow 1.7 utiliit, mis on mĂ”eldud funktsioonide kutsumise graafide koostamiseks C-programmides, ja mida saab kasutada rakenduse loogika Ă”ppimise lihtsustamiseks. Graaf koostatakse ainult lĂ€htekoodi analĂŒĂŒsi pĂ”hjal, ilma et oleks vaja programmi kĂ€ivitada. Toetatakse nii otse- kui ka tagasivoolu graafide genereerimist, samuti ristsiidide loendite genereerimist koodifailide jaoks.
VĂ€ljaanne on silmapaistev, sest on lisatud toe vormingu vĂ€ljundiks 'dot' ('âformat=dot'), et luua tulemus DOT keeles, mida saab hiljem visualiseerida Graphvizi paketis. Lisatud on vĂ”imalus mÀÀrata mitu algusfunktsiooni, korrates 'âmain' valikuid; iga sellise funktsiooni jaoks luuakse eraldiseisev graaf. Samuti on lisatud valik 'âtarget=FUNCTION', mis vĂ”imaldab piirata tulemuste graafi vaid haruga, mis sisaldab teatud funktsioone (valikut 'âtarget' saab mÀÀrata mitu korda). cflow-reĆŸiimi on lisatud uusi kĂ€ske graafis navigeerimiseks: 'c' â edasi kutsuvasse funktsiooni, 'n' â jĂ€rgmisse funktsiooni samal sĂŒgavustasemel ja 'p' â eelmisse funktsiooni samal sĂŒgavustasemel.
Uues versioonis on samuti kĂ”rvaldatud kaks haavatavust, mis tuvastati juba 2019. aastal ja mis pĂ”hjustavad cflow-s spetsiaalselt vormindatud lĂ€htekoodide töötlemisel mĂ€lu kahjustumist. Esimene haavatavus (CVE-2019-16165) on pĂ”hjustatud mĂ€lu kasutamisest pĂ€rast selle vabastamist (use-after-free) parsi koodi (funktsioon reference failis parser.c) sees. Teine haavatavus (CVE-2019-16166) on seotud puhvri ĂŒletĂ€itumisega funktsioonis nexttoken(). Arendajate arvates ei esita need probleemid turvaohtu, kuna need piirduvad utiliidi Ă€kilise lĂ”petamisega.
Allikas: opennet.ru
