Säkerhetsskanning av containeravbildningar
Integrera verktyg för avbildningsskanning i din CI/CD-pipeline för att identifiera sårbarheter i Docker-avbildningar.
Säkerhetsskanning av containeravbildningar är en gratis lektion i Grunderna i Docker och DevOps på CoddyKit. Detta är lektion 1 av 4. Du kan läsa vilka 3 lektioner som helst i den här lärvägen kostnadsfritt i sin helhet – därefter låser CoddyKit PRO upp alla lektioner, plus praktisk övning med en inbyggd kodredigerare och en AI-lärare dygnet runt. Den ingår i lärvägen för Grunderna i Docker och DevOps, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i Grunderna i Docker och DevOps innehåller totalt 4 lektioner.
Varför skanna containeravbildningar?
Containeravbildningar utgör grunden för moderna applikationer. Precis som all annan programvara kan de innehålla dolda säkerhetsbrister. Skanning av avbildningar är en viktig metod för att hitta dessa brister innan du distribuerar dina applikationer.
Det bidrar till att säkerställa att programvaran du kör är säker och fri från kända sårbarheter.

Dolda faror i avbildningar
Vilka typer av sårbarheter kan finnas dolda i dina containeravbildningar?
- Föråldrade basavbildningar: Gamla versioner av operativsystem (som Ubuntu eller Alpine) som har kända säkerhetsbrister.
- Sårbara bibliotek: Ytterligare programvarupaket eller beroenden som du installerar i avbildningen kan ha säkerhetsbrister (CVE:er).
- Felkonfigurationer: Även om skanning främst söker efter kända CVE:er kan olämpliga inställningar också medföra risker.
Så fungerar skanningsverktyg för avbildningar
Skanningsverktyg för containeravbildningar arbetar genom att:
- Analysera lager: De granskar varje lager i din Docker-avbildning.
- Extrahera komponenter: Identifiera alla installerade paket, bibliotek och beroenden (till exempel OS-paket, Python-bibliotek och Node.js-moduler).
- Jämföra med databaser: Kontrollera dessa komponenter mot omfattande och regelbundet uppdaterade sårbarhetsdatabaser (som CVE-databaser).
- Generera rapporter: Presentera en detaljerad lista över identifierade sårbarheter, deras allvarlighetsgrad och ofta även föreslagna åtgärder.
Verktyg i praktiken
Det finns flera kraftfulla verktyg för skanning av containeravbildningar, både med öppen källkod och kommersiella:
- Trivy: Ett populärt skanningsverktyg med öppen källkod som är känt för sin användarvänlighet och omfattande täckning.
- Clair: Ett annat robust alternativ med öppen källkod, som ofta integreras i större containerregister.
- Docker Scout (via
docker scan): Inbyggt i Docker Desktop och använder Snyks sårbarhetsdatabas för att erbjuda snabba lokala skanningar.
Skanna en avbild lokalt
Låt oss utföra en snabb skanning av en vanlig Docker-avbild med det inbyggda kommandot docker scan. Det här kommandot använder Docker Scout (drivet av Snyk) för att söka efter sårbarheter.
Prova att köra det här exemplet:
docker scan nginx:latestFörstå resultaten
När en skanning har körts får du en rapport. Här är vad du ska leta efter:
- CVE-ID: En unik identifierare för sårbarheten (t.ex. CVE-2023-1234).
- Allvarlighetsgrad: Hur kritisk sårbarheten är (t.ex. Critical, High, Medium, Low).
- Paket: Den specifika programvarukomponent eller det bibliotek som innehåller felet.
- Åtgärdad version: Rapporten föreslår ofta en version av paketet eller basavbilden som åtgärdar problemet.
Skanna i arbetsflödet
Den verkliga nyttan med att skanna avbilder uppstår när det integreras i utvecklingsarbetsflödet. Genom att lägga till skanning i er pipeline för kontinuerlig integration (CI) kan ni:
- Upptäcka problem tidigt: Identifiera sårbarheter så snart ny kod checkas in eller en avbild byggs.
- Automatisera säkerhetskontroller: Göra säkerhet till en standardiserad och automatiserad del av byggprocessen.
- Förhindra driftsättning: Konfigurera CI-pipelinen så att bygget misslyckas om kritiska sårbarheter upptäcks, vilket förhindrar att osäkra avbilder når produktionen.
Automatisera skanning med CI
Här är ett konceptuellt kodexempel på hur ni kan integrera Trivy-skanning i ett GitHub Actions-arbetsflöde. Det säkerställer att varje avbild som byggs skannas automatiskt.
# .github/workflows/scan.yml
name: Image Scan
on:
push:
branches: [ main ]
jobs:
build-and-scan:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Build Docker Image
run: docker build -t my-app:latest .
- name: Run Trivy Scan
uses: aquasecurity/trivy-action@master
with:
image-ref: 'my-app:latest'
format: 'table'
exit-code: '1' # Fail build on critical issuesÅtgärda det ni hittar
Att hitta sårbarheter är bara halva arbetet – att åtgärda dem är den andra halvan! Här är vanliga strategier för åtgärd:
- Uppdatera basavbilder: Använd alltid de senaste, korrigerade versionerna av den valda basavbilden.
- Minimera beroenden: Installera bara de paket som absolut krävs för att programmet ska kunna köras.
- Byggen i flera steg: Använd Dockerfiles i flera steg för att minska den slutliga avbildens storlek och ta bort verktyg som behövs under bygget men inte vid körning.
- Korrigeringar: Tillämpa specifika säkerhetskorrigeringar om sådana finns för sårbara komponenter.
Skanningskontroll
Skanning av avbilder är en viktig del av säker containerutveckling. Låt oss testa vad ni har förstått.
Viktiga slutsatser
Ni har lärt er vilken avgörande roll säkerhetsskanning av containeravbilder spelar:
- Den identifierar kända sårbarheter (CVE:er) i basavbilder och beroenden.
- Verktyg som Trivy, Clair och Docker Scout hjälper till att automatisera processen.
- Genom att integrera skanning i CI/CD-pipelinen upptäcks problem tidigt och osäkra avbilder förhindras från att driftsättas.
- Uppdatera avbilder regelbundet och minimera beroenden för att minska attackytan.
Fortsätt att skanna era avbilder för att upprätthålla en stark säkerhetsnivå!
Lär dig Grunderna i Docker och DevOps 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
- 12
- Lektioner
- 48
Vanliga frågor
Är lektionen ”Säkerhetsskanning av containeravbildningar” gratis?
Ja – du kan läsa vilka 3 lektioner som helst i lärvägen Grunderna i Docker och DevOps, inklusive ”Säkerhetsskanning av containeravbildningar”, kostnadsfritt i sin helhet här på webben. Därefter låser CoddyKit PRO upp alla lektioner, plus interaktiv övning med en inbyggd kodredigerare och en AI-lärare dygnet runt. Kursen i Grunderna i Docker och DevOps innehåller totalt 4 lektioner.
Vad lär jag mig i ”Säkerhetsskanning av containeravbildningar”?
Integrera verktyg för avbildningsskanning i din CI/CD-pipeline för att identifiera sårbarheter i Docker-avbildningar. Ni övar på Grunderna i Docker och DevOps 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 Grunderna i Docker och DevOps?
Du behöver inga förkunskaper. Utbildningen i Grunderna i Docker och DevOps 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 1 av 4.
Hur lång tid tar lektionen ”Säkerhetsskanning av containeravbildningar”?
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 Grunderna i Docker och DevOps-lektionen?
Ja. Varje Grunderna i Docker och DevOps-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
- Säkerhetsskanning av containeravbildningar
- Containersäkerhet under körning
- Secrets-hantering och RBAC
- Nätverkspolicyer och nätverk med minsta privilegium