Hva er SAST (Statisk Applikasjonssikkerhetstesting)?
SAST er en type applikasjonssikkerhetstesting som sjekker en applikasjons kildekode (den opprinnelige koden skrevet av utviklere), avhengigheter (eksterne biblioteker eller pakker som koden er avhengig av), eller binærfiler (kompilert kode klar til å kjøre) før den kjører. Denne tilnærmingen kalles ofte hvitboks-testing fordi den undersøker den interne logikken og strukturen i koden for sårbarheter og feil, i stedet for bare å teste applikasjonens oppførsel fra utsiden.
Hvorfor SAST er viktig i cybersikkerhet
Å sikre kode er en viktig del av DevSecOps. SAST hjelper organisasjoner med å finne sårbarheter som SQL-injeksjon, Cross-Site Scripting (XSS), svak kryptering, og andre sikkerhetsproblemer tidlig i programvareutviklingslivssyklusen. Dette betyr at team kan fikse problemer raskere og til lavere kostnad.
Hvordan SAST fungerer
- Analyser kildekode, binærfiler eller bytekode uten å kjøre dem.
- Identifiserer sårbarheter i kodingspraksis (f.eks. manglende validering, eksponert API-nøkkel)
- Integrer i utviklerens arbeidsflyt (CI/CD)
- Generer en rapport over sårbarheter som ble funnet og gi veiledning om hvordan de kan løses (utbedring)
Vanlige sårbarheter funnet av SAST
- SQL-injeksjon
- Cross-site scripting (XSS)
- Bruk av usikre kryptografiske algoritmer (f.eks. MD5, SHA-1)
- Eksponerte API-nøkkellegitimasjoner i hardkodet
- Buffer overflow
- Valideringsfeil
Fordeler med SAST
- Billigere kostnad: å fikse sårbarhetsproblemer tidlig er mindre kostbart enn etter distribusjon
- Tidlig deteksjon: finner sikkerhetsproblemer under utvikling.
- Samsvarsstøtte: tilpass med standarder som OWASP, PCI DSS og ISO 27001.
- Shift-left sikkerhet: integrer sikkerhet i utviklingsarbeidsflyten fra begynnelsen
- Utviklervennlig: Gi utvikleren handlingsrettede steg for å fikse sikkerhetsproblemer.
Eksempel
Under en SAST-test finner verktøyet sikkerhetsproblemer der utviklere bruker usikker MD5 til å hashe passord. SAST-verktøyet markerer det som en sårbarhet og foreslår å erstatte MD5 med bcrypt eller Argon2, som er sterkere algoritmer sammenlignet med MD5.