CI/CD met GitHub Actions en DevOps-pijplijnen · Les

Static Application Security Testing (SAST)

Integreer SAST-tools in uw workflows om beveiligingsproblemen in uw code automatisch vóór implementatie te identificeren.

Les 3 van 411 stappen

Static Application Security Testing (SAST) is een gratis CI/CD met GitHub Actions en DevOps-pijplijnen-les op CoddyKit. Dit is les 3 van 4. Je kunt de volledige les hieronder gratis lezen en daarna in de browser praktisch oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject CI/CD met GitHub Actions en DevOps-pijplijnen. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus CI/CD met GitHub Actions en DevOps-pijplijnen bevat in totaal 4 lessen.

Wat is SAST?

Welkom bij statische beveiligingstests van toepassingen (SAST)! SAST is een cruciaal onderdeel van het vroegtijdig beveiligen van je code tijdens het ontwikkelproces.

Je kunt SAST zien als een 'white-box'-testmethode. De methode onderzoekt de broncode, bytecode of binaire code van je toepassing zonder de toepassing daadwerkelijk uit te voeren.

  • Statisch: analyseert code zonder uitvoering.
  • Toepassing: richt zich op je software.
  • Beveiliging: is erop gericht kwetsbaarheden te vinden.

Hoe SAST werkt

SAST-hulpmiddelen scannen je code op bekende patronen die op beveiligingskwetsbaarheden wijzen. Ze analyseren:

  • Gegevensstroom: hoe gegevens door je toepassing bewegen.
  • Besturingsstroom: de volgorde waarin instructies worden uitgevoerd.
  • Structurele gebreken: slechte codeerpraktijken of verkeerde configuraties.

Dankzij deze grondige analyse kun je problemen herkennen zoals SQL-injectie, cross-site scripting (XSS) en onveilige directe objectverwijzingen (IDOR).

Waarom SAST essentieel is

Door SAST in je CI/CD-pijplijn te integreren, profiteer je van aanzienlijke voordelen:

  • Vroege detectie: hiermee vind je kwetsbaarheden vóór de implementatie, wanneer ze het goedkoopst te verhelpen zijn.
  • Verbeterde beveiligingspositie: helpt ontwikkelaars vanaf het begin veiligere code te schrijven.
  • Naleving: helpt bij het voldoen aan verschillende beveiligingsstandaarden en voorschriften.

Door problemen vroegtijdig op te sporen, voorkom je dure herstelacties en mogelijke beveiligingsinbreuken later in het proces.

Veelgebruikte SAST-hulpmiddelen

Er zijn veel SAST-hulpmiddelen beschikbaar, zowel open source als commercieel. Enkele populaire voorbeelden zijn:

  • GitHub CodeQL: de native SAST-engine van GitHub.
  • SonarQube: een veelgebruikt platform voor voortdurende codekwaliteit en beveiliging.
  • Bandit: een beveiligingslinter voor Python-projecten.
  • Snyk Code: integreert beveiliging in de werkstromen van ontwikkelaars.

Voor GitHub Actions is CodeQL vaak het eenvoudigst te integreren, omdat het is ingebouwd.

SAST in GitHub Actions

Je kunt SAST-hulpmiddelen rechtstreeks integreren in je werkstromen van GitHub Actions. Dat betekent dat je code automatisch op kwetsbaarheden kan worden gescand telkens wanneer je code pusht of een pullrequest opent.

Zo krijg je voortdurend feedback en kunnen ontwikkelaars beveiligingsproblemen oplossen zodra die ontstaan, in plaats van te wachten tot een latere fase.

CodeQL instellen in een werkstroom

Bekijk een eenvoudig fragment van een werkstroom van GitHub Actions om CodeQL in te stellen. Deze actie wordt automatisch uitgevoerd bij pushes en pullrequests om je code te scannen.

De stap github/codeql-action/init@v3 bereidt de CodeQL-omgeving voor.

name: CodeQL Scan

on:
  push:
    branches: [ main ]
  pull_request:
    branches: [ main ]

jobs:
  analyze:
    runs-on: ubuntu-latest
    steps:
    - name: Checkout repository
      uses: actions/checkout@v4
    - name: Initialize CodeQL
      uses: github/codeql-action/init@v3
      with:
        languages: javascript, python
    # ... more steps for building and analyzing

De CodeQL-analyse uitvoeren

