meinbezirks.demeinbezirks.de
    Was ist heiß

    Wichtige Twitch Chat Commands für Mods und Streamer

    30 Juni 2025

    So finden und öffnen Sie den steam screenshot folder unter Windows 10

    30 Juni 2025

    G15tools com: Was ist das und wie funktioniert es?

    30 Juni 2025
    Facebook Twitter Instagram
    meinbezirks.demeinbezirks.de
    • Lebensstil
    • Nachrichten
    • Technik
    • Gesundheit
    • Wie zu
    • Kontakt uns
    Facebook Twitter Instagram
    meinbezirks.demeinbezirks.de
    Home » So richten Sie den Trivy Scanner in GitLab CI ein: Die vollständige Anleitung
    Technik

    So richten Sie den Trivy Scanner in GitLab CI ein: Die vollständige Anleitung

    WalterBy Walter5 Oktober 2024Updated:5 Oktober 2024Keine Kommentare5 Mins Read
    trivy
    trivy

    Containerisierung ist eine der modernen Methoden, die von Softwareentwicklungsteams zunehmend eingesetzt wird, da die DevOps-Kultur immer beliebter wird. Die meisten dieser Umgebungen profitieren von den umfangreichen Funktionen der Containerisierung wie Skalierbarkeit, Portabilität und Prozessisolierung.

    Es ist jedoch wichtig, zu überlegen, „wie sicher“ eine Software ist, bevor Sie sie an Ihre Kunden ausliefern. Wenn Sie Container-Images als Releases erstellen, besteht durch die starke Verwendung von Drittanbieter- und veralteten Bibliotheken das Risiko, dass die von Ihnen ausgelieferten Images zusätzliche Schwachstellen aufweisen. Daher besteht Bedarf an einer zuverlässigen Methode zum Scannen von Container-Images. Hier kommt Trivy ins Spiel.

    Was ist Trivy? 

    Trivy ist ein benutzerfreundliches, schnelles und umfassendes Open-Source-Tool, das von DevOps- und Sicherheitsteams zum Scannen von Containern und Artefakten auf Schwachstellen und Infrastruktur als Code (IaC) verwendet wird. Trivy wird von Aquasecurity verwaltet und bietet folgende Funktionen:

    • Funktioniert mit Containern, Dateisystemen oder sogar Git-Repositorys.
    • Ist einfach zu installieren und erfordert keine Voraussetzungen, wie etwa die Installation einer Datenbank.
    • Läuft schnell, da keine Datenbank beteiligt ist.
    • Passt zur DevSecOps-Methodik, da es in CI-Systeme (Circle CI, Jenkins, GitLab CI oder GitHub Actions) integriert werden kann.

    Erfahren Sie hier mehr über die verschiedenen Betriebssysteme und Anwendungsabhängigkeiten, die Trivy scannen kann:

    Ist Trivy kostenlos?

    Ja, Trivy ist 100 % kostenlos, da es ein Open-Source-Projekt ist. Aqua, das Team hinter Trivy, setzt sich dafür ein, dass dieses Projekt Open Source bleibt, da es die Pflege von qualitativ hochwertigem Code und die Teilnahme an anderen Open-Source-Projekten garantiert.

    So integrieren Sie Trivy in eine vorhandene GitLab CI-Pipeline

    Es gibt zwei Ansätze, den Trivy-Scanner in GitLab CI zu integrieren. Erstens bietet GitLabs CI eine auf Trivy basierende Sicherheitsscanner-Integration, wenn Sie Ihre Container mit GitLabs Container Registry hosten. Dies ist wahrscheinlich die einfachste Lösung, um Trivy in eine CI-Pipeline zu integrieren. Weitere Informationen finden Sie unter diesem Link: https://docs.gitlab.com/ee/user/application_security/container_scanning/ .

    Wenn Sie hingegen ein anderes Container-Register verwenden, in unserem Fall Google Container Registry , funktioniert es zwar etwas anders, stellt aber keine große Herausforderung dar.

    Bitte beachten Sie, dass wir in diesem Blogbeitrag die Integration von Trivy in eine vorhandene GitLab CI-Pipeline mithilfe von Google Container Registry behandeln. Wir empfehlen jedoch die Verwendung von Google Artifact Registry , dem aktuellen Angebot zum Speichern, Verwalten und Sichern Ihrer Build-Artefakte in Google Cloud. 

    Der Link zum verwendeten Repository:

    Wir haben eine Docker-Datei, die einen Apache-Server basierend auf dem Container httpd und Dateien in public-html erstellt .

    Wir haben die Erstellungsphase ausgeführt und einen schnellen Schwachstellenscan mit Trivy Standalone durchgeführt , bevor wir das Image in unser Container-Register übertragen haben.

    Einrichten eines Dienstkontos auf GCP

    Damit Trivy aus einem privaten Containerregister wie GCR scannen kann, müssen Sie ein Dienstkonto mit Leseberechtigung für das Containerregister erstellen.

    Nachfolgend finden Sie die Anweisungen, die Sie zum Erstellen der erforderlichen Berechtigungen benötigen:

    Nachdem Sie das Dienstkonto erstellt haben, müssen Sie einen Schlüssel im JSON-Format erstellen:

    Wir haben denselben Schlüssel zum Pullen/Erstellen, Pushen und Ausführen des Scan-Jobs aus Trivy verwendet.

    Exportieren Sie diesen Schlüssel, damit Sie ihn als Variable auf GitLab CI verwenden können:

     xclip -selection clipboard < /home/user/Downloads/my_key.json

    Navigieren Sie im Repository zu Einstellungen > CI/CD > Variablen :

    Erstellen Sie eine neue Variable und fügen Sie Ihren Schlüssel aus dem Xclip-Befehl ein.

    Ändern von .gitlab-ci.yml zum Integrieren des Scan-Jobs von Trivy

    Kurz bevor wir unser Image pushen, führen wir hier Trivy aus, um einen schnellen Scan auf potenzielle Schwachstellen durchzuführen. Wenn eine Schwachstelle mit dem Schweregrad „Kritisch“ vorliegt, soll die Pipeline fehlschlagen, damit wir das Problem beheben können:

    Flaggenoptionen:

    • –no-progress unterdrückt den generierten Fortschrittsbalken, um das Terminal ruhig zu halten;
    • –ignore-unfixed : Standardmäßig erkennt Trivy ungepatchte/nicht behobene Schwachstellen. Das bedeutet, dass Sie diese Schwachstellen nicht beheben können, selbst wenn Sie alle Pakete aktualisieren.
    • –severity ermöglicht Ihnen, weitere Filter festzulegen und nur schwerwiegende oder kritische Schwachstellen anzuzeigen;
    • –exit-code : Wenn der Wert auf 1 gesetzt ist, kann die gesamte Pipeline fehlschlagen, wenn eine kritische Schwachstelle gefunden wird.
    • .trivyignore wird in unserem Fall nicht verwendet, aber wenn Sie der Meinung sind, dass eine Sicherheitslücke ignoriert werden sollte.

    Berichte von Trivy anzeigen

    Ihre Pipeline läuft jetzt. Trivy kann jetzt das Container-Image scannen, das Sie gerade an GCR senden.

    Die Pipeline ist fehlgeschlagen. Lassen Sie uns den GitLab Runner überprüfen:

    Dies ist das erwartete Verhalten mit dem Flag –exit code 1 , das wir setzen, wenn eine kritische Schwachstelle gefunden wird.

    Bonus-Tipp – Scannen Sie Bilder einer Kubernetes-Ressource mit Trivy

    Trivy ermöglicht es Ihnen, die CLI dank Plugins zu erweitern, ohne die Trivy-Codebasis zu ändern. Inspiriert von kubectl und Helm finden Sie hier weitere Informationen zur Installation und Verwendung von Plugins .

    Ein hervorragend verwendbares Plugin ist trivy-plugin-kubectl, mit dem Sie einen Pod/Job oder eine Bereitstellung auf Ihrem Kubernetes scannen können.

    Mehr lesen: Beste Infrastructure as Code Tools (IaC): Die Top 15 für 2024

    Fazit

    Das Ausführen eines Sicherheitsscanners für Container-Images ist nichts, was Sie nur tun möchten, wenn Sie Ihre Änderungen in die Produktion einbinden möchten. Am besten führen Sie ihn auf einem vorgestellten Zweig aus, damit Sie Zeit haben, etwaige potenzielle Sicherheitsprobleme bei Ihrem Build zu beheben. Dies ist Teil der DevSecOps-Methodik, die in unserem Blogbeitrag behandelt wird , und wir glauben, dass es für DevOps- und Sicherheitsteams hilfreich sein wird.

    Bluelight Consulting ist ein Nearshore-DevOps- und Software-Outsourcing-Unternehmen, das Startups, SaaS und Unternehmen mit innovativen Lösungen unterstützt.

    Mit Nearshore Boost, unserem Nearshore-Softwareentwicklungsdienst, können Sie kostengünstiger als die Einstellung von Mitarbeitern im eigenen Unternehmen sicherstellen, dass Ihr Unternehmen mit einem erweiterten Team und einer größeren globalen Präsenz wettbewerbsfähig bleibt und flexibel auf die Bedürfnisse Ihrer Kunden reagieren kann.

    Erfahren Sie mehr über unsere Dienstleistungen, indem Sie noch heute eine kostenlose Beratung bei uns buchen!

    Share. Facebook Twitter Pinterest LinkedIn
    Walter
    • Website

    Die Wahl des Herausgebers

    Wichtige Twitch Chat Commands für Mods und Streamer

    30 Juni 2025

    So finden und öffnen Sie den steam screenshot folder unter Windows 10

    30 Juni 2025

    G15tools com: Was ist das und wie funktioniert es?

    30 Juni 2025

    NippyDrive: Die beste Cloud-Speicherlösung für Sicherheit und Leistung

    30 Juni 2025
    Über uns
    Über uns

    Meinbezirks ist die führende Online-Publikation für Musiknachrichten, Unterhaltung, Filme, Prominente, Mode, Wirtschaft, Technologie und andere Online-Artikel. Gegründet im Jahr 2023 und geleitet von einem Team engagierter Freiwilliger, die Musik lieben.

    Unsere Auswahl

    Wichtige Twitch Chat Commands für Mods und Streamer

    30 Juni 2025

    So finden und öffnen Sie den steam screenshot folder unter Windows 10

    30 Juni 2025

    G15tools com: Was ist das und wie funktioniert es?

    30 Juni 2025
    Spitze Bewertungen
    Urheberrechte © 2023 meinbezirks Alle Rechte vorbehalten.
    • Datenschutz Bestimmungen
    • Kontakt uns
    • Über uns

    Type above and press Enter to search. Press Esc to cancel.