Versionsverwaltung: GitLab 14.3 baut die Security-Analyse aus
Das aktuelle Release der Versionsverwaltungsplattform erweitert unter anderem die dynamischen und die statischen Sicherheitstests für Anwendungen.
GitLab hat das monatliche Release 14.3 der Versionsverwaltungsplattform veröffentlicht. Die Neuerungen finden sich vor allem in den kommerziellen Varianten und decken unter anderem die statische Codeanalyse und die Security-Funktionen ab. Außerdem wartet die Version mit neuen Gruppenrichtlinien auf und bietet Ergänzungen für die CI/CD-Pipeline (Continuous Integration, Continuous Delivery).
Hausgemachte statische Analyse
In Version 10.3 hat GitLab die Sicherheitsanalyse über SAST (Static Application Security Testing) eingeführt. Als Grundlage dienen zahlreiche Open-Source-Tools für unterschiedliche Programmiersprachen und Plattformen. Regelmäßig kommen neue Werkzeuge hinzu, und der jüngste größere Neuzugang war im April Semgrep.
Mit dem aktuellen Release der Plattform führt GitLab eine eigene SAST-Engine ein, die zunächst auf Ruby und Rails ausgelegt ist. Die Motivation für die anfängliche Ausrichtung auf die Programmiersprache und das darauf aufsetzende Webframework dürfte darin liegen, dass die Versionsverwaltungsplattform seit ihren Anfängen vor etwa zehn Jahren in Ruby on Rails entwickelt ist.
Die neue SAST-Engine setzt unter anderem auf Daten- und Kontrollflussanalyse. Außerdem bringt sie eine Pattern Extraction Language mit, die sich zum einen für die Schwachstellenanalyse und zum anderen zum Beseitigen von False Positives, die andere Security-Tools gemeldet haben, nutzen lässt. Außerdem kann die Engine wohl externe Testwerkzeuge integrieren.
Vorgaben für die dynamische Analyse
GitLab 14.3 erweitert zudem die Einbindung des Dynamic Application Security Testing (DAST). In der Ultimate-Variante lassen sich neuerdings Security-Policies sowohl für DAST als auch für die Secret Detection festlegen. Letztere hatte GitLab in Version 11.9 eingeführt: Teams können damit ihre Repositories nach geheim zu haltenden Informationen wie Passwörtern, SSH- oder API-Keys durchsuchen, um das versehentliche Veröffentlichen von Credentials bei Commits zu verhindern.
Die Security-Policies sind auf Projektebene angelegt und lassen sich wahlweise in einem definierten zeitlichen Turnus oder als Bestandteil von C-Pipelines über Security & Compliance | Policies unabhängig von der CI-Konfiguration in der .gitlab-ci.yml-Datei umsetzen.
Gruppenrichtlinien und Pipelineerweiterung
Weitere Neuerungen bieten gruppenbasierte Vorgaben beziehungsweise Zugriffsrechte. Unter anderem kann der in Version 13.11 eingeführte GitLab Kubernetes Agent nun autorisierten Gruppen den Zugriff gewähren. Bisher war der Zugriff nur aus dem Projekt möglich, für das der Agent registriert ist. Auch für geschützte Umgebungen lassen sich die Zugriffsrechte nun gruppenweise festlegen
Zwei Ergänzungen für CI/CD-Pipelines stehen anders als die bisher aufgeführten Neuerungen auch in der kostenfreien Free-Variante von GitLab zur Verfügung. Zum einen dürfen include
-Blöcke in der Pipelinedefinition nun rules
-Unterblöcke enthalten, die vorgeben, unter welchen Voraussetzungen die Einbindung erfolgen soll. Außerdem können Variablen in der Pipeline ihrerseits andere Variablen enthalten.
Ankündigungswoche bei GitLab
Neben dem neuen Release und dem geplanten Börsengang hat GitLab einen eigenen Collectives-Bereich auf Stack Overflow angekündigt. Die Plattform für Softwareentwicklerinnen und -entwickler hatte die Collectives im Juni kurz nach der Übernahme durch den Tech-Investor Prosus eingeführt. Es handelt sich um Bereiche, die auf eine spezielle Programmiersprache oder Technik ausgelegt sind. Neben dem Bereich zu GitLab existieren derzeit Collectives für die Programmiersprache Go und die Google Cloud.
Weitere Neuerungen in GitLab 14.3 finden sich in der offiziellen Ankündigung. Dort ist auch erkennbar, welche neuen Funktionen jeweils für die Varianten Free, Premium und Ultimate verfügbar sind.
(rme)