# SAST verktyg: Hitta säkerhetshot i källkoden innan deployment

*2026-08-02*

> SAST verktyg automatiserar säkerhetsgranskning av källkod och upptäcker sårbarheter tidigt i utvecklingsprocessen. Läs vår guide till statisk kodanalys, populära lösningar och CI/CD-integration.

## SAST verktyg: Automatisk säkerhetsgranskning från dag ett

SAST verktyg (Static Application Security Testing) är en central del av modern DevSecOps. De analyserar källkoden utan att köra programmet och hittar säkerhetshot som SQL-injection, cross-site scripting (XSS), buffertöverflöden och hårdkodade lösenord innan koden deployeras till produktion. Genom att integrera SAST verktyg i CI/CD-pipelines kan utvecklare få omedelbar feedback och åtgärda problem medan koden ännu är färsk.

Det är långt billigare och snabbare att fixa en sårbarhet under utvecklingen än att hantera en säkerhetsbreach i produktion. SAST verktyg fungerar som en automatiserad kodgranskare som arbetar 24/7 och fångar mönster som människor lätt missar.

## Vad är statisk kodanalys och hur fungerar det?

Statisk kodanalys säkerhet innebär att man undersöker källkoden utan att köra den. SAST verktyg använder flera tekniker:

- **Mönstermatchning**: Söker efter kända sårbara kodmönster (t.ex. `eval()` i JavaScript, `exec()` i Python)
- **Dataflödesanalys**: Följer hur data rör sig genom programmet för att identifiera osäkra transformationer
- **Kontrollflödesanalys**: Kartlägger programlogik för att hitta otillåtna vägar genom koden
- **Typsystem-analys**: Detekterar typ-relaterade fel som kan leda till säkerhetsproblem

När utvecklare pushar kod till sitt repository triggas SAST-scanningen automatiskt. Verktyget genererar en rapport med sårbarheter klassificerade efter allvarlighetsgrad (kritisk, högt, medel, lågt), tillsammans med kodposition och rekommenderad åtgärd.

## Populära SAST verktyg för olika miljöer

### Open Source-lösningar

**SonarQube** är en av de mest populära SAST-plattformarna. Den stöder 27+ programmeringsspråk, integreras sömlöst med Jenkins, GitLab CI och GitHub Actions, och erbjuder både kostnadsfri community-version och betald enterprise-utgåva. SonarQube fokuserar på kodkvalitet, säkerhet och underhållbarhet.

**Semgrep** är ett modernt, snabbt alternativ som använder regelbaserad analys. Det är lätt att anpassa för organisationens egna kodstandarder och kör på sekunder istället för minuter.

**OWASP Dependency-Check** specialiserar sig på att hitta kända sårbarheter i tredjepartsbibliotek och beroenden — en ofta glömd säkerhetskälla.

### Kommersiella lösningar

**Fortify Static Code Analyzer** från Micro Focus är en enterprise-lösning med djup språkstöd och avancerad dataflödesanalys. Den är dyr men väl utrustad för stora organisationer.

**Checkmarx** erbjuder molnbaserad SAST med AI-driven analys och är populär bland finansinstitut och myndigheter.

**Veracode** är en SaaS-plattform som kombinerar SAST, DAST och Software Composition Analysis (SCA) i ett verktyg.

## SAST vs DAST säkerhet: Vad är skillnaden?

Det är viktigt att förstå skillnaden mellan SAST och DAST:

| Aspekt | SAST | DAST |
|--------|------|------|
| **Tidpunkt** | Under utveckling (white-box) | Efter deployment (black-box) |
| **Hastighet** | Snabb, kör på sekunder | Långsam, kan ta timmar |
| **Falska positiva** | Fler | Färre |
| **Beroenden** | Hittar sårbarheter i kod | Hittar runtime-problem |
| **Kostnad** | Låg per scan | Högre |

Bästa praktiken är att använda **båda**: SAST under utveckling för att fånga kodfel tidigt, och DAST i testmiljöer för att validera att systemet är säkert när det körs.

## Integrera SAST verktyg i din CI/CD-pipeline

En framgångsrik integration kräver rätt strategi:

### 1. Välj rätt verktyg för ditt teknikstack
Om ditt team använder Java och Spring bör du välja ett verktyg med stark Java-support. Python-projekt passar bättre med Semgrep eller Bandit.

### 2. Konfigurera quality gates
Sätt upp regler som automatiskt blockerar pull requests om kritiska sårbarheter hittas. GitLab CI och GitHub Actions gör detta enkelt:

```yaml
stages:
  - scan

sonarqube-scan:
  stage: scan
  script:
    - sonar-scanner
  allow_failure: false
```

### 3. Hantera falska positiva
Alla SAST-verktyg genererar falskt positiva. Skapa en process för att granska och markera dessa som "accepterad risk" eller "ej tillämplig" för att minska brus.

### 4. Utbilda utvecklare
SAST är bara effektivt om utvecklare förstår rapporterna. Arrangera workshops om vanliga sårbarheter och hur man åtgärdar dem.

## Kodanalysverktyg DevSecOps: Bästa praxis

En robust kodanalysverktyg-strategi inom DevSecOps inkluderar:

- **Tidiga scanningar**: Kör SAST på feature-branches innan merge till main
- **Inkrementell analys**: Scanna bara nya/ändrad kod för snabbare feedback
- **Rapportering**: Integrera resultat i utvecklarnas IDE så de ser problem medan de kodar
- **Trend-tracking**: Övervaka säkerhetstrender över tid för att mäta förbättring
- **Automation**: Låt verktyget köra automatiskt — ingen manuell initiering

## Vad säger folk på Reddit och Flashback om SAST verktyg?

I utvecklarforum diskuteras SAST verktyg ofta med både entusiasm och frustration. Många utvecklare uppskattar att SAST-verktyg fångar misstag tidigt och sparar tid senare, men klagomål återkommer: för många falska positiva som slöar ned utvecklingen, svåra konfigurationer för större projekt, och höga licenskostnader för enterprise-versioner. Erfarna användare rekommenderar att börja med open source-lösningar som SonarQube eller Semgrep, testa noggrant innan man rullar ut till hela teamet, och investera tid i att finjustera regler för att minska brus. En vanlig tips är att inte förvänta sig perfekt säkerhet från SAST enbart — det är ett verktyg i en större säkerhetsstrategi som också bör inkludera kodgranskning, DAST och säkerhetstestning.

## Vanliga frågor om SAST verktyg

### Vilken är den bästa SAST-lösningen?
Det beror på ditt teknikstack, budget och organisationsstorlek. SonarQube är ett säkert val för de flesta, Semgrep för snabbhet och flexibilitet, och Fortify/Checkmarx för enterprise-krav.

### Hur ofta bör jag köra SAST-scanningar?
Idealt på varje commit eller pull request. De flesta moderna SAST-verktyg är snabba nog för detta.

### Kan SAST ersätta kodgranskning?
Nej. SAST är ett verktyg för att hitta känd sårbarheter och kodfel. Mänsklig kodgranskning är fortfarande viktig för att fånga logikfel, arkitekturproblem och säkerhetsbeslut.

### Vad är falska positiva och hur minskar man dem?
Falska positiva är varningar som inte är faktiska säkerhetsproblem. Minska dem genom att: finjustera regler, markera accepterade risker, och uppdatera verktyget regelbundet.

### Hur integrerar jag SAST med GitHub Actions?
De flesta SAST-verktyg har officiella GitHub Actions. Lägg till en workflow-fil i `.github/workflows/` som triggar scanningen på push och pull requests.
