Beispielarbeiten · Code & Fehler
Secrets-Prüfung: Zugangsdaten im Code finden, ohne sie weiterzugeben
Ein Demo-Repository mit erfundenen, absichtlich falschen Zugangsdaten. Der Prüfer findet sie in mehreren Dateien, meldet sie ohne Klartext, erzeugt .gitignore und .env.example und meldet bei sauberem Code nichts. Echte Schlüssel kommen in keinem Teil vor.
Musterarbeit (Demo), kein Kundenauftrag. Gebaut als Probeaufgabe mit erfundenen Beispieldaten; die Prüfzahlen unten stammen aus dem automatischen Prüflauf und sind nicht geschönt.
Was gebaut wurde
- Funde mit Datei und Zeile, Klartext maskiert
- Gegenprobe: sauberes Repository ohne Fehlfund
- .gitignore und .env.example erzeugt
- Repository und Schlüssel erfunden
Wie geprüft wurde
Automatischer Prüflauf vom 29.10.2026, aus dem Protokoll (Testdaten erfunden, Zahlen gemessen):
- Demo-Repo: 5 eingebaute falsche Leaks in 4 Dateien gefunden, ohne Fehlfund, Bericht ohne Klartext, .gitignore und .env.example erzeugt
- 12 Pruefungen, Gegenproben bestehen
Grenzen
Was diese Probe nicht abdeckt, steht hier, damit niemand mehr erwartet:
- Muster-Scan findet bekannte Schluesselformate, keine frei gewaehlten Passwoerter
- Gefundene Werte widerruft nur der Kontoinhaber; wir fassen keine Konten des Kunden an
- Der Git-Verlauf wird nur mit Lesezugriff des Kunden geprueft; Verlauf umschreiben ist eine eigene Absprache
Der Bericht
# Secrets-Pruefung - Demo-Repo Kornblume (erfunden)
Musterarbeit von GL Tools an einem erfundenen Repo mit absichtlich eingebauten falschen Leaks. Der Bericht nennt Datei, Zeile und Art, nie den vollen Wert.
Funde: 5
| Datei | Zeile | Art | Anfang | Sofortmassnahme |
|---|---|---|---|---|
| .env | 2 | PASSWORT_IN_URL | post**** | Passwort der Datenbank aendern |
| .env | 3 | STRIPE | sk_l**** | Schluessel im Dashboard rollen |
| app/config.py | 1 | AWS | AKIA**** | Schluessel im Anbieter-Konto widerrufen, neuen anlegen |
| deploy/id_demo.pem | 1 | PRIVATER_SCHLUESSEL | ----**** | Schluesselpaar ersetzen, alten Eintrag entfernen |
| scripts/deploy.sh | 2 | GITHUB | ghp_**** | Token widerrufen, neuen mit minimalen Rechten anlegen |
## Reihenfolge
1. Jeden gefundenen Wert als verbrannt behandeln und zuerst beim Anbieter widerrufen. Erst danach aus dem Code entfernen: ein Wert im Git-Verlauf bleibt lesbar, auch wenn die Datei geloescht ist.
2. Werte nur noch ueber Umgebungsvariablen oder einen Tresor laden (siehe .env.example).
3. `.gitignore` uebernehmen; `.env` aus dem Index nehmen: `git rm --cached .env`.
4. Verlauf pruefen: `git log -p -S<Anfang des Werts>`; bei oeffentlichen Repos den Verlauf bereinigen oder neu anlegen.
5. Vor jedem Commit scannen (pre-commit-Hook) und in der Pipeline.
## Grenzen
Ein Muster-Scan findet bekannte Formate, keine frei erfundenen Passwoerter. Widerrufen kann nur der Kontoinhaber.So etwas für deinen Betrieb?
Beschreib kurz, was du brauchst. Du bekommst einen Festpreis, bevor ich anfange; ohne dein Ja passiert nichts.