Gitleaks: Installation und Nutzung
Überblick
Gitleaks ist ein Open-Source-Tool zur Erkennung von Geheimnissen wie API-Schlüsseln, Passwörtern und Tokens in Git-Repositories. Es unterstützt Entwickler und DevOps-Teams dabei, unbeabsichtigte Offenlegungen sensibler Informationen zu verhindern.
Installation
Voraussetzungen
- Git muss installiert sein.
- Je nach Installationsmethode: Go oder ein geeigneter Paketmanager.
Installation über vorkompilierte Binärdatei
-
Neueste Version von der Gitleaks Release-Seite herunterladen.
-
Die Binärdatei ausführbar machen:
chmod +x gitleaks -
Die Datei in einen Verzeichnis im
$PATHverschieben, z.B.:sudo mv gitleaks /usr/local/bin/
Installation mit Paketmanager
Homebrew (macOS)
brew install gitleaksAPT (Debian/Ubuntu)
echo "deb [trusted=yes] https://apt.fury.io/gitleaks/ /" | sudo tee /etc/apt/sources.list.d/gitleaks.list
sudo apt update
sudo apt install gitleaksScoop (Windows)
scoop install gitleaksInstallation mit Go
Voraussetzung: Go-Umgebung ist eingerichtet.
go install github.com/gitleaks/gitleaks/v8@latestNutzung
Basis-Scan eines lokalen Repositories
Um das aktuelle Repository auf Geheimnisse zu untersuchen:
gitleaks detectOder spezifisch ein Verzeichnis angeben:
gitleaks detect --source=/path/zum/repositoryScan eines Remote-Repositories
gitleaks detect --repo=https://github.com/benutzer/repository.gitAusgabeoptionen
Die Ergebnisse können in verschiedenen Formaten ausgegeben werden:
-
JSON-Format
gitleaks detect --report-format=json --report-path=bericht.json -
SARIF-Format (für GitHub Code Scanning)
gitleaks detect --report-format=sarif --report-path=code-scanning.sarif
Verwendung einer Konfigurationsdatei
Gitleaks kann mit einer benutzerdefinierten Konfigurationsdatei betrieben werden, um spezifische Regeln zu definieren oder auszuschließen.
gitleaks detect --config=/path/zur/gitleaks.tomlBeispiel: Nur bestimmte Commits scannen
gitleaks detect --source=. --commit=COMMIT_SHAIntegration in CI/CD-Pipelines
GitHub Actions
Erstellen Sie eine Workflow-Datei .github/workflows/gitleaks.yml:
name: Gitleaks
on: [push, pull_request]
jobs:
scan:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Gitleaks Scan
uses: zricethezav/gitleaks-action@v1GitLab CI/CD
Fügen Sie folgendes zu .gitlab-ci.yml hinzu:
gitleaks_scan:
image: zricethezav/gitleaks:latest
script:
- gitleaks detect --source=. --exit-code=1Konfiguration
Erstellung einer benutzerdefinierten gitleaks.toml
Eine Beispielkonfigurationsdatei könnte wie folgt aussehen:
title = "Benutzerdefinierte Gitleaks-Regeln"
[[rules]]
id = "custom-rule"
description = "Erkennung eines spezifischen Musters"
regex = '''your_regex_pattern'''
secretGroup = 1Tipps und Best Practices
- False Positives reduzieren durch Anpassung der Konfiguration.
- Regelmäßige Scans in die Entwicklungszyklen einbetten.
- Sensiblen Codeverlauf bereinigen mit Tools wie
git filter-branchoderbfg.
Tags:gitleaksgitsicherheitgeheimnisseci-cdcodeanalyseinstallationnutzung