PĂ€rast kolme aastat arendust on avaldatud GNU cflow 1.7 tööriista vĂ€ljaanne, mis on mĂ”eldud C keeles kirjutatud programmides funktsioonide kutsete visuaalse graafi loomiseks. See vĂ”ib aidata rakenduse töö loogika paremaks mĂ”istmiseks. Graafid koostatakse ainult algkoodide analĂŒĂŒsi pĂ”hjal, ilma et oleks vaja programmi kĂ€ivitada. Toetatakse nii otse- kui ka tagasivoolugraafide genereerimist ning ka ristviidete loendite loomist koodifailide jaoks.
VĂ€ljaanne on tĂ€helepanuvÀÀrne, kuna see toetab vĂ€ljundiformaati "dot" ("âformat=dot"), et genereerida tulemus DOT keeles hilisemaks visualiseerimiseks Graphvizi pakendis. Lisatud on vĂ”imalus mÀÀrata mitu algfunctione, dubleerides valikuid "âmain"; iga sellise funktsiooni jaoks genereeritakse eraldi graaf. Samuti on lisatud valik "âtarget=FUNCTION", mis vĂ”imaldab piirata tulemuslik graaf ainult harule, mis sisaldab kindlaid funktsioone (valikut "âtarget" saab mÀÀrata mitu korda). cflow-reĆŸiimile on lisatud uued kĂ€sud graafis navigeerimiseks: "c" â liikumine kutsuva funktsiooni juurde, "n" â liikumine jĂ€rgmise funktsiooni juurde antud sĂŒgava taseme juures ja "p" â liikumine eelneva funktsiooni juurde sama sĂŒgava taseme juures.
Uues versioonis on kĂ”rvaldatud kaks haavatavust, mis tuvastati juba 2019. aastal ja mis pĂ”hjustavad mĂ€lu kahjustumist cflow's spetsiifiliselt vormindatud lĂ€htekoodide töötlemisel. Esimene haavatavus (CVE-2019-16165) on pĂ”hjustatud mĂ€lu kasutamisest pĂ€rast selle vabastamist (use-after-free) parseri koodis (funktsioon reference failis parser.c). Teine haavatavus (CVE-2019-16166) on seotud jaoks ĂŒlevooluga funktsioonis nexttoken(). Arendajate arvates ei kujuta need probleemid turvariski, kuna need piirduvad tööriista kokkuvarisemisega.
Allikas: opennet.ru