Nadat je CodeQL hebt geïnitialiseerd, moet je je code bouwen, indien van toepassing, en vervolgens de analyse uitvoeren. De stap autobuild kan veelgebruikte bouwprocessen vaak voor je afhandelen.

Ten slotte uploadt de stap analyze de resultaten naar het tabblad Security van GitHub.

    # ... previous steps from last scene
    - name: Autobuild
      uses: github/codeql-action/autobuild@v3
      # This step attempts to build your code (e.g., Maven, npm)
      # If your project has a complex build, you might need a custom build step.
    - name: Perform CodeQL Analysis
      uses: github/codeql-action/analyze@v3

SAST-rapporten begrijpen

Nadat een SAST-scan is voltooid, wordt er een rapport gegenereerd. In GitHub verschijnen bevindingen van CodeQL rechtstreeks in het tabblad 'Security' van je repository en als annotaties in pullrequests.

Deze rapporten bevatten doorgaans:

  • Type kwetsbaarheid: om wat voor soort probleem het gaat.
  • Ernstniveau: kritiek, hoog, gemiddeld of laag.
  • Locatie: het bestand en regelnummer in je code.
  • Hersteladvies: hoe je de kwetsbaarheid kunt verhelpen.

Beste werkwijzen voor SAST

Haal je het meeste uit SAST door:

  • Vroeg te integreren: scan code zo snel mogelijk.
  • Scans te automatiseren: voer SAST uit bij elke push of elk pullrequest.
  • Bevindingen te prioriteren: richt je eerst op kritieke problemen en problemen met een hoge ernst.
  • Ontwikkelaars op te leiden: help je team veelvoorkomende kwetsbaarheden te begrijpen en op te lossen.

Ook is het belangrijk om je SAST-configuratie regelmatig te controleren en te verfijnen.

SAST-kenniscontrole

Statisch testen van applicatiebeveiliging (SAST) is een krachtig hulpmiddel om je applicaties te beveiligen. Welke van de volgende opties beschrijft een belangrijk kenmerk van SAST het best?

Samenvatting: SAST in je pijplijn

In deze les hebben we statisch testen van applicatiebeveiliging (SAST) verkend. We hebben geleerd dat SAST je code analyseert zonder deze uit te voeren en al vroeg in de ontwikkelcyclus kwetsbaarheden opspoort.

We hebben besproken hoe SAST-hulpmiddelen werken, welke voordelen ze bieden en hoe je een krachtig hulpmiddel zoals GitHub CodeQL in je werkstroom van GitHub Actions integreert. Door SAST toe te passen, versterk je de beveiligingspositie van je applicatie aanzienlijk.

Gratis beginnen

Leer CI/CD met GitHub Actions en DevOps-pijplijnen met een AI-tutor — gratis

Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.

Cursussen
12
Lessen
48

Veelgestelde vragen

Is de les “Static Application Security Testing (SAST)” gratis?

Ja — de volledige tekst van “Static Application Security Testing (SAST)” kun je hier gratis op het web lezen. Als je interactief wilt oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is, en de rest van de cursus CI/CD met GitHub Actions en DevOps-pijplijnen wilt ontgrendelen, kun je upgraden naar CoddyKit PRO. De cursus CI/CD met GitHub Actions en DevOps-pijplijnen bevat in totaal 4 lessen.

Wat leer ik in “Static Application Security Testing (SAST)”?

Integreer SAST-tools in uw workflows om beveiligingsproblemen in uw code automatisch vóór implementatie te identificeren. Je oefent met CI/CD met GitHub Actions en DevOps-pijplijnen door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.

Heb ik ervaring nodig om met CI/CD met GitHub Actions en DevOps-pijplijnen te beginnen?

Ervaring vooraf is niet nodig. CI/CD met GitHub Actions en DevOps-pijplijnen op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 3 van 4.

Hoe lang duurt de les “Static Application Security Testing (SAST)”?

De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.

Kan ik code schrijven en uitvoeren in deze les over CI/CD met GitHub Actions en DevOps-pijplijnen?

Ja. Elke les over CI/CD met GitHub Actions en DevOps-pijplijnen bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.

Alle lessen in deze cursus

  1. Best practices voor beveiliging in CI/CD
  2. Secretbeheer met GitHub
  3. Static Application Security Testing (SAST)
  4. Beveiliging van dependencies en de software supply chain (SCA)
← Terug naar CI/CD met GitHub Actions en DevOps-pijplijnen