Techopedia selittää Lähdekoodianalyysin
Lähdekoodianalyysi on periaatteessa automatisoitu koodin virheenkorjaus. Tavoitteena on löytää vikoja ja vikoja, jotka eivät välttämättä ole ohjelmoijalle ilmeisiä. Sen tarkoituksena on löytää vikoja, kuten mahdollisia puskurien ylivuotoja tai osoittimien epäsiistiä käyttöä ja jätteiden keräystoimintojen väärinkäyttöä, jotka kaikki voivat olla hakkerin hyödynnettävissä.
Koodianalysaattorit toimivat säännöillä, jotka kertovat, mitä pitää etsiä. Liian vähän tarkkuutta, analysaattori voi sylkeä ulos liian monta vääriä positiivisia ja tulva käyttäjä turhia varoituksia, kun taas liian paljon tarkkuutta voi kestää liian kauan loppuun; siksi, on oltava tasapaino.
analysaattoreita on kahdenlaisia:
- prosessien välinen-havaitsee kuvioita yhdestä funktiosta toiseen, ja nämä kuviot korreloituvat niin, että analysaattori voi luoda mallin ja simuloida suorituspolkuja.
- prosessin sisäinen – keskittyy kuvioiden sovittamiseen ja riippuu siitä, millaisia kuvioita käyttäjä etsii.
Prosessointianalysaattorit ovat nykyaikaisempia ja monimutkaisempia. Hyviä esimerkkejä tästä ovat Coverity, Fortify ja Microsoftin oma keskitetty työkalu etuliite.