[{"data":1,"prerenderedAt":813},["ShallowReactive",2],{"/de-de/blog/guide-to-fulfilling-soc-2-security-requirements-with-gitlab":3,"navigation-de-de":39,"banner-de-de":453,"footer-de-de":463,"blog-post-authors-de-de-Fernando Diaz":699,"blog-related-posts-de-de-guide-to-fulfilling-soc-2-security-requirements-with-gitlab":713,"blog-promotions-de-de":751,"next-steps-de-de":803},{"id":4,"title":5,"authorSlugs":6,"body":8,"categorySlug":9,"config":10,"content":14,"description":8,"extension":27,"isFeatured":12,"meta":28,"navigation":12,"path":29,"publishedDate":20,"seo":30,"stem":35,"tagSlugs":36,"__hash__":38},"blogPosts/de-de/blog/guide-to-fulfilling-soc-2-security-requirements-with-gitlab.yml","Guide To Fulfilling Soc 2 Security Requirements With Gitlab",[7],"fernando-diaz",null,"security",{"slug":11,"featured":12,"template":13},"guide-to-fulfilling-soc-2-security-requirements-with-gitlab",true,"BlogPost",{"title":15,"description":16,"authors":17,"heroImage":19,"date":20,"body":21,"category":9,"tags":22},"GitLab-Leitfaden: SOC-2-Sicherheitsanforderungen erfüllen","Verstehe die Anwendungssicherheitsfunktionen der DevSecOps-Plattform von GitLab, die den Anforderungen von System and Organization Controls 2 entsprechen.",[18],"Fernando Diaz","https://res.cloudinary.com/about-gitlab-com/image/upload/v1750099576/Blog/Hero%20Images/Blog/Hero%20Images/AdobeStock_1172300481_IGPi3TS4VzFgcqhvEdBlR_1750099575518.jpg","2025-01-22","Für Unternehmen, die mit vertraulichen Kundendaten arbeiten, ist es nicht nur ein bewährtes Vorgehen, die SOC 2 (System and Organization Controls 2) einzuhalten, sondern ist oft sogar eine Notwendigkeit. SOC 2 ist ein strenger Prüfungsstandard, der vom American Institute of Certified Public Accountants entwickelt wurde, mit dem Serviceunternehmen hinsichtlich ihrer Sicherheit, Verfügbarkeit, Prozessintegrität, Vertraulichkeit und ihres Datenschutzes bewertet werden.\n\n  SOC 2 ist zwar rechtlich nicht bindend, wird aber zunehmend wichtig, unter anderem deswegen, weil Verstöße gegen den Standard immer wieder in den Nachrichten zu finden sind. Durch die Einhaltung der SOC-2-Vorgaben können Kund(inn)en Vertrauen zu Serviceunternehmen aufbauen, da sie sich sicher sein können, dass ihre Daten entsprechend sicher gespeichert werden und die Sicherheitsmaßnahmen von einer externen Stelle geprüft wurden.\n\nIn diesem Leitfaden sehen wir uns die Voraussetzungen für eine SOC-2-Compliance an und erläutern, wie GitLab deinem Unternehmen dabei hilft, die höchsten Standards für Anwendungssicherheit einzuhalten.\n\n## Welche Anforderungen werden von SOC 2 festgelegt?\n\nDer Compliance-Prozess umfasst ein Audit durch unabhängige Auditor(inn)en, die die Konzeption und betriebliche Effektivität der Sicherheitsmaßnahmen eines Unternehmens bewerten. Dieser Prozess kann sehr kostspielig sein, und viele Unternehmen sind nicht ausreichend auf ein Audit vorbereitet. Da der SOC-2-Auditprozess normalerweise rund ein Jahr dauert, ist es wichtig, bereits vor dem Audit effiziente Prozesse einzuführen.\n\nUm SOC-2-Compliance zu erreichen, muss ein Unternehmen die Anforderungen der Trust Services Criteria erfüllen:\n\n| Kriterium | Anforderungen |\n| :---- | :---- |\n| Sicherheit | - Implementierung von Kontrollen gegen unautorisierten Zugriff \u003Cbr> - Einführung von Vorgehensweisen zum Erkennen und Mindern von Risiken\u003Cbr> - Einrichtung von Systemen, um Sicherheitsvorfälle zu erkennen und zu beheben |\n| Verfügbarkeit | - Sicherstellung, dass Systeme wie vereinbart für den Betrieb zugänglich sind\u003Cbr> - Überwachung der aktuellen Nutzung und Kapazität \u003Cbr> - Identifizierung und Behebung von Umgebungsbedrohungen, die sich auf die Systemverfügbarkeit auswirken können |\n| Prozessintegrität | - Erfassung genauer Angaben zu Systemeingaben und -ausgaben \u003Cbr> - Implementierung von Verfahren, um Systemfehler schnell zu identifizieren und zu korrigieren \u003Cbr> - Festlegung von Prozessaktivitäten, um sicherzustellen, dass die Produkte und Dienstleistungen den Spezifikationen entsprechen |\n| Vertraulichkeit | - Identifizierung und Schutz vertraulicher Informationen \u003Cbr> - Einführung von Richtlinien für Datenaufbewahrungszeiträume \u003Cbr> - Implementierung von Sicherheitsmaßnahmen zur Zerstörung vertraulicher Daten nach Ablauf der Aufbewahrungsfrist |\n| Datenschutz | - Einholen von Zustimmung vor der Erfassung vertraulicher personenbezogener Daten \u003Cbr> - Offenlegung der Datenschutzrichtlinien in klarer, einfacher Sprache \u003Cbr> - Erfassung der Daten nur für rechtmäßige Zwecke und aus vertrauenswürdigen Quellen |\n\n\nBeachte, dass diese Anforderungen nicht einmalig zu erfüllen sind, sondern eher ein kontinuierlicher Prozess sind. Die Auditor(inn)en kontrollieren die Effektivität im Laufe der Zeit.\n\n## So erreichst du die Sicherheitsanforderungen und behältst sie bei\n\nGitLab bietet mehrere standardmäßige Funktionen, mit denen du sicherstellen kannst, dass deine SOC-2-Sicherheitsanforderungen erfüllt werden:\n\n| Sicherheitsanforderung | Relevante Funktion |\n| :---- | :--- |\n| Implementierung von Kontrollen gegen unautorisierten Zugriff | - Vertrauliche Tickets und Merge Requests \u003Cbr> - Benutzerdefinierte Rollen und granulare Berechtigungen \u003Cbr> - Sicherheitsrichtlinien \u003Cbr> - Verifizierte Commits \u003Cbr> - Signierte Container-Images \u003Cbr> - Code-Eigentümer(innen) \u003Cbr> - Geschützte Branches |\n| Einrichten von Systemen, um Sicherheitsvorfälle zu erkennen und zu beheben | - Sicherheitslücken-Scans \u003Cbr> - Merge-Request-Sicherheitswidget \u003Cbr> - Compliance-Center für Sicherheitslücken-Einblicke \u003Cbr> - Audit-Events \u003Cbr> - Abhängigkeitsliste für Sicherheitslückenbericht \u003Cbr> - KI: GitLab Duo Vulnerability Explanation \u003Cbr> - KI: GitLab Duo Vulnerability Resolution |\n| Einführung von Vorgehensweisen zum Erkennen und Mindern von Risiken | Alle oben genannten Tools können von Sicherheitsteams verwendet werden, um Prozesse dafür zu entwickeln, wie vorzugehen ist, wenn Sicherheitslücken erkannt werden und wie sie zu beheben sind. |\n\n\u003Cbr>\n\nSehen wir uns diese Abschnitte und die dazugehörigen Sicherheitsfunktionen für diese Anforderungen nun genauer an. Beachte, dass ein [GitLab-Ultimate-Abonnement](https://about.gitlab.com/de-de/free-trial/) und die richtigen Rollen und Berechtigungen nötig sind, um viele der aufgelisteten Funktionen nutzen zu können. Weitere Informationen findest du in der entsprechenden Dokumentation.\n\n## Implementiere Kontrollen zum Schutz vor unbefugtem Zugriff\n\nEs ist wichtig, robuste Zugriffskontrollen zu implementieren, um die Assets eines Unternehmens zu schützen, die rechtliche Compliance sicherzustellen, die betriebliche Kontinuität zu gewährleisten und das Vertrauen zu fördern. Mit GitLab kannst du Kontrollen implementieren, um das [Prinzip der geringsten Privilegien (nur in englischer Sprache verfügbar)](https://about.gitlab.com/blog/the-ultimate-guide-to-least-privilege-access-with-gitlab/) zu befolgen und vor unbefugtem Zugriff zu schützen. Wir werden uns kurz folgende Themen ansehen:\n\n* [Sicherheitsrichtlinien](#security-policies)\n\n* [Benutzerdefinierte Rollen und granulare Berechtigungen](#custom-roles-and-granular-permissions)\n\n* [Schutz von Branches und Code-Eigentümer(innen)](#branch-protections-and-codeowners)\n\n* [Verifizierte Commits](#verified-commits)\n\n### Sicherheitsrichtlinien\n\nDie Sicherheitsrichtlinien von GitLab werden auch als Leitlinien bezeichnet und ermöglichen es Sicherheits- und Compliance-Teams, im gesamten Unternehmen konsistente Kontrollen einzuführen. Dies trägt dazu bei, Sicherheitsvorfälle zu vermeiden, die Compliance-Standards einzuhalten und Risiken zu reduzieren, indem bewährte Vorgehensweisen hinsichtlich der Sicherheit automatisch und im großen Maßstab erzwungen werden.\n\n![Merge-Request-Approvalrichtlinien in Aktion](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750099597/Blog/Content%20Images/Blog/Content%20Images/merge_request_approval_policy_aHR0cHM6_1750099596925.png)\n\n\u003Ccenter>\u003Ci>Merge-Request-Approvalrichtlinien in Aktion\u003C/i>\u003C/center>\u003Cbr>\n\nDie folgenden Arten von Richtlinien sind verfügbar:\n\n* Scan-Ausführungsrichtlinie: Erzwinge Sicherheitsscans als Teil einer Pipeline oder nach einem festgelegten Zeitplan\n\n* Merge-Request-Approvalrichtlinie: Erzwinge Einstellungen und Approvalregeln auf Projektebene basierend auf den Scanergebnissen\n\n* Pipeline-Ausführungsrichtlinie: Erzwinge CI/CD-Jobs als Teil von Projekt-Pipelines\n\n* Sicherheitslücken-Managementrichtlinie: Automatisiere Workflows für das Sicherheitslücken-Management\n\nHier ist ein Beispiel, wie die Compliance mit einer Pipeline-Ausführungsrichtlinie sichergestellt werden kann:\n\n1. Erstelle ein Projekt, das mehrere Compliance-Jobs enthält. Ein Beispiel für einen Job kann die Überprüfung der Berechtigungen von bereitgestellten Dateien sein. Diese Jobs sollten so allgemein gehalten sein, dass sie auf mehrere Anwendungen angewendet werden können.\n\n2. Beschränke die Berechtigungen des Projekts auf Sicherheits-/Compliance-Beauftragte. Erlaube Entwickler(inne)n nicht, Jobs zu entfernen. Dies ermöglicht eine Aufgabentrennung.\n\n3. Füge die Compliance-Jobs gesammelt in die Projekte ein, in denen sie benötigt werden. Erzwinge, dass sie immer ausgeführt werden, aber erlaube Approvals durch die Teamleitung, um die Entwicklung nicht zu blockieren. Dadurch wird sichergestellt, dass Compliance-Jobs immer ausgeführt werden und nicht von Entwickler(inne)n entfernt werden können. So bleibt deine Umgebung konform.\n\n> ##### Erfahre in unserer [Dokumentation zu Sicherheitsrichtlinien (nur in englischer Sprache verfügbar)](https://docs.gitlab.com/user/application_security/policies/), wie du Sicherheitsrichtlinien erstellen kannst.\n\n### Benutzerdefinierte Rollen und granulare Berechtigungen\n\nMit benutzerdefinierten Berechtigungen in GitLab können Unternehmen verfeinerte Zugriffskontrollen entwickeln, die über die standardmäßigen, rollenbasierten Berechtigungen hinausgehen. Das hat unter anderem folgende Vorteile:\n\n* Genauere Zugriffskontrolle\n\n* Bessere Sicherheits-Compliance\n\n* Reduziertes Risiko für versehentlichen Zugriff\n\n* Optimierte Benutzerverwaltung\n\n* Support für komplexe Unternehmensstrukturen\n\n![Benutzerdefinierte Rollen in GitLab](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750099597/Blog/Content%20Images/Blog/Content%20Images/custom_roles_aHR0cHM6_1750099596926.png)\n\n\u003Ccenter>\u003Ci>Rollen- und Berechtigungseinstellungen, einschließlich benutzerdefinierter Rollen\u003C/i>\u003C/center>\n\n> ##### Erfahre in unserer [Dokumentation zu benutzerdefinierten Rollen (nur in englischer Sprache verfügbar)](https://docs.gitlab.com/user/custom_roles/), wie du benutzerdefinierte Rollen mit granularen Berechtigungen erstellst.\n\n### Schutz von Branches und Code-Eigentümer(innen)\n\nGitLab hilft dir mit zwei wichtigen Funktionen, noch besser zu kontrollieren, wer deinen Code ändern kann:\n\n* Mit Branch Protection kannst du Regeln festlegen, wer bestimmte Branches aktualisieren darf, z. B. dass Approvals vor dem Zusammenführen von Änderungen nötig sind.\n\n* Mit Code Ownership werden automatisch die richtigen Personen gefunden, die Codeänderungen überprüfen dürfen, indem Dateien mit ihren zugewiesenen Eigentümer(inne)n abgeglichen werden.\n\nZusammen tragen diese Funktionen dazu bei, dass dein Code sicher und hochwertig ist, indem garantiert wird, dass die richtigen Personen Änderungen überprüfen und genehmigen.\n\n![Geschützte Branches](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750099597/Blog/Content%20Images/Blog/Content%20Images/protected_branches_aHR0cHM6_1750099596928.png)\n\n\u003Ccenter>\u003Ci>Einstellungen für geschützte Branches\u003C/i>\u003C/center>\n\n> ##### Erfahre in der Dokumentation (nur in englischer Sprache verfügbar) zu [geschützten Branches](https://docs.gitlab.com/user/project/repository/branches/protected/) und [Code-Eigentümer(inne)n](https://docs.gitlab.com/user/project/codeowners/), wie du geschützte Branches sowie mit Code-Eigentümer(inne)n erstellst.\n\n### Verifizierte Commits\n\nWenn du deine Commits digital signierst, beweist du, dass sie wirklich von dir stammen und nicht von jemandem, der sich als dich ausgibt. Stell dir eine digitale Signatur wie einen einzigartigen Stempel vor, den nur du erstellen kannst. Wenn du deinen öffentlichen GPG-Schlüssel in GitLab hochlädst, kann dieser Stempel überprüft werden. Wenn der Stempel übereinstimmt, markiert GitLab deinen Commit als `Verified`. Du kannst dann Regeln einrichten, um nicht signierte Commits abzulehnen oder alle Commits von Benutzer(innen) zu blockieren, die ihre Identität nicht verifiziert haben.\n\n![Commit mit verifizierter Signatur](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750099597/Blog/Content%20Images/Blog/Content%20Images/signed_commit_aHR0cHM6_1750099596929.png)\n\n\u003Ccenter>\u003Ci>Commit mit verifizierter Signatur\u003C/i>\u003C/center>\u003Cbr>\n\nCommits können mit folgenden Signaturen versehen werden:\n\n* SSH-Schlüssel\n\n* GPG-Schlüssel\n\n* Persönliches x.509-Zertifikat\n\n> ##### Weitere Informationen zu verifizierten Commits findest du in unserer [Dokumentation zu signierten Commits (nur in englischer Sprache verfügbar)](https://docs.gitlab.com/user/project/repository/signed_commits/).\n\n## Einrichtung von Systemen zur Erkennung und Behebung von Sicherheitsvorfällen\n\nUm eine robuste Sicherheitslage beizubehalten, ist es unerlässlich, Systeme einzurichten, die Sicherheitsvorfälle erkennen und beheben. So stellst du die Einhaltung von Vorschriften sicher, minimierst potenzielle Schäden und ermöglichst es deinem Unternehmen, effektiv auf die kontinuierliche Weiterentwicklung der Bedrohungslandschaft zu reagieren.\n\nGitLab bietet Sicherheitsscans und Sicherheitslückenverwaltung für den gesamten Anwendungslebenszyklus. Wir werden uns kurz folgende Aspekte ansehen:\n\n* [Sicherheitsscans und Sicherheitslückenverwaltung](#security-scanning-and-vulnerability-management)\n\n* [Software-Stückliste](#software-bill-of-materials)\n\n* [System-Audits und Reviews der Sicherheitslage](#system-auditing-and-security-posture-review)\n\n* [Übersicht über Compliance und Sicherheitslage](#compliance-and-security-posture-oversight)\n\n### Sicherheitsscans und Verwaltung von Sicherheitslücken\n\nGitLab bietet zahlreiche verschiedene Sicherheitsscanner für den gesamten Lebenszyklus deiner Anwendung:\n\n* Statische Anwendungssicherheitstests (SAST)\n\n* Dynamische Anwendungssicherheitstests (DAST)\n\n* Container-Scans\n\n* Abhängigkeitssuche\n\n* IaC-Scans (Infrastructure as Code)\n\n* Abdeckungsgesteuertes Fuzzing\n\n* Web-API-Fuzzing\n\n  Diese Scanner können über Vorlagen zu deiner Pipeline hinzugefügt werden. Um beispielsweise SAST- und Abhängigkeitssuche-Jobs in der Testphase auszuführen, kannst du einfach den folgenden Code in deine .gitlab-ci.yml-Datei einfügen:\n\n```yaml\nstages:   - test\n\ninclude:   \n  - template: Jobs/Dependency-Scanning.gitlab-ci.yml   \n  - template: Jobs/SAST.gitlab-ci.yml   \n```\n\nDiese Jobs können über Umgegungsvariablen und mit der GitLab-Job-Syntax vollständig angepasst werden. Sobald eine Pipeline gestartet wird, werden die Sicherheitsscanner ausgeführt und erkennen Sicherheitslücken im Diff zwischen dem aktuellen Branch und dem Zielbranch. Die Sicherheitslücke kann in einem Merge Request (MR) angezeigt werden, der eine detaillierte Übersicht bietet, bevor der Code mit dem Zielbranch zusammengeführt wird. Der MR zeigt die folgenden Informationen zur Sicherheitslücke an:\n\n* Beschreibung\n\n* Status\n\n* Schweregrad\n\n* Evidenz\n\n* Identifikatoren\n\n* URL (falls zutreffend)\n\n* Anfrage/Antwort (falls zutreffend)\n\n* Reproduktions-Asset (falls zutreffend)\n\n* Schulung (falls zutreffend)\n\n* Code-Flow (bei erweiterten SAST)\n\n![MR-Ansicht der eingeführten Sicherheitslücke](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750099597/Blog/Content%20Images/Blog/Content%20Images/no_sql_injection_vulnerability_mr_view_aHR0cHM6_1750099596931.png)\n\n\u003Ccenter>\u003Ci>MR-Ansicht der eingeführten Sicherheitslücke\u003C/i>\u003C/center>\u003Cbr>\n\nEntwickler(innen) können diese Daten verwenden, um Sicherheitslücken zu beheben, ohne die Workflows des Sicherheitsteams zu verlangsamen. Sie können Sicherheitslücken mit einer Begründung auch verwerfen, um den Überprüfungsprozess zu beschleunigen, oder ein vertrauliches Ticket erstellen, um die Sicherheitslücke zu verfolgen.\n\nWenn der Code in einem MR mit dem Standard-Branch (normalerweise auf Produktionsebene) zusammengeführt wird, wird der Sicherheitslückenbericht mit den Ergebnissen des Sicherheitsscans gefüllt. Diese Ergebnisse können von Sicherheitsteams verwendet werden, um die in der Produktion gefundenen Sicherheitslücken zu verwalten und zu kategorisieren.\n\n![Sicherheitslückenbericht mit Batch-Status-Einstellung](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750099597/Blog/Content%20Images/Blog/Content%20Images/vulnerability_report_aHR0cHM6_1750099596936.png)\n\n\u003Ccenter>\u003Ci>Sicherheitslückenbericht mit Batch-Status-Einstellung\u003C/i>\u003C/center>\u003Cbr>\n\nWenn du im Sicherheitslückenbericht auf eine Sicherheitslückenbeschreibung klickst, wird dir die Sicherheitslückenseite angezeigt, die die gleichen Sicherheitslückendaten wie der MR enthält, sodass bei der Bewertung der Auswirkungen und der Behebung der Sicherheitslücke nur eine einzige Quelle der Wahrheit gilt. Auf der Seite der Sicherheitslücke kannst du die KI-Funktionen von [GitLab Duo](https://about.gitlab.com/de-de/gitlab-duo-agent-platform/) nutzen, um dir die Sicherheitslücke erklären zu lassen und einen MR zur Behebung zu erstellen, wodurch die Zeit bis zur Lösung verkürzt wird.\n\n> ##### Weitere Informationen zu den in GitLab enthaltenen Sicherheitsscans und zum Umgang mit Sicherheitslücken findest du in unserer [Dokumentation zur Anwendungssicherheit (nur in englischer Sprache verfügbar)](https://docs.gitlab.com/user/application_security/).\n\n### Software-Stückliste\n\nGitLab kann eine detaillierte Liste von allen Komponenten erstellen, die deine Software verwendet – sozusagen eine „Zutatenliste“ für deinen Code. Diese Liste, die als Software-Stückliste ([SBOM](https://about.gitlab.com/de-de/blog/the-ultimate-guide-to-sboms/)) bezeichnet wird, zeigt dir den gesamten externen Code, von dem dein Projekt abhängig ist, einschließlich der Teile, die du direkt verwendest, und deren eigener Abhängigkeiten. Für jedes Element kannst du sehen, welche Version du verwendest, welche Lizenz es hat und ob es bekannte Sicherheitsprobleme gibt. So kannst du den Überblick über den Inhalt deiner Software behalten und potenzielle Risiken erkennen.\n\n![Liste der Abhängigkeiten auf Gruppenebene (SBOM)](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750099597/Blog/Content%20Images/Blog/Content%20Images/sbom_aHR0cHM6_1750099596937.png)\n\n\u003Ccenter>\u003Ci>Liste der Abhängigkeiten auf Gruppenebene (SBOM)\u003C/i>\u003C/center>\n\n> ##### Erfahre in unserer [Dokumentation zur Liste der Abhängigkeiten (nur in englischer Sprache verfügbar)](https://docs.gitlab.com/user/application_security/dependency_list/), wie du auf die Liste der Abhängigkeiten zugreifen und sie verwenden kannst.\n\n### System-Audits und Überprüfung der Sicherheitslage\n\nGitLab verfolgt alles, was in deinem System passiert, z. B. wer wann welche Änderungen vorgenommen hat. Stell dir das wie eine Überwachungskamera für deinen Code vor. Diese Aufzeichnungen helfen dir:\n\n* verdächtige Aktivitäten zu erkennen\n\n* den regulatorischen Behörden zu zeigen, dass du die Regeln befolgst\n\n* zu erkennen, was passiert ist, wenn etwas schiefgelaufen ist\n\n* zu sehen, wie deine Teams GitLab verwenden\n\nAll diese Informationen werden an einem Ort gespeichert und können dadurch bei Bedarf einfach überprüft und angesehen werden. Du kannst zum Beispiel Audit Events verwenden, um Folgendes zu verfolgen:\n\n* Wer hat die Berechtigungsstufe bestimmter Benutzer(innen) für ein GitLab-Projekt geändert und wann?\n\n* Wer hat neue Benutzer(innen) hinzugefügt oder Benutzer(innen) entfernt und wann?\n\n![Audit Events auf Projektebene](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750099597/Blog/Content%20Images/Blog/Content%20Images/audit_events_aHR0cHM6_1750099596938.png)\n\n\u003Ccenter>\u003Ci>Audit Events auf Projektebene\u003C/i>\u003C/center>\n\n> ##### Weitere Informationen zu Audit Events findest du in der [Dokumentation zu Audit Events (nur in englischer Sprache verfügbar)](https://docs.gitlab.com/user/compliance/audit_events/).\n\n## Compliance und Überwachung der Sicherheitslage\n\nDas Sicherheits-Dashboard von GitLab fungiert als Kontrollraum, an dem alle deine Sicherheitsrisiken an einem Ort anzeigt werden. Anstatt verschiedene Sicherheitstools einzeln zu überprüfen, kannst du alle Ergebnisse zusammen auf einem Bildschirm sehen. So kannst du Sicherheitsprobleme in all deinen Projekten leicht erkennen und beheben.\n\n![Sicherheits-Dashboard auf Gruppenebene](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750099597/Blog/Content%20Images/Blog/Content%20Images/security_dashboard_aHR0cHM6_1750099596939.png)\n\n\u003Ccenter>\u003Ci>Sicherheits-Dashboard auf Gruppenebene\u003C/i>\u003C/center>\n\n> ##### Weitere Informationen zu Sicherheits-Dashboards findest du in unserer [Dokumentation zum Sicherheits-Dashboard (nur in englischer Sprache verfügbar)](https://docs.gitlab.com/user/application_security/security_dashboard/).\n\n## Einführung von Verfahren zur Identifizierung und Minderung von Risiken\n\nSicherheitslücken durchlaufen einen bestimmten Lebenszyklus. Ein Teil des Prozesses kann beispielsweise darin bestehen, dass für jeden anfälligen Code, der mit geschützten Branches zusammengeführt werden soll, mittels der Sicherheitsrichtlinien festgelegt wird, dass ein Approval erforderlich ist. Dann kann festgelegt werden, dass in der Produktion entdeckter anfälliger Code priorisiert, bewertet, behoben und anschließend validiert werden muss:\n\n* Die Kriterien für die Priorisierung können sich nach dem Schweregrad der Sicherheitslücke richten, der von den GitLab-Scannern erkannt wird.\n\n* Die Bewertung kann anhand der von GitLab Duo Vulnerability Explanation bereitgestellten Details zur Ausnutzung erfolgen.\n\n* Sobald die Sicherheitslücke behoben ist, kann sie mit den integrierten Regressionstests und Scannern von GitLab validiert werden.\n\nAuch wenn die Anforderungen jedes Unternehmens unterschiedlich sind, können mit GitLab als Plattform Risiken schnell identifiziert und mit geringerem Risiko behoben werden, als bei der Nutzung unterschiedlicher Tools der Fall wäre.\n\n### Best Practices für die SOC-2-Compliance\n\n* Etabliere eine starke Sicherheitskultur: Fördere Sicherheitsbewusstsein und Verantwortlichkeit in deinem gesamten Unternehmen.\n\n* Dokumentiere alles: Führe eine gründliche Dokumentation der Richtlinien, Verfahren und Kontrollen.\n\n* Automatisiere, wo möglich: Verwende Automatisierungstools, um Compliance-Prozesse zu optimieren und Fehler zu reduzieren.\n\n* Kommuniziere effektiv: Halte die Stakeholder(innen) über deine Compliance-Bemühungen auf dem Laufenden.\n\n* Hol dir fachkundige Beratung: Überlege, mit qualifizierten Berater(inne)n zusammenzuarbeiten, die dich auf deinem Weg zur SOC-2-Konformität unterstützen.\n\nEs ist ein bedeutendes Vorhaben, SOC-2-Compliance zu erreichen, aber die Vorteile sind unbestreitbar. Indem du dein Engagement für Anwendungssicherheit und betriebliche Exzellenz zeigst, fassen deine Kund(inn)en Vertrauen zu dir, verbesserst du deinen Ruf und behältst einen Wettbewerbsvorteil auf dem Markt.\n\n## Weiterlesen\n\nSieh dir die folgenden Ressourcen an, um mehr über GitLab und darüber zu erfahren, wie wir dich auf deinem Weg zur SOCv2-Compliance unterstützen:\n\n* [GitLab Ultimate](https://about.gitlab.com/de-de/pricing/ultimate/)\n\n* [Sicherheits- und Compliance-Lösungen von GitLab](https://about.gitlab.com/de-de/solutions/application-security-testing/)\n\n* [Dokumentation zur Anwendungssicherheit mit GitLab](https://docs.gitlab.com/user/application_security/)\n\n* [Tutorial-Projekt für DevSecOps mit GitLab (nur in englischer Sprache verfügbar)](https://gitlab.com/gitlab-da/tutorials/security-and-governance/devsecops/simply-vulnerable-notes)",[23,9,24,25,26],"tutorial","DevSecOps platform","features","product","yml",{},"/de-de/blog/guide-to-fulfilling-soc-2-security-requirements-with-gitlab",{"ogTitle":15,"ogImage":19,"ogDescription":16,"ogSiteName":31,"noIndex":32,"ogType":33,"ogUrl":34,"title":15,"canonicalUrls":34,"description":16},"https://about.gitlab.com",false,"Artikel","https://about.gitlab.com/blog/guide-to-fulfilling-soc-2-security-requirements-with-gitlab","de-de/blog/guide-to-fulfilling-soc-2-security-requirements-with-gitlab",[23,9,37,25,26],"devsecops-platform","VOf3yCu5T54bZKapJf6jC5InTj_R2X0RJg-ekj7dKYc",{"data":40},{"logo":41,"freeTrial":46,"sales":51,"login":56,"items":61,"search":371,"minimal":405,"duo":423,"switchNav":432,"pricingDeployment":443},{"config":42},{"href":43,"dataGaName":44,"dataGaLocation":45},"/de-de/","gitlab logo","header",{"text":47,"config":48},"Kostenlose Testversion anfordern",{"href":49,"dataGaName":50,"dataGaLocation":45},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/de-de&glm_content=default-saas-trial/","free trial",{"text":52,"config":53},"Vertrieb kontaktieren",{"href":54,"dataGaName":55,"dataGaLocation":45},"/de-de/sales/","sales",{"text":57,"config":58},"Anmelden",{"href":59,"dataGaName":60,"dataGaLocation":45},"https://gitlab.com/users/sign_in/","sign in",[62,89,186,191,292,352],{"text":63,"config":64,"cards":66},"Plattform",{"dataNavLevelOne":65},"platform",[67,73,81],{"title":63,"description":68,"link":69},"Die intelligente Orchestrierungsplattform für DevSecOps",{"text":70,"config":71},"Die Plattform erkunden",{"href":72,"dataGaName":65,"dataGaLocation":45},"/de-de/platform/",{"title":74,"description":75,"link":76},"GitLab Duo Agent Platform","Agentische KI für den gesamten Software-Lebenszyklus",{"text":77,"config":78},"Lerne GitLab Duo kennen",{"href":79,"dataGaName":80,"dataGaLocation":45},"/de-de/gitlab-duo-agent-platform/","gitlab duo agent platform",{"title":82,"description":83,"link":84},"Warum GitLab?","Erfahre, warum sich Unternehmen für GitLab entscheiden",{"text":85,"config":86},"Mehr erfahren",{"href":87,"dataGaName":88,"dataGaLocation":45},"/de-de/why-gitlab/","why gitlab",{"text":90,"left":12,"config":91,"link":93,"lists":97,"footer":168},"Produkt",{"dataNavLevelOne":92},"solutions",{"text":94,"config":95},"Alle Lösungen anzeigen",{"href":96,"dataGaName":92,"dataGaLocation":45},"/de-de/solutions/",[98,123,146],{"title":99,"description":100,"link":101,"items":106},"Automatisierung","CI/CD und Automatisierung zur Beschleunigung der Bereitstellung",{"config":102},{"icon":103,"href":104,"dataGaName":105,"dataGaLocation":45},"AutomatedCodeAlt","/de-de/solutions/delivery-automation/","automated software delivery",[107,111,114,119],{"text":108,"config":109},"CI/CD",{"href":110,"dataGaLocation":45,"dataGaName":108},"/de-de/solutions/continuous-integration/",{"text":74,"config":112},{"href":79,"dataGaLocation":45,"dataGaName":113},"gitlab duo agent platform - product menu",{"text":115,"config":116},"Quellcodeverwaltung",{"href":117,"dataGaLocation":45,"dataGaName":118},"/de-de/solutions/source-code-management/","Source Code Management",{"text":120,"config":121},"Automatische Softwarebereitstellung",{"href":104,"dataGaLocation":45,"dataGaName":122},"Automated software delivery",{"title":124,"description":125,"link":126,"items":131},"Sicherheit","Entwickle Code schneller ohne Abstriche bei der Sicherheit",{"config":127},{"href":128,"dataGaName":129,"dataGaLocation":45,"icon":130},"/de-de/solutions/application-security-testing/","security and compliance","ShieldCheckLight",[132,136,141],{"text":133,"config":134},"Anwendungssicherheitstests",{"href":128,"dataGaName":135,"dataGaLocation":45},"Application security testing",{"text":137,"config":138},"Schutz der Software-Lieferkette",{"href":139,"dataGaLocation":45,"dataGaName":140},"/de-de/solutions/supply-chain/","Software supply chain security",{"text":142,"config":143},"Software-Compliance",{"href":144,"dataGaName":145,"dataGaLocation":45},"/de-de/solutions/software-compliance/","software compliance",{"title":147,"link":148,"items":153},"Auswertung",{"config":149},{"icon":150,"href":151,"dataGaName":152,"dataGaLocation":45},"DigitalTransformation","/de-de/solutions/visibility-measurement/","visibility and measurement",[154,158,163],{"text":155,"config":156},"Sichtbarkeit und Auswertung",{"href":151,"dataGaLocation":45,"dataGaName":157},"Visibility and Measurement",{"text":159,"config":160},"Wertstrommanagement",{"href":161,"dataGaLocation":45,"dataGaName":162},"/de-de/solutions/value-stream-management/","Value Stream Management",{"text":164,"config":165},"Analysen und Einblicke",{"href":166,"dataGaLocation":45,"dataGaName":167},"/de-de/solutions/analytics-and-insights/","Analytics and insights",{"title":169,"items":170},"GitLab für",[171,176,181],{"text":172,"config":173},"Enterprise",{"href":174,"dataGaLocation":45,"dataGaName":175},"/de-de/enterprise/","enterprise",{"text":177,"config":178},"Kleinunternehmen",{"href":179,"dataGaLocation":45,"dataGaName":180},"/de-de/small-business/","small business",{"text":182,"config":183},"Öffentlicher Sektor",{"href":184,"dataGaLocation":45,"dataGaName":185},"/de-de/solutions/public-sector/","public sector",{"text":187,"config":188},"Preise",{"href":189,"dataGaName":190,"dataGaLocation":45,"dataNavLevelOne":190},"/de-de/pricing/","pricing",{"text":192,"config":193,"link":195,"lists":199,"feature":279},"Ressourcen",{"dataNavLevelOne":194},"resources",{"text":196,"config":197},"Alle Ressourcen anzeigen",{"href":198,"dataGaName":194,"dataGaLocation":45},"/de-de/resources/",[200,233,251],{"title":201,"items":202},"Erste Schritte",[203,208,213,218,223,228],{"text":204,"config":205},"Installieren",{"href":206,"dataGaName":207,"dataGaLocation":45},"/de-de/install/","install",{"text":209,"config":210},"Kurzanleitungen",{"href":211,"dataGaName":212,"dataGaLocation":45},"/de-de/get-started/","quick setup checklists",{"text":214,"config":215},"Lernen",{"href":216,"dataGaLocation":45,"dataGaName":217},"https://university.gitlab.com/","learn",{"text":219,"config":220},"Produktdokumentation",{"href":221,"dataGaName":222,"dataGaLocation":45},"https://docs.gitlab.com/","product documentation",{"text":224,"config":225},"Best-Practice-Videos",{"href":226,"dataGaName":227,"dataGaLocation":45},"/de-de/getting-started-videos/","best practice videos",{"text":229,"config":230},"Integrationen",{"href":231,"dataGaName":232,"dataGaLocation":45},"/de-de/integrations/","integrations",{"title":234,"items":235},"Entdecken",[236,241,246],{"text":237,"config":238},"Kundenerfolge",{"href":239,"dataGaName":240,"dataGaLocation":45},"/de-de/customers/","customer success stories",{"text":242,"config":243},"Blog",{"href":244,"dataGaName":245,"dataGaLocation":45},"/de-de/blog/","blog",{"text":247,"config":248},"Remote",{"href":249,"dataGaName":250,"dataGaLocation":45},"https://handbook.gitlab.com/handbook/company/culture/all-remote/","remote",{"title":252,"items":253},"Vernetzen",[254,259,264,269,274],{"text":255,"config":256},"GitLab Services",{"href":257,"dataGaName":258,"dataGaLocation":45},"/de-de/services/","services",{"text":260,"config":261},"Community",{"href":262,"dataGaName":263,"dataGaLocation":45},"/community/","community",{"text":265,"config":266},"Forum",{"href":267,"dataGaName":268,"dataGaLocation":45},"https://forum.gitlab.com/","forum",{"text":270,"config":271},"Veranstaltungen",{"href":272,"dataGaName":273,"dataGaLocation":45},"/events/","events",{"text":275,"config":276},"Partner",{"href":277,"dataGaName":278,"dataGaLocation":45},"/de-de/partners/","partners",{"backgroundColor":280,"textColor":281,"text":282,"image":283,"link":287},"#2f2a6b","#fff","Perspektiven für die Softwareentwicklung der Zukunft",{"altText":284,"config":285},"The Source Promo-Karte",{"src":286},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758208064/dzl0dbift9xdizyelkk4.svg",{"text":288,"config":289},"Aktuelles",{"href":290,"dataGaName":291,"dataGaLocation":45},"/de-de/the-source/","the source",{"text":293,"config":294,"lists":296},"Unternehmen",{"dataNavLevelOne":295},"company",[297],{"items":298},[299,304,310,312,317,322,327,332,337,342,347],{"text":300,"config":301},"Über",{"href":302,"dataGaName":303,"dataGaLocation":45},"/de-de/company/","about",{"text":305,"config":306,"footerGa":309},"Karriere",{"href":307,"dataGaName":308,"dataGaLocation":45},"/jobs/","jobs",{"dataGaName":308},{"text":270,"config":311},{"href":272,"dataGaName":273,"dataGaLocation":45},{"text":313,"config":314},"Geschäftsführung",{"href":315,"dataGaName":316,"dataGaLocation":45},"/company/team/e-group/","leadership",{"text":318,"config":319},"Team",{"href":320,"dataGaName":321,"dataGaLocation":45},"/company/team/","team",{"text":323,"config":324},"Handbuch",{"href":325,"dataGaName":326,"dataGaLocation":45},"https://handbook.gitlab.com/","handbook",{"text":328,"config":329},"Investor Relations",{"href":330,"dataGaName":331,"dataGaLocation":45},"https://ir.gitlab.com/","investor relations",{"text":333,"config":334},"Trust Center",{"href":335,"dataGaName":336,"dataGaLocation":45},"/de-de/security/","trust center",{"text":338,"config":339},"AI Transparency Center",{"href":340,"dataGaName":341,"dataGaLocation":45},"/de-de/ai-transparency-center/","ai transparency center",{"text":343,"config":344},"Newsletter",{"href":345,"dataGaName":346,"dataGaLocation":45},"/company/contact/#contact-forms","newsletter",{"text":348,"config":349},"Presse",{"href":350,"dataGaName":351,"dataGaLocation":45},"/press/","press",{"text":353,"config":354,"lists":355},"Kontakt",{"dataNavLevelOne":295},[356],{"items":357},[358,361,366],{"text":52,"config":359},{"href":54,"dataGaName":360,"dataGaLocation":45},"talk to sales",{"text":362,"config":363},"Support-Portal",{"href":364,"dataGaName":365,"dataGaLocation":45},"https://support.gitlab.com","support portal",{"text":367,"config":368},"Kundenportal",{"href":369,"dataGaName":370,"dataGaLocation":45},"https://customers.gitlab.com/customers/sign_in/","customer portal",{"close":372,"login":373,"suggestions":380},"Schließen",{"text":374,"link":375},"Um Repositorys und Projekte zu durchsuchen, melde dich an bei",{"text":376,"config":377},"gitlab.com",{"href":59,"dataGaName":378,"dataGaLocation":379},"search login","search",{"text":381,"default":382},"Vorschläge",[383,385,390,392,397,402],{"text":74,"config":384},{"href":79,"dataGaName":74,"dataGaLocation":379},{"text":386,"config":387},"Codevorschläge (KI)",{"href":388,"dataGaName":389,"dataGaLocation":379},"/de-de/solutions/code-suggestions/","Code Suggestions (AI)",{"text":108,"config":391},{"href":110,"dataGaName":108,"dataGaLocation":379},{"text":393,"config":394},"GitLab auf AWS",{"href":395,"dataGaName":396,"dataGaLocation":379},"/de-de/partners/technology-partners/aws/","GitLab on AWS",{"text":398,"config":399},"GitLab auf Google Cloud",{"href":400,"dataGaName":401,"dataGaLocation":379},"/de-de/partners/technology-partners/google-cloud-platform/","GitLab on Google Cloud",{"text":82,"config":403},{"href":87,"dataGaName":404,"dataGaLocation":379},"Why GitLab?",{"freeTrial":406,"mobileIcon":411,"desktopIcon":416,"secondaryButton":419},{"text":407,"config":408},"Kostenlos testen",{"href":409,"dataGaName":50,"dataGaLocation":410},"https://gitlab.com/-/trials/new/","nav",{"altText":412,"config":413},"GitLab-Symbol",{"src":414,"dataGaName":415,"dataGaLocation":410},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203874/jypbw1jx72aexsoohd7x.svg","gitlab icon",{"altText":412,"config":417},{"src":418,"dataGaName":415,"dataGaLocation":410},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203875/gs4c8p8opsgvflgkswz9.svg",{"text":201,"config":420},{"href":421,"dataGaName":422,"dataGaLocation":410},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/de-de/get-started/","get started",{"freeTrial":424,"mobileIcon":428,"desktopIcon":430},{"text":425,"config":426},"Mehr über GitLab Duo erfahren",{"href":79,"dataGaName":427,"dataGaLocation":410},"gitlab duo",{"altText":412,"config":429},{"src":414,"dataGaName":415,"dataGaLocation":410},{"altText":412,"config":431},{"src":418,"dataGaName":415,"dataGaLocation":410},{"button":433,"mobileIcon":438,"desktopIcon":440},{"text":434,"config":435},"/Option",{"href":436,"dataGaName":437,"dataGaLocation":410},"#contact","switch",{"altText":412,"config":439},{"src":414,"dataGaName":415,"dataGaLocation":410},{"altText":412,"config":441},{"src":442,"dataGaName":415,"dataGaLocation":410},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1773335277/ohhpiuoxoldryzrnhfrh.png",{"freeTrial":444,"mobileIcon":449,"desktopIcon":451},{"text":445,"config":446},"Zurück zur Preisübersicht",{"href":189,"dataGaName":447,"dataGaLocation":410,"icon":448},"back to pricing","GoBack",{"altText":412,"config":450},{"src":414,"dataGaName":415,"dataGaLocation":410},{"altText":412,"config":452},{"src":418,"dataGaName":415,"dataGaLocation":410},{"title":454,"button":455,"config":460},"Sieh dir an, wie agentische KI die Softwarebereitstellung transformiert",{"text":456,"config":457},"GitLab Transcend jetzt ansehen",{"href":458,"dataGaName":459,"dataGaLocation":45},"/de-de/events/transcend/virtual/","transcend event",{"layout":461,"icon":462,"disabled":12},"release","AiStar",{"data":464},{"text":465,"source":466,"edit":472,"contribute":477,"config":482,"items":487,"minimal":690},"Git ist eine Marke von Software Freedom Conservancy und unsere Verwendung von „GitLab“ erfolgt unter Lizenz.",{"text":467,"config":468},"Quelltext der Seite anzeigen",{"href":469,"dataGaName":470,"dataGaLocation":471},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/","page source","footer",{"text":473,"config":474},"Diese Seite bearbeiten",{"href":475,"dataGaName":476,"dataGaLocation":471},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/content/","web ide",{"text":478,"config":479},"Beteilige dich",{"href":480,"dataGaName":481,"dataGaLocation":471},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/CONTRIBUTING.md/","please contribute",{"twitter":483,"facebook":484,"youtube":485,"linkedin":486},"https://x.com/gitlab","https://www.facebook.com/gitlab","https://www.youtube.com/channel/UCnMGQ8QHMAnVIsI3xJrihhg","https://www.linkedin.com/company/gitlab-com",[488,533,586,628,655],{"title":187,"links":489,"subMenu":504},[490,494,499],{"text":491,"config":492},"Tarife anzeigen",{"href":189,"dataGaName":493,"dataGaLocation":471},"view plans",{"text":495,"config":496},"Vorteile von Premium",{"href":497,"dataGaName":498,"dataGaLocation":471},"/de-de/pricing/premium/","why premium",{"text":500,"config":501},"Vorteile von Ultimate",{"href":502,"dataGaName":503,"dataGaLocation":471},"/de-de/pricing/ultimate/","why ultimate",[505],{"title":353,"links":506},[507,509,511,513,518,523,528],{"text":52,"config":508},{"href":54,"dataGaName":55,"dataGaLocation":471},{"text":362,"config":510},{"href":364,"dataGaName":365,"dataGaLocation":471},{"text":367,"config":512},{"href":369,"dataGaName":370,"dataGaLocation":471},{"text":514,"config":515},"Status",{"href":516,"dataGaName":517,"dataGaLocation":471},"https://status.gitlab.com/","status",{"text":519,"config":520},"Nutzungsbedingungen",{"href":521,"dataGaName":522,"dataGaLocation":471},"/terms/","terms of use",{"text":524,"config":525},"Datenschutzerklärung",{"href":526,"dataGaName":527,"dataGaLocation":471},"/de-de/privacy/","privacy statement",{"text":529,"config":530},"Cookie-Einstellungen",{"dataGaName":531,"dataGaLocation":471,"id":532,"isOneTrustButton":12},"cookie preferences","ot-sdk-btn",{"title":90,"links":534,"subMenu":543},[535,539],{"text":536,"config":537},"DevSecOps-Plattform",{"href":72,"dataGaName":538,"dataGaLocation":471},"devsecops platform",{"text":540,"config":541},"KI-unterstützte Entwicklung",{"href":79,"dataGaName":542,"dataGaLocation":471},"ai-assisted development",[544],{"title":545,"links":546},"Themen",[547,551,556,561,566,571,576,581],{"text":108,"config":548},{"href":549,"dataGaName":550,"dataGaLocation":471},"/de-de/topics/ci-cd/","cicd",{"text":552,"config":553},"GitOps",{"href":554,"dataGaName":555,"dataGaLocation":471},"/de-de/topics/gitops/","gitops",{"text":557,"config":558},"DevOps",{"href":559,"dataGaName":560,"dataGaLocation":471},"/de-de/topics/devops/","devops",{"text":562,"config":563},"Versionskontrolle",{"href":564,"dataGaName":565,"dataGaLocation":471},"/de-de/topics/version-control/","version control",{"text":567,"config":568},"DevSecOps",{"href":569,"dataGaName":570,"dataGaLocation":471},"/de-de/topics/devsecops/","devsecops",{"text":572,"config":573},"Cloud-nativ",{"href":574,"dataGaName":575,"dataGaLocation":471},"/de-de/topics/cloud-native/","cloud native",{"text":577,"config":578},"KI für das Programmieren",{"href":579,"dataGaName":580,"dataGaLocation":471},"/de-de/topics/devops/ai-for-coding/","ai for coding",{"text":582,"config":583},"Agentische KI",{"href":584,"dataGaName":585,"dataGaLocation":471},"/de-de/topics/agentic-ai/","agentic ai",{"title":587,"links":588},"Lösungen",[589,592,594,599,603,606,609,612,614,616,618,623],{"text":133,"config":590},{"href":128,"dataGaName":591,"dataGaLocation":471},"Application Security Testing",{"text":120,"config":593},{"href":104,"dataGaName":105,"dataGaLocation":471},{"text":595,"config":596},"Agile Entwicklung",{"href":597,"dataGaName":598,"dataGaLocation":471},"/de-de/solutions/agile-delivery/","agile delivery",{"text":600,"config":601},"SCM",{"href":117,"dataGaName":602,"dataGaLocation":471},"source code management",{"text":108,"config":604},{"href":110,"dataGaName":605,"dataGaLocation":471},"continuous integration & delivery",{"text":159,"config":607},{"href":161,"dataGaName":608,"dataGaLocation":471},"value stream management",{"text":552,"config":610},{"href":611,"dataGaName":555,"dataGaLocation":471},"/de-de/solutions/gitops/",{"text":172,"config":613},{"href":174,"dataGaName":175,"dataGaLocation":471},{"text":177,"config":615},{"href":179,"dataGaName":180,"dataGaLocation":471},{"text":182,"config":617},{"href":184,"dataGaName":185,"dataGaLocation":471},{"text":619,"config":620},"Bildungswesen",{"href":621,"dataGaName":622,"dataGaLocation":471},"/de-de/solutions/education/","education",{"text":624,"config":625},"Finanzdienstleistungen",{"href":626,"dataGaName":627,"dataGaLocation":471},"/de-de/solutions/finance/","financial services",{"title":192,"links":629},[630,632,634,636,639,641,643,645,647,649,651,653],{"text":204,"config":631},{"href":206,"dataGaName":207,"dataGaLocation":471},{"text":209,"config":633},{"href":211,"dataGaName":212,"dataGaLocation":471},{"text":214,"config":635},{"href":216,"dataGaName":217,"dataGaLocation":471},{"text":219,"config":637},{"href":221,"dataGaName":638,"dataGaLocation":471},"docs",{"text":242,"config":640},{"href":244,"dataGaName":245,"dataGaLocation":471},{"text":237,"config":642},{"href":239,"dataGaName":240,"dataGaLocation":471},{"text":247,"config":644},{"href":249,"dataGaName":250,"dataGaLocation":471},{"text":255,"config":646},{"href":257,"dataGaName":258,"dataGaLocation":471},{"text":260,"config":648},{"href":262,"dataGaName":263,"dataGaLocation":471},{"text":265,"config":650},{"href":267,"dataGaName":268,"dataGaLocation":471},{"text":270,"config":652},{"href":272,"dataGaName":273,"dataGaLocation":471},{"text":275,"config":654},{"href":277,"dataGaName":278,"dataGaLocation":471},{"title":293,"links":656},[657,659,661,663,665,667,669,674,679,681,683,685],{"text":300,"config":658},{"href":302,"dataGaName":295,"dataGaLocation":471},{"text":305,"config":660},{"href":307,"dataGaName":308,"dataGaLocation":471},{"text":313,"config":662},{"href":315,"dataGaName":316,"dataGaLocation":471},{"text":318,"config":664},{"href":320,"dataGaName":321,"dataGaLocation":471},{"text":323,"config":666},{"href":325,"dataGaName":326,"dataGaLocation":471},{"text":328,"config":668},{"href":330,"dataGaName":331,"dataGaLocation":471},{"text":670,"config":671},"Nachhaltigkeit",{"href":672,"dataGaName":673,"dataGaLocation":471},"/sustainability/","Sustainability",{"text":675,"config":676},"Vielfalt, Inklusion und Zugehörigkeit",{"href":677,"dataGaName":678,"dataGaLocation":471},"/de-de/diversity-inclusion-belonging/","Diversity, inclusion and belonging",{"text":333,"config":680},{"href":335,"dataGaName":336,"dataGaLocation":471},{"text":343,"config":682},{"href":345,"dataGaName":346,"dataGaLocation":471},{"text":348,"config":684},{"href":350,"dataGaName":351,"dataGaLocation":471},{"text":686,"config":687},"Transparenzerklärung zu moderner Sklaverei",{"href":688,"dataGaName":689,"dataGaLocation":471},"https://handbook.gitlab.com/handbook/legal/modern-slavery-act-transparency-statement/","modern slavery transparency statement",{"items":691},[692,694,697],{"text":519,"config":693},{"href":521,"dataGaName":522,"dataGaLocation":471},{"text":695,"config":696},"Cookies",{"dataGaName":531,"dataGaLocation":471,"id":532,"isOneTrustButton":12},{"text":524,"config":698},{"href":526,"dataGaName":527,"dataGaLocation":471},[700],{"id":701,"title":18,"body":8,"config":702,"content":704,"description":8,"extension":27,"meta":708,"navigation":12,"path":709,"seo":710,"stem":711,"__hash__":712},"blogAuthors/en-us/blog/authors/fernando-diaz.yml",{"template":703},"BlogAuthor",{"name":18,"config":705},{"headshot":706,"ctfId":707},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659556/Blog/Author%20Headshots/fern_diaz.png","fjdiaz",{},"/en-us/blog/authors/fernando-diaz",{},"en-us/blog/authors/fernando-diaz","lxRJIOydP4_yzYZvsPcuQevP9AYAKREF7i8QmmdnOWc",[714,727,739],{"content":715,"config":725},{"title":716,"description":717,"authors":718,"heroImage":720,"date":721,"body":722,"category":9,"tags":723},"KI entdeckt Zero-Days schneller, als Teams reagieren können: So bereitet man die Pipeline vor","KI findet Schwachstellen schneller als Teams sie schließen können. Wie Pipeline-Enforcement, Triage-Automatisierung und KI-Remediation die Lücke schließen.",[719],"Omer Azaria","https://res.cloudinary.com/about-gitlab-com/image/upload/v1772195014/ooezwusxjl1f7ijfmbvj.png","2026-04-20","Anthropics [Mythos-Preview-Modell](https://red.anthropic.com/2026/mythos-preview/)\nhat kürzlich Tausende von Zero-Day-Schwachstellen in allen wichtigen\nBetriebssystemen und Webbrowsern identifiziert – darunter ein OpenBSD-Fehler,\nder 27 Jahre lang unentdeckt blieb. In Tests verknüpfte Mythos autonom vier\nSchwachstellen zu einem funktionierenden Browser-Exploit, der seine Sandbox\nverließ. Anthropic schränkt den Zugang zu Mythos ein, doch der Leiter der\noffensiven Cyber-Forschung des Unternehmens erwartet, dass vergleichbare\nWerkzeuge innerhalb von sechs bis zwölf Monaten in Angreiferhänden sein werden.\n\nDie Verteidigungsseite hat nicht Schritt gehalten. Ein Drittel der ausgenutzten\nCVEs im ersten Halbjahr 2025 zeigte Aktivität vor oder am Tag der Offenlegung\n– bevor die meisten Teams überhaupt wissen, dass es etwas zu patchen gibt. KI\nkomprimiert dieses Fenster weiter, beschleunigt Angreifer und überschwemmt\nTeams mit Whitehat-Meldungen schneller, als sie triagiert werden können.\nDefender-Werkzeuge haben sich verbessert, doch die meisten Unternehmen können\nsie nicht schnell genug operationalisieren, um die Lücke zwischen Entdeckung\nund Ausnutzung zu schließen.\n\nWenn das Fenster zwischen Offenlegung und Ausnutzung in Stunden gemessen wird,\nkann das Sicherheitsteam nicht die letzte Verteidigungslinie sein. Sicherheit\nmuss dort greifen, wo Code in das System eintritt: in der Pipeline, bei jedem\nMerge Request, durch Richtlinien durchgesetzt. Was automatisiert werden kann,\nsollte automatisiert werden. Was es nicht kann, muss schneller als heute den\nrichtigen Menschen erreichen.\n\n\n## Bekannte Schwachstellen übersteigen bereits die Remediation-Kapazitäten\n\nDer Engpass ist nicht die Erkennung – sondern das Handeln im erforderlichen\nUmfang auf Basis bereits bekannter Informationen. 60 % der\nSicherheitsverletzungen im Verizon DBIR 2025 betrafen die Ausnutzung bekannter\nSchwachstellen, für die bereits ein Patch verfügbar war. Teams konnten sie\nnicht rechtzeitig schließen.\n\nDer Rückstand war bereits vor Mythos untragbar. Entwicklungsteams verbringen\n[11 Stunden pro Monat mit der Behebung von Schwachstellen](https://about.gitlab.com/resources/developer-survey/)\nnach dem Release – statt neue Funktionen zu liefern. Über die Hälfte der\nUnternehmen hat mindestens eine internetexponierte Schwachstelle offen, und der\nmediane Zeitraum zur Schließung der Hälfte dieser Schwachstellen beträgt\n361 Tage. Ausnutzung dauert Stunden, Remediation dauert Monate.\n\nKI-gestützte Entwicklung vergrößert die Lücke – und Verantwortliche sind sich\ndessen bewusst. Bis Juni 2025 fügte KI-generierter Code über 10.000 neue\nSecurity-Findings pro Monat in Fortune-50-Repositories hinzu – ein zehnfacher\nAnstieg gegenüber sechs Monaten zuvor. Georgia Tech identifizierte im März 2026\n34 [CVEs mit nachweisbarem KI-Ursprung](https://research.gatech.edu/bad-vibes-ai-generated-code-vulnerable-researchers-warn),\ngegenüber 6 im Januar. Diese Zahl erfasst nur die Fälle, in denen die\nKI-Urheberschaft eindeutig nachweisbar ist. KI-Coding-Assistenten halluzinieren\nPaketnamen, greifen auf veraltete Muster zurück und kopieren unsichere Beispiele\naus Trainingsdaten. Mehr Code, mehr Abhängigkeiten und mehr Schwachstellen pro\nZeile werden schneller erzeugt, als Sicherheitsteams sie prüfen können.\n\nVerteidiger müssen sich ebenfalls frontier KI-Modelle zunutze machen – nicht\nals externe Werkzeuge, die nachträglich an den SDLC angedockt werden, sondern\nals integrale Bestandteile derselben Richtlinien, Freigaben und Audit-Trails\nwie der Rest des Teams.\n\n\n## Sicherheit im Tempo von KI-gestützter Entwicklung\n\nWenn eine kritische CVE bekannt wird: Wie schnell kann das Team bestätigen,\nwelche Projekte betroffen sind? Wie viele Werkzeugwechsel durchläuft ein Alert,\nbevor ein Entwickler mit der Behebung beginnen kann?\n\nTeams, die am meisten von KI profitieren, haben Richtlinien,\nDurchsetzungsmechanismen und Kontrollen bereits in ihre Entwicklungs-Workflows\neingebettet. KI verstärkt dieses Fundament. Sie ersetzt es nicht.\n\n**Durchsetzung am Punkt der Änderung.** Wenn Ausnutzungsfenster schrumpfen,\nmuss jede Codezeile, die in ein Repository eingeht, einen definierten\nKontrollsatz durchlaufen – keine separate Prüfung, in einem anderen Werkzeug,\ndurch ein anderes Team. Unternehmen benötigen die Möglichkeit,\nSicherheitsrichtlinien über alle Gruppen und Projekte hinweg durchzusetzen, mit\ndem Merge Request als Durchsetzungspunkt. Richtlinien einmal definiert, überall\nangewendet, Ausnahmen geprüft, genehmigt und protokolliert.\n\n**Einfache Probleme vor dem Merge Request abfangen.** Hardcodierte Secrets,\nbekannt-vulnerable Importe und veraltete API-Aufrufe können in der IDE markiert\nwerden, bevor ein Commit gepusht wird. Das Abfangen zum Zeitpunkt der\nErstellung bedeutet weniger Findings, die den MR blockieren – so dass\nReview-Zyklen für Findings reserviert bleiben, die komponentenübergreifenden\nKontext erfordern: Erreichbarkeit, Ausnutzbarkeit und architektonisches Risiko.\n\n**Triage standardmäßig automatisiert.** Sicherheit in jeden Merge Request\neinzubetten erzeugt ein Volumenproblem. Mehr Scans, mehr Findings, mehr Lärm\nerreicht Entwicklungsteams, die nicht geschult sind, eine erreichbare kritische\nSchwachstelle von einer theoretischen zu unterscheiden. KI muss\nFalse-Positive-Erkennung, Erreichbarkeit, Ausnutzbarkeitskontext und\nSchweregradbewertung übernehmen, bevor ein Entwickler das Finding sieht –\ndamit die Findings, die ihn erreichen, tatsächlich seine Zeit rechtfertigen.\n\n**Remediation wie jede andere Änderung verwaltet.** KI-gestützte Remediation\nkomprimiert den Zeitrahmen zum Schließen von Schwachstellen, aber jeder\ngenerierte Fix muss denselben Governance-Prozess durchlaufen wie eine\nmenschlich erstellte Änderung: Richtlinien erzwingen Scans, die richtigen\nPrüfer genehmigen, und Nachweise werden aufgezeichnet. GitLabs automatisierte\nRemediation schlägt jeden Fix in einem Merge Request mit einem Konfidenzwert\nvor. Der MR dokumentiert, welche Richtlinie angewendet wurde, welche Scans\ndurchgeführt wurden, was sie gefunden haben und wer genehmigt hat. Menschlich\nerstellter Code und KI-generierter Code durchlaufen denselben Prozess – mit\ndemselben Audit-Trail.\n\n\n## So sieht eine vorbereitete Pipeline aus\n\nEin Proof-of-Concept-Exploit für eine Schwachstelle in einem verbreiteten\nOpen-Source-Paket erscheint auf einer Security-Mailingliste. Es gibt noch keine\nCVE, keinen NVD-Eintrag und keine Scanner-Signatur. Das Sicherheitsteam erfährt\nes auf dem üblichen Weg: jemand teilt es in Slack.\n\nEin Security-Engineer fragt den Security-Agenten, ob das Paket verwendet wird,\nwelche Projekte betroffene Versionen haben und ob verwundbare Call-Pfade in der\nProduktion erreichbar sind. Der Agent prüft den Dependency-Graphen jedes\nProjekts, gleicht die betroffenen Versionen und Einstiegspunkte aus der Meldung\nab und gibt eine priorisierte Liste exponierter Projekte mit Details zur\nErreichbarkeit zurück. Eine manuelle Suche in Repositories oder das Warten auf\nein Scanner-Update entfällt. Die Frage „Sind wir betroffen?\" ist in Minuten\nbeantwortet.\n\nDer Engineer startet eine Remediation-Kampagne für alle exponierten Projekte.\nDer Remediation-Agent schlägt Fixes vor: Versions-Updates, wo ein gepatchtes\nRelease verfügbar ist, und Patches für verwundbare Call-Pfade, wo es keines\ngibt. Scan-Execution-Policies sind bereits für Projekte mit\nISO-27001-Zertifizierung aktiv. Der Engineer verschärft die Regeln, um Merges\nbei jedem Merge Request zu blockieren, der die betroffene Abhängigkeit einführt\noder beibehält. Eine Approval-Policy erfordert nun Security-Freigabe für jeden\nFix. Der erste vorgeschlagene Patch schlägt in der Pipeline fehl, weil ein\nIntegrationstest eine Regression aufdeckt. Der Agent überarbeitet den Patch auf\nBasis des Testergebnisses, der zweite Versuch besteht. Das Entwicklungsteam\nprüft die Änderungen, Security gibt unter der verschärften Richtlinie frei, und\nMerges erfolgen über die gesamte Kampagne hinweg.\n\nBeim nächsten Audit-Review legt das Sicherheitsteam einen Bericht vor, der\nzeigt, wie Richtlinien durchgesetzt und Risiken während der Kampagne reduziert\nwurden. Er enthält Scan-Ergebnisse, angewendete Richtlinien, Genehmiger und\nMerge-Zeitstempel für jeden MR in jedem betroffenen Projekt. Die Nachweise\nwurden automatisch während des Prozesses erzeugt – nicht im Nachhinein\nzusammengestellt.\n\n\n## Handlungsfelder jetzt identifizieren\n\nMythos existiert heute, und vergleichbare Modelle werden innerhalb eines Jahres\nin Angreiferhänden sein. Jeder Monat bis dahin ist eine Gelegenheit, die\nSoftware-Lieferkette zu stärken.\n\nDiese Fragen zeigen, wo die Pipeline steht:\n\n* Wie wird sichergestellt, dass Sicherheitsscans bei jedem Merge Request\n  durchgeführt werden – nicht nur in Projekten, in denen Teams sie konfiguriert\n  haben?\n\n* Wenn ein kompromittiertes Paket heute in den Dependency-Tree eingeht –\n  würde die Pipeline es vor dem Build abfangen?\n\n* Wenn ein Scanner ein kritisches Finding meldet: Wie viele Werkzeugwechsel\n  durchläuft es, bevor ein Entwickler mit der Behebung beginnt?\n\n* Wenn ein KI-Agent einen Code-Fix für eine Schwachstelle vorschlägt – welchen\n  Prozess durchläuft dieser Fix vor dem Erreichen der Produktion, und ist dieser\n  Prozess auditierbar?\n\n* Wenn Auditoren den Nachweis verlangen, dass eine bestimmte Richtlinie auf\n  eine bestimmte Änderung angewendet wurde – wie lange dauert die Bereitstellung?\n\nWo diese Fragen Lücken aufzeigen, empfiehlt sich gezielte Maßnahmen.\n[Mit einem GitLab Solutions Architect sprechen](https://about.gitlab.com/de-de/sales/)\n– zur Rolle von Security-Governance im Entwicklungs-Lifecycle.\n",[724,9,24],"AI/ML",{"featured":12,"template":13,"slug":726},"prepare-your-pipeline-for-ai-discovered-zero-days",{"content":728,"config":737},{"title":729,"description":730,"authors":731,"heroImage":733,"date":734,"category":9,"tags":735,"body":736},"Schwachstellen-Rauschen mit Auto-Dismiss-Richtlinien gezielt reduzieren","Scanner-Rauschen reduzieren und relevante Schwachstellen priorisieren – mit Auto-Dismiss-Richtlinien in GitLab, mit Anwendungsfällen und Konfigurationen.",[732],"Grant Hickman","https://res.cloudinary.com/about-gitlab-com/image/upload/v1774375772/kpaaaiqhokevxxeoxvu0.png","2026-03-25",[9,23,567,25,26],"Security-Scanner sind unverzichtbar – doch nicht jeder Fund erfordert eine Reaktion. Testcode, eingebettete Abhängigkeiten, generierte Dateien und bekannte False Positives erzeugen Rauschen, das die tatsächlich relevanten Schwachstellen überlagert. Durch das manuelle Schließen immer gleicher, irrelevanter Findings über Projekte und Pipelines hinweg entsteht repetitiver Aufwand im Security-Team. Die Folge: langsameres Triage, Alert-Fatigue und Reibung mit Entwicklungsteams – bis hin zu sinkender Akzeptanz des Security-Scannings selbst.\n\nMit den Auto-Dismiss-Richtlinien für Schwachstellen lassen sich Triage-Entscheidungen einmalig in Richtlinien festlegen und automatisch auf jede Pipeline des Standard-Branches anwenden. Kriterien werden anhand von Dateipfad, Verzeichnis oder Schwachstellen-Kennung (CVE, CWE) definiert, ein Abweisungsgrund festgelegt – und GitLab übernimmt den Rest.\n\n## Warum Auto-Dismiss?\n\nAuto-Dismiss-Richtlinien ermöglichen Security-Teams:\n\n- **Triage-Aufwand reduzieren**: Findings in Testcode, eingebetteten Abhängigkeiten und generierten Dateien werden automatisch abgewiesen.\n- **Entscheidungen organisationsweit durchsetzen**: Bekannte False Positives lassen sich zentral über die gesamte Organisation hinweg abweisen.\n- **Prüfnachweise sicherstellen**: Jeder automatisch abgewiesene Fund enthält einen dokumentierten Abweisungsgrund mit Verweis auf die auslösende Richtlinie.\n- **Datenbasis erhalten**: Im Gegensatz zu Scanner-Ausschlüssen verbleiben abgewiesene Schwachstellen im Report – Entscheidungen lassen sich bei veränderten Bedingungen jederzeit überprüfen.\n\n## So funktionieren Auto-Dismiss-Richtlinien\n\n1. **Richtlinie definieren**: In einer YAML-Richtliniendatei Abgleichkriterien (Dateipfad, Verzeichnis oder Kennung) und einen Abweisungsgrund festlegen.\n\n2. **Zusammenführen und aktivieren**: Richtlinie über **Secure > Policies > New policy > Vulnerability management policy** erstellen. Nach dem Merge des MR ist sie aktiv.\n\n3. **Pipeline ausführen**: Bei jeder Pipeline des Standard-Branches werden übereinstimmende Schwachstellen automatisch auf „Dismissed\" gesetzt und mit dem festgelegten Grund versehen. Pro Ausführung werden bis zu 1.000 Schwachstellen verarbeitet.\n\n4. **Ergebnis prüfen**: Den Vulnerability-Report nach Status „Dismissed\" filtern – so lässt sich nachvollziehen, welche Findings bereinigt wurden und ob die richtigen Einträge erfasst werden.\n\n## Anwendungsfälle mit einsatzbereiten Konfigurationen\n\nJedes Beispiel enthält eine Richtlinienkonfiguration, die direkt kopiert, angepasst und eingesetzt werden kann.\n\n### 1. Schwachstellen in Testcode abweisen\n\nSAST- und Dependency-Scanner melden hartcodierte Zugangsdaten, unsichere Fixtures und entwicklungsspezifische Abhängigkeiten in Testverzeichnissen. Diese stellen kein Produktionsrisiko dar.\n\n```yaml\nvulnerability_management_policy:\n  - name: \"Dismiss test code vulnerabilities\"\n    description: \"Auto-dismiss findings in test directories\"\n    enabled: true\n    rules:\n      - type: detected\n        criteria:\n          - type: file_path\n            value: \"test/**/*\"\n      - type: detected\n        criteria:\n          - type: file_path\n            value: \"tests/**/*\"\n      - type: detected\n        criteria:\n          - type: file_path\n            value: \"spec/**/*\"\n      - type: detected\n        criteria:\n          - type: directory\n            value: \"__tests__/*\"\n    actions:\n      - type: auto_dismiss\n        dismissal_reason: used_in_tests\n\n```\n\n### 2. Eingebetteten und Drittanbieter-Code abweisen\n\nSchwachstellen in `vendor/`, `third_party/` oder eingecheckten `node_modules` werden upstream verwaltet und sind für das eigene Team nicht direkt behebbar.\n\n```yaml\nvulnerability_management_policy:\n  - name: \"Dismiss vendored dependency findings\"\n    description: \"Findings in vendored code are managed upstream\"\n    enabled: true\n    rules:\n      - type: detected\n        criteria:\n          - type: directory\n            value: \"vendor/*\"\n      - type: detected\n        criteria:\n          - type: directory\n            value: \"third_party/*\"\n      - type: detected\n        criteria:\n          - type: directory\n            value: \"vendored/*\"\n    actions:\n      - type: auto_dismiss\n        dismissal_reason: not_applicable\n\n```\n\n### 3. Falsch-Positiv-CVEs abweisen\n\nBestimmte CVEs werden wiederholt gemeldet, gelten im eigenen Nutzungskontext aber als nicht zutreffend. Bisher wurden diese bei jedem Auftreten manuell abgewiesen. Die Beispiel-CVEs unten durch eigene ersetzen.\n\n```yaml\nvulnerability_management_policy:\n  - name: \"Dismiss known false positive CVEs\"\n    description: \"CVEs confirmed as false positives for our environment\"\n    enabled: true\n    rules:\n      - type: detected\n        criteria:\n          - type: identifier\n            value: \"CVE-2023-44487\"\n      - type: detected\n        criteria:\n          - type: identifier\n            value: \"CVE-2024-29041\"\n      - type: detected\n        criteria:\n          - type: identifier\n            value: \"CVE-2023-26136\"\n    actions:\n      - type: auto_dismiss\n        dismissal_reason: false_positive\n\n```\n\n### 4. Generierten und automatisch erstellten Code abweisen\n\nProtobuf-, gRPC-, OpenAPI-Generatoren und ORM-Scaffolding-Tools erzeugen Dateien mit gemeldeten Mustern, die vom eigenen Team nicht gepatcht werden können.\n\n```yaml\nvulnerability_management_policy:\n  - name: \"Dismiss generated code findings\"\n    description: \"Generated files are not authored by us\"\n    enabled: true\n    rules:\n      - type: detected\n        criteria:\n          - type: directory\n            value: \"generated/*\"\n      - type: detected\n        criteria:\n          - type: file_path\n            value: \"**/*.pb.go\"\n      - type: detected\n        criteria:\n          - type: file_path\n            value: \"**/*.generated.*\"\n    actions:\n      - type: auto_dismiss\n        dismissal_reason: not_applicable\n\n```\n\n### 5. Durch Infrastruktur abgemilderte Schwachstellen abweisen\n\nSchwachstellenklassen wie XSS (CWE-79) oder SQL-Injection (CWE-89), die durch WAF-Regeln oder Laufzeitschutz bereits adressiert sind. Diese Konfiguration nur einsetzen, wenn die abmildernden Kontrollen nachweislich vorhanden und durchgängig durchgesetzt sind – eine lückenhafte Durchsetzung macht die Abweisung ungültig.\n\n```yaml\nvulnerability_management_policy:\n  - name: \"Dismiss CWEs mitigated by WAF\"\n    description: \"XSS and SQLi mitigated by WAF rules\"\n    enabled: true\n    rules:\n      - type: detected\n        criteria:\n          - type: identifier\n            value: \"CWE-79\"\n      - type: detected\n        criteria:\n          - type: identifier\n            value: \"CWE-89\"\n    actions:\n      - type: auto_dismiss\n        dismissal_reason: mitigating_control\n\n```\n\n### 6. CVE-Familien organisationsweit abweisen\n\nBei einer Welle verwandter CVEs für eine weit verbreitete Bibliothek, die das Team bereits bewertet hat: Richtlinie auf Gruppenebene anwenden und über Dutzende Projekte hinweg abweisen. Das Wildcard-Muster (z. B. `CVE-2021-44*`) erfasst alle CVEs mit diesem Präfix.\n\n```yaml\nvulnerability_management_policy:\n  - name: \"Accept risk for log4j CVE family\"\n    description: \"Log4j CVEs mitigated by version pinning and WAF\"\n    enabled: true\n    rules:\n      - type: detected\n        criteria:\n          - type: identifier\n            value: \"CVE-2021-44*\"\n    actions:\n      - type: auto_dismiss\n        dismissal_reason: acceptable_risk\n\n```\n\n## Kurzübersicht\n\n| Parameter | Details |\n|-----------|---------|\n| **Kriterientypen** | `file_path` (Glob-Muster, z. B. `test/**/*`), `directory` (z. B. `vendor/*`), `identifier` (CVE/CWE mit Wildcards, z. B. `CVE-2023-*`) |\n| **Abweisungsgründe** | `acceptable_risk`, `false_positive`, `mitigating_control`, `used_in_tests`, `not_applicable` |\n| **Kriterienlogik** | Mehrere Kriterien innerhalb einer Regel = UND (alle müssen zutreffen). Mehrere Regeln innerhalb einer Richtlinie = ODER (eine reicht). |\n| **Limits** | 3 Kriterien pro Regel, 5 Regeln pro Richtlinie, 5 Richtlinien pro Security-Policy-Projekt. Vulnerability-Management-Richtlinien verarbeiten pro Pipeline-Ausführung bis zu 1.000 Schwachstellen im Zielprojekt. |\n| **Betroffene Status** | Needs triage, Confirmed |\n| **Geltungsbereich** | Projektebene oder Gruppenebene (Gruppenebene gilt für alle enthaltenen Projekte) |\n\n## Erste Schritte\n\nSo lassen sich Auto-Dismiss-Richtlinien einrichten:\n\n1. **Rauschen identifizieren**: Den Vulnerability-Report öffnen und nach „Needs triage\" sortieren. Nach Mustern suchen: Testdateien, eingebetteter Code, CVEs, die in mehreren Projekten wiederholt auftauchen.\n\n2. **Anwendungsfall auswählen**: Mit dem Anwendungsfall beginnen, der die meisten Findings abdeckt.\n\n3. **Ausgangslage festhalten**: Anzahl der Schwachstellen mit Status „Needs triage\" vor Erstellung der Richtlinie notieren.\n\n4. **Erstellen und aktivieren**: Über **Secure > Policies > New policy > Vulnerability management policy** navigieren. Konfiguration aus dem gewählten Anwendungsfall einfügen, dann MR mergen.\n\n5. **Ergebnis validieren**: Nach der nächsten Pipeline des Standard-Branches den Report nach Status „Dismissed\" filtern und prüfen, ob die erwarteten Findings erfasst wurden.\n\nVollständige Konfigurationsdetails in der [Dokumentation zu Vulnerability-Management-Richtlinien](https://docs.gitlab.com/user/application_security/policies/vulnerability_management_policy/#auto-dismiss-policies).\n\n> [GitLab Ultimate kostenlos testen](https://about.gitlab.com/de-de/free-trial/) und erste Auto-Dismiss-Richtlinie konfigurieren.\n",{"slug":738,"featured":12,"template":13},"auto-dismiss-vulnerability-management-policy",{"content":740,"config":749},{"title":741,"description":742,"authors":743,"heroImage":745,"date":746,"body":747,"category":9,"tags":748},"GitLab 18.10 bringt KI-native Triage und Behebung","Erfahre mehr über die Funktionen von GitLab Duo Agent Platform, die Rauschen reduzieren, echte Schwachstellen identifizieren und Ergebnisse in Lösungsvorschläge umwandeln.",[744],"Alisa Ho","https://res.cloudinary.com/about-gitlab-com/image/upload/v1773843921/rm35fx4gylrsu9alf2fx.png","2026-03-19","GitLab 18.10 führt neue KI-basierte Sicherheitsfunktionen ein, die auf die Verbesserung der Qualität und Geschwindigkeit des Schwachstellenmanagements ausgerichtet sind. Zusammen tragen diese Funktionen dazu bei, den Zeitaufwand für die Untersuchung von False Positives zu reduzieren und automatisierte Abhilfe direkt in den Workflow zu integrieren – so lassen sich Schwachstellen auch ohne tiefgreifende Sicherheitsexpertise beheben.\n\nDas ist neu:\n\n* [**Erkennung von False Positives bei statischen Anwendungssicherheitstests (SAST)**](https://docs.gitlab.com/user/application_security/vulnerabilities/false_positive_detection/) **ist jetzt allgemein verfügbar.** Dieser Flow nutzt ein LLM für agentisches Reasoning, um die Wahrscheinlichkeit zu bestimmen, ob eine Schwachstelle ein False Positive ist oder nicht. So können sich Sicherheits- und Entwicklungsteams zuerst auf die Behebung kritischer Schwachstellen konzentrieren.\n* [**Agentische SAST-Schwachstellenbehebung**](https://docs.gitlab.com/user/application_security/vulnerabilities/agentic_vulnerability_resolution/) **ist jetzt als Beta verfügbar.** Die agentische SAST-Schwachstellenbehebung erstellt automatisch einen Merge Request mit einem Lösungsvorschlag für verifizierte SAST-Schwachstellen. Das verkürzt die Zeit bis zur Behebung und reduziert den Bedarf an tiefgreifender Sicherheitsexpertise.\n* [**Erkennung von False Positives bei Geheimnissen**](https://docs.gitlab.com/user/application_security/vulnerabilities/secret_false_positive_detection/) **ist jetzt als Beta verfügbar.** Dieser Flow bringt die gleiche KI-basierte Rauschreduzierung in die Erkennung von Geheimnissen und kennzeichnet Dummy- und Test-Geheimnisse, um den Prüfaufwand zu verringern.\n\nDiese Flows stehen Kund(inn)en von GitLab Ultimate zur Verfügung, die GitLab Duo Agent Platform nutzen.\n\n## Triage-Zeit mit SAST-False-Positive-Erkennung verkürzen\n\nHerkömmliche SAST-Scanner kennzeichnen jedes verdächtige Codemuster, das sie finden – unabhängig davon, ob Codepfade erreichbar sind oder Frameworks das Risiko bereits abfangen. Ohne Laufzeitkontext können sie eine echte Schwachstelle nicht von sicherem Code unterscheiden, der lediglich gefährlich aussieht.\n\nDas bedeutet, dass Entwickler(innen) möglicherweise Stunden damit verbringen, Ergebnisse zu untersuchen, die sich als False Positives herausstellen. Mit der Zeit kann das das Vertrauen in den Bericht untergraben und die Teams verlangsamen, die für die Behebung echter Risiken verantwortlich sind.\n\nNach jedem SAST-Scan analysiert GitLab Duo Agent Platform automatisch neue kritische und hochgradig schwerwiegende Ergebnisse und fügt Folgendes hinzu:\n\n* Einen Konfidenzwert, der angibt, wie wahrscheinlich es ist, dass das Ergebnis ein False Positive ist\n* Eine KI-generierte Erklärung mit der Begründung\n* Ein visuelles Badge, das „Wahrscheinlich False Positive“ und „Wahrscheinlich echt“ in der UI leicht erkennbar macht\n\nDiese Ergebnisse erscheinen im [Sicherheitslückenbericht](https://docs.gitlab.com/user/application_security/vulnerability_report/), wie unten dargestellt. Der Bericht lässt sich filtern, um sich auf Ergebnisse zu konzentrieren, die als „Kein False Positive“ markiert sind. So können Teams ihre Zeit für die Behebung echter Schwachstellen nutzen, anstatt Rauschen zu sichten.\n\n![Sicherheitslückenbericht](https://res.cloudinary.com/about-gitlab-com/image/upload/v1773844787/i0eod01p7gawflllkgsr.png)\n\n\nDie Bewertung von GitLab Duo Agent Platform ist eine Empfehlung. Die Kontrolle über jedes False Positive bleibt erhalten, und die Begründung des Agenten kann jederzeit überprüft werden, um Vertrauen in das Modell aufzubauen.\n\n\n## Schwachstellen in automatisierte Fixes umwandeln\n\nZu wissen, dass eine Schwachstelle echt ist, ist nur die halbe Arbeit. Die Behebung erfordert weiterhin das Verständnis des Codepfads, das Schreiben eines sicheren Patches und die Sicherstellung, dass nichts anderes beeinträchtigt wird.\n\nWenn die Schwachstelle durch den SAST-False-Positive-Erkennungsflow als wahrscheinlich kein False Positive identifiziert wird, führt der agentische SAST-Schwachstellenbehebungsflow automatisch folgende Schritte aus:\n\n1. Liest den anfälligen Code und den umgebenden Kontext aus dem Repository\n2. Generiert hochwertige Lösungsvorschläge\n3. Validiert die Fixes durch automatisierte Tests\n4. Öffnet einen Merge Request mit einem Lösungsvorschlag, der Folgendes enthält:\n   * Konkrete Codeänderungen\n   * Einen Konfidenzwert\n   * Eine Erklärung, was geändert wurde und warum\n\nIn dieser Demo siehst du, wie GitLab eine SAST-Schwachstelle automatisch vom Erkennen bis hin zu einem prüfbereiten Merge Request verarbeiten kann. Beobachte, wie der Agent den Code liest, einen Fix generiert und validiert und einen MR mit klaren, nachvollziehbaren Änderungen öffnet – damit Entwickler(innen) schneller beheben können, ohne Sicherheitsexpert(inn)en sein zu müssen.\n\n\u003Ciframe src=\"https://player.vimeo.com/video/1174573325?badge=0&amp;autopause=0&amp;player_id=0&amp;app_id=58479\" frameborder=\"0\" allow=\"autoplay; fullscreen; picture-in-picture; clipboard-write; encrypted-media; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" style=\"position:absolute;top:0;left:0;width:100%;height:100%;\" title=\"GitLab 18.10 AI SAST False Positive Auto Remediation\">\u003C/iframe>\u003Cscript src=\"https://player.vimeo.com/api/player.js\">\u003C/script>\n\nWie bei jedem KI-generierten Vorschlag sollte der vorgeschlagene Merge Request vor dem Zusammenführen sorgfältig geprüft werden.\n\n## Echte Geheimnisse identifizieren\n\nDie Erkennung von Geheimnissen ist nur dann nützlich, wenn Teams den Ergebnissen vertrauen. Wenn Berichte voller Test-Zugangsdaten, Platzhalterwerte und Beispiel-Token sind, verschwenden Entwickler(innen) möglicherweise Zeit mit der Überprüfung von Rauschen, anstatt echte Sicherheitslücken zu beheben. Das kann die Behebung verlangsamen und das Vertrauen in den Scan verringern.\n\nDie False-Positive-Erkennung bei Geheimnissen hilft Teams, sich auf die relevanten Geheimnisse zu konzentrieren und Risiken schneller zu reduzieren. Bei der Ausführung auf dem Standard-Branch werden automatisch folgende Schritte durchgeführt:\n\n1. Jedes Ergebnis wird analysiert, um wahrscheinliche Test-Zugangsdaten, Beispielwerte und Dummy-Geheimnisse zu identifizieren\n2. Ein Konfidenzwert wird zugewiesen, ob das Ergebnis ein echtes Risiko oder wahrscheinlich ein False Positive ist\n3. Eine Erklärung wird generiert, warum das Geheimnis als echt oder als Rauschen eingestuft wird\n4. Ein Badge wird im Sicherheitslückenbericht hinzugefügt, damit Entwickler(innen) den Status auf einen Blick erkennen können\n\nEntwickler(innen) können diese Analyse auch manuell über den Sicherheitslückenbericht auslösen, indem sie bei einem Ergebnis der Geheimniserkennung **„Auf False Positive prüfen“** auswählen. So lassen sich Ergebnisse ohne Risiko aussortieren und echte Geheimnisse schneller adressieren.\n\n## KI-basierte Sicherheit jetzt testen\n\nGitLab 18.10 führt Funktionen ein, die den gesamten Schwachstellen-Workflow abdecken – von der Reduzierung von False-Positive-Rauschen bei SAST und der Erkennung von Geheimnissen bis hin zur automatischen Generierung von Merge Requests mit Lösungsvorschlägen.\n\nUm zu erfahren, wie KI-basierte Sicherheit die Prüfzeit verkürzen und Ergebnisse in zusammenführbare Fixes umwandeln kann, [starte jetzt eine kostenlose Testversion von GitLab Duo Agent Platform](https://about.gitlab.com/de-de/gitlab-duo-agent-platform/).",[26,9,25],{"featured":32,"template":13,"slug":750},"gitlab-18-10-brings-ai-native-triage-and-remediation",{"promotions":752},[753,767,778,789],{"id":754,"categories":755,"header":757,"text":758,"button":759,"image":764},"ai-modernization",[756],"ai-ml","Is AI achieving its promise at scale?","Quiz will take 5 minutes or less",{"text":760,"config":761},"Get your AI maturity score",{"href":762,"dataGaName":763,"dataGaLocation":245},"/assessments/ai-modernization-assessment/","modernization assessment",{"config":765},{"src":766},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138786/qix0m7kwnd8x2fh1zq49.png",{"id":768,"categories":769,"header":770,"text":758,"button":771,"image":775},"devops-modernization",[26,570],"Are you just managing tools or shipping innovation?",{"text":772,"config":773},"Get your DevOps maturity score",{"href":774,"dataGaName":763,"dataGaLocation":245},"/assessments/devops-modernization-assessment/",{"config":776},{"src":777},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138785/eg818fmakweyuznttgid.png",{"id":779,"categories":780,"header":781,"text":758,"button":782,"image":786},"security-modernization",[9],"Are you trading speed for security?",{"text":783,"config":784},"Get your security maturity score",{"href":785,"dataGaName":763,"dataGaLocation":245},"/assessments/security-modernization-assessment/",{"config":787},{"src":788},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138786/p4pbqd9nnjejg5ds6mdk.png",{"id":790,"paths":791,"header":794,"text":795,"button":796,"image":801},"github-azure-migration",[792,793],"migration-from-azure-devops-to-gitlab","integrating-azure-devops-scm-and-gitlab","Is your team ready for GitHub's Azure move?","GitHub is already rebuilding around Azure. Find out what it means for you.",{"text":797,"config":798},"See how GitLab compares to GitHub",{"href":799,"dataGaName":800,"dataGaLocation":245},"/compare/gitlab-vs-github/github-azure-migration/","github azure migration",{"config":802},{"src":777},{"header":804,"blurb":805,"button":806,"secondaryButton":811},"Beginne noch heute, schneller zu entwickeln","Entdecke, was dein Team mit der intelligenten Orchestrierungsplattform für DevSecOps erreichen kann.\n",{"text":807,"config":808},"Kostenlosen Test starten",{"href":809,"dataGaName":50,"dataGaLocation":810},"https://gitlab.com/-/trial_registrations/new?glm_content=default-saas-trial&glm_source=about.gitlab.com/de-de/","feature",{"text":52,"config":812},{"href":54,"dataGaName":55,"dataGaLocation":810},1777576618875]