Efter tre Ärs udvikling er version 1.7 af GNU cflow blevet offentliggjort. Denne vÊrktÞj er designet til at skabe en visuel graf over funktionsopkald i C-programmer, hvilket kan bruges til at forenkle studiet af applikationens logik. Grafen opbygges udelukkende baseret pÄ analyse af kildekoderne, uden behov for at kÞre programmet. Der understÞttes generering af bÄde direkte og omvendte kontrolflow-grafer samt generation af lister med krydshenvisninger til kodefiler.
Udgivelsen er bemĂŠrkelsesvĂŠrdig ved implementeringen af understĂžttelse af outputformatet "dot" (ââformat=dotâ) til at generere resultater i DOT-sproget til efterfĂžlgende visualisering i Graphviz-pakken. Der er tilfĂžjet mulighed for at angive flere startfunktioner ved at duplikere ââmainâ-indstillingerne; der vil blive genereret en separat graf for hver af disse funktioner. Desuden er der tilfĂžjet indstillingen «âtarget=FUNCTION», som gĂžr det muligt at begrĂŠnse den resulterende graf til kun at inkludere den gren, der omfatter specifikke funktioner («âtarget»-indstillingen kan angives flere gange). I cflow-mode er der tilfĂžjet nye kommandoer til navigation i grafen: «c» â gĂ„ til den kaldende funktion, «n» â gĂ„ til nĂŠste funktion pĂ„ dette indbyrdes niveau, og «p» â gĂ„ til den forrige funktion med samme niveau af indlejring.
I den nye version er to sÄrbarheder, der blev identificeret tilbage i 2019, blevet fjernet, og som kunne forÄrsage hukommelsesskader ved behandling af sÊrligt formaterede kildekoder i cflow. Den fÞrste sÄrbarhed (CVE-2019-16165) skyldes adgang til hukommelse efter frigivelse (use-after-free) i parserens kode (reference-funktionen i parser.c). Den anden sÄrbarhed (CVE-2019-16166) er relateret til buf-overskridelse i funktionen nexttoken(). IfÞlge udviklerne udgÞr de nÊvnte problemer ingen sikkerhedstrussel, da de blot begrÊnser sig til utilsigtede nedbrud af vÊrktÞjet.
Kilde: opennet.ru
