Hardcoded Secrets und API Keys aus dem Code entfernen
Identifiziere und entferne alle hardcodierten Secrets wie API Keys, Passwörter oder Tokens aus dem Quellcode. Verwende Umgebungsvariablen stattdessen.
Originalvideo ansehen: Tragic mistake... Anthropic leaks Claude’s source code4 Schritte
1
Installiere git-secrets
Verwende git-secrets um zu verhindern, dass Secrets committed werden
brew install git-secrets
git secrets --install
git secrets --register-awsTipp: git-secrets kann auch für custom patterns wie API Keys konfiguriert werden
Warnung: Führe dies in jedem neuen Repository durch
2
Erstelle .env Dateien für Secrets
Speichere alle sensitiven Informationen in .env Dateien, nicht im Code
// .env (NIEMALS in Git committen!)
API_KEY=your_secret_key_here
DATABASE_PASSWORD=secret_password
JWT_SECRET=your_jwt_secret
// .env.example (KANN committed werden)
API_KEY=your_api_key_here
DATABASE_PASSWORD=your_password_here
JWT_SECRET=your_jwt_secretTipp: Nutze .env.example als Template für andere Entwickler
Warnung: Stelle sicher, dass .env in .gitignore aufgelistet ist
3
Konfiguriere dotenv in deiner Anwendung
Lade Umgebungsvariablen am Start deiner Anwendung
// index.js oder main.ts
require('dotenv').config();
const apiKey = process.env.API_KEY;
const dbPassword = process.env.DATABASE_PASSWORD;Tipp: Lade dotenv ganz am Anfang deiner Anwendung
Warnung: Verwende Defaults für optional Values, nicht für kritische Secrets
4
Scan bestehenden Code mit TruffleHog
Überprüfe bereits committete Secrets und entferne sie aus Git-History
pip install truffleHog
truffleHog filesystem .
truffleHog git https://github.com/your-repo.gitTipp: TruffleHog kann auch Cloud-Storage und Git-Repos scannen
Warnung: Wenn Secrets bereits committed wurden, verwende git-filter-repo um sie aus der History zu entfernen