Techopedia magyarázza forráskód elemzés
forráskód elemzés alapvetően automatizált kód hibakeresés. A cél olyan hibák és hibák megtalálása, amelyek nem feltétlenül nyilvánvalóak a programozó számára. Célja, hogy olyan hibákat találjon, mint a lehetséges puffer túlcsordulások vagy a mutatók rendetlen használata, valamint a szemétgyűjtési funkciók visszaélése, amelyek mindegyike kihasználható egy hacker számára.
a Kódelemzők olyan szabályokat használnak, amelyek megmondják, mit kell keresni. Túl kevés pontossággal az analizátor túl sok hamis pozitív eredményt bocsáthat ki, és haszontalan figyelmeztetésekkel áraszthatja el a felhasználót, míg a túl sok pontosság túl sokáig tarthat; ezért egyensúlynak kell lennie.
kétféle elemző létezik:
- Interprocedural-felismeri a mintákat az egyik funkciótól a másikig, és ezek a minták korrelálnak, így az analizátor létrehozhat egy modellt és szimulálhatja a végrehajtási útvonalakat.
- Intraprocedurális – a mintaillesztésre összpontosít, és attól függ, hogy a felhasználó milyen mintákat keres.
az Interprocedurális analizátorok modernebbek és összetettebbek. Jó példa erre a Coverity, a Fortify és a Microsoft saját központosított eszköz-előtagja.