Säker SDLC samt SAST- och DAST-verktyg
Integrera säkerhet i programvaruutvecklingens livscykel genom att använda statisk analys (SAST), dynamisk analys (DAST) och hotmodellering tidigare i utvecklingen.
Säker SDLC samt SAST- och DAST-verktyg är en gratis lektion i Cloud & IT Cert Prep på CoddyKit. Detta är lektion 4 av 4. Ni kan läsa hela lektionen gratis nedan och sedan öva praktiskt i webbläsaren med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt. Den ingår i lärvägen för Cloud & IT Cert Prep, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i Cloud & IT Cert Prep innehåller totalt 4 lektioner.
Vad är en säker SDLC?
Secure Software Development Lifecycle (SSDLC) integrerar säkerhetsaktiviteter i alla faser av programvaruutvecklingen — från krav genom design, kodning, testning, driftsättning och underhåll. Den traditionella SDLC-modellen behandlar säkerhet som en kontroll i slutskedet, vilket är dyrt och ineffektivt. Grundtanken med en säker SDLC är att hitta och åtgärda sårbarheter så tidigt som möjligt, eftersom fel som upptäcks under designfasen kostar betydligt mindre att åtgärda än fel som upptäcks i produktion.
Att flytta säkerheten åt vänster i utvecklingen
Shift left innebär att säkerhetsarbetet flyttas tidigare i utvecklingens tidslinje, i stället för att läggas till i slutet. I praktiken innebär det att säkerhetskrav inkluderas i användarberättelser, att hotmodellering genomförs under designfasen, att kodgranskning och SAST utförs under utvecklingen samt att DAST körs före lansering. Team som arbetar enligt shift left upptäcker sårbarheter när de är billigast att åtgärda — under utvecklingen, inte i produktion.
Hotmodellering: STRIDE och PASTA
Hotmodellering identifierar och dokumenterar systematiskt säkerhetshot under designfasen. Modellen STRIDE kategoriserar hot i: Spoofing, Tampering, Repudiation, Information Disclosure, Denial of Service och Elevation of Privilege. PASTA (Process for Attack Simulation and Threat Analysis) är en riskcentrerad metod som simulerar angripares mål. Hotmodeller resulterar i prioriterade motåtgärder innan en enda kodrad har skrivits.
# STRIDE threat categories (mnemonic)
# S - Spoofing identity
# T - Tampering with data
# R - Repudiation of actions
# I - Information disclosure
# D - Denial of service
# E - Elevation of privilegeStatisk säkerhetstestning av applikationer (SAST)
SAST (white-box-testning) analyserar källkod, bytekod eller binärer utan att köra applikationen och söker efter kodmönster som förknippas med kända sårbarheter. SAST-verktyg kan snabbt skanna hela kodbasen och rapportera problem som hårdkodade autentiseringsuppgifter, målpunkter för SQL-injektion och osäker deserialisering. De körs i IDE:n eller CI-pipelinen och rapporterar resultat med fil- och radnummer, vilket gör åtgärdandet enkelt.
# Example: running Semgrep SAST in CI
semgrep --config=auto --error src/
# Common SAST tools:
# - Checkmarx, Veracode, Fortify (commercial)
# - Semgrep, SonarQube, Bandit (open source)
# - GitHub CodeQL (integrated with GitHub Actions)SAST-begränsningar: falska positiva resultat
En viktig begränsning hos SAST är tendensen att generera falska positiva resultat — kod flaggas som sårbar trots att den faktiskt är säker. Denna varningströtthet gör att utvecklare avfärdar resultat utan att undersöka dem. SAST-verktyg kan inte heller upptäcka problem i körningskonfigurationen, autentiseringsbrister som beror på körningsbeteende eller sårbarheter i anrop till tredjeparts-API:er. SAST är mest effektivt när det kombineras med utvecklarutbildning, så att resultaten prioriteras och bedöms korrekt.
Dynamisk säkerhetstestning av applikationer (DAST)
DAST (black-box-testning) testar en applikation som körs genom att skicka attackpayloader till dess HTTP-slutpunkter och analysera svaren efter tecken på sårbarheter. DAST kräver inte åtkomst till källkoden — applikationen testas på samma sätt som en angripare skulle göra. Metoden är särskilt effektiv för att hitta problem under körning, till exempel kringgående av autentisering, XSS som reflekteras i svar och felkonfiguration av servern. DAST-verktyg omfattar OWASP ZAP, Burp Suite och Netsparker.
# Running OWASP ZAP baseline scan against a URL
docker run -t owasp/zap2docker-stable zap-baseline.py \
-t https://staging.example.com \
-r zap-report.html
# ZAP sends probe requests and analyzes responses
# without requiring source code accessSAST jämfört med DAST: kompletterande metoder
SAST och DAST kompletterar varandra i stället för att konkurrera. SAST hittar problem på kodnivå tidigt och integreras med IDE:n, men har ingen insyn i beteendet under körning. DAST hittar sårbarheter under körning och kräver ingen källkod, men kan inte skanna kodvägar som inte aktiveras av de automatiserade sonderingarna. Genom att använda båda — SAST i CI-pipelinen och DAST mot en stagingmiljö — maximeras täckningen av sårbarheter i hela SDLC:n.
Interaktiv säkerhetstestning av applikationer (IAST)
IAST kombinerar aspekter av både SAST och DAST genom att instrumentera applikationen under körning. En IAST-agent körs inuti applikationen (på servern) och observerar kodkörningen när testtrafik passerar genom den. Den kan koppla spårad användarinmatning genom kodvägar till känsliga målpunkter och därmed hitta sårbarheter med färre falska positiva resultat än ren SAST. IAST är särskilt effektivt i Java- och .NET-applikationer och integreras naturligt i funktionella testkörningar.
Analys av programvarukomponenter (SCA)
Software Composition Analysis (SCA) identifierar bibliotek med öppen källkod och tredjepartsberoenden i en applikation och kontrollerar dem mot sårbarhetsdatabaser (NVD, OSV). Eftersom moderna applikationer kan hämta hundratals beroenden — många transitiva — är SCA-verktyg som OWASP Dependency-Check, Snyk och Renovate nödvändiga för att upptäcka kända CVE:er innan angripare utnyttjar dem i leveranskedjan.
# OWASP Dependency-Check (scans project dependencies)
dependency-check --project myapp --scan ./target --format HTML
# Snyk CLI
snyk test # finds vulnerabilities in package.json / requirements.txt
snyk monitor # continuously monitors for new CVEsSäkerhet i CI/CD-pipelines
Genom att integrera säkerhetsverktyg i CI/CD-pipelines säkerställs att ingen kod når produktion utan att först passera säkerhetskontroller. En typisk DevSecOps-pipeline kör: SAST vid varje commit, SCA när beroenden ändras, skanning av containeravbildningar före push till registret, IaC-skanning för Terraform/CloudFormation samt DAST mot en stagingdistribution. Underkända säkerhetskontroller stoppar bygget och upprätthåller en kultur där säkerhet är standard.
# GitHub Actions example — security gate in CI
jobs:
security:
steps:
- uses: actions/checkout@v4
- name: Run SAST
run: semgrep --config=auto --error .
- name: SCA check
run: snyk test --severity-threshold=high
- name: Container scan
run: trivy image myapp:latest --exit-code 1Metoder för säker kodgranskning
Automatiserade verktyg kan inte ersätta mänsklig kodgranskning med fokus på säkerhetslogik. Kollegial granskning bör verifiera att autentiserings- och auktoriseringskontroller finns på rätt platser, att felhanteringen inte läcker känslig information, att kryptografiska funktioner använder godkända algoritmer och parametrar samt att affärslogiken inte kan kringgås. Security champions i utvecklingsteam — utvecklare med säkerhetsutbildning — överbryggar gapet mellan säkerhetsteamet och utvecklingen.
Snabbtest
Testa förståelsen av CompTIA Security+ (SY0-701)-begreppen från den här lektionen.
Sammanfattning av lektionen
I den här lektionen har följande behandlats: en säker SDLC integrerar säkerhet i alla utvecklingsfaser i stället för att lägga till den i slutet, SAST analyserar kod utan körning medan DAST testar applikationer som körs och SCA identifierar sårbara beroenden med öppen källkod, medan säkerhetskontroller i CI/CD-pipelines automatiskt verkställer resultaten. Härnäst behandlas katalogtjänster med LDAP och Active Directory.
Lär dig Cloud & IT Cert Prep med en AI-lärare – gratis
Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.
- Kurser
- 150
- Lektioner
- 600
Vanliga frågor
Är lektionen ”Säker SDLC samt SAST- och DAST-verktyg” gratis?
Ja – hela texten till ”Säker SDLC samt SAST- och DAST-verktyg” kan läsas gratis här på webben. Om Ni vill öva interaktivt med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt och låsa upp resten av kursen i Cloud & IT Cert Prep, kan Ni uppgradera till CoddyKit PRO. Kursen i Cloud & IT Cert Prep innehåller totalt 4 lektioner.
Vad lär jag mig i ”Säker SDLC samt SAST- och DAST-verktyg”?
Integrera säkerhet i programvaruutvecklingens livscykel genom att använda statisk analys (SAST), dynamisk analys (DAST) och hotmodellering tidigare i utvecklingen. Ni övar på Cloud & IT Cert Prep med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.
Behöver jag någon erfarenhet för att börja lära mig Cloud & IT Cert Prep?
Du behöver inga förkunskaper. Utbildningen i Cloud & IT Cert Prep på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 4 av 4.
Hur lång tid tar lektionen ”Säker SDLC samt SAST- och DAST-verktyg”?
De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.
Kan jag skriva och köra kod i den här Cloud & IT Cert Prep-lektionen?
Ja. Varje Cloud & IT Cert Prep-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.
Alla lektioner i den här kursen
- SQL-injektion och kommandoinjektion
- Cross-Site Scripting (XSS) och CSRF
- Bristande autentisering och osäker deserialisering
- Säker SDLC samt SAST- och DAST-verktyg