Offengelegte .env-Dateien: wie Angreifer deine Secrets finden
Eine .env-Datei enthält Datenbank-Passwörter, API-Keys und Signatur-Secrets. Ist sie über das Web erreichbar — unter /.env, /.env.production oder einem Backup wie /.env.backup —, kann sie jeder herunterladen und deine Dienste übernehmen.
Was es ist
Environment-Dateien sollen auf dem Server bleiben und niemals an Clients ausgeliefert werden. Ein fehlkonfigurierter Static-Handler, eine verirrte Kopie im Web-Root oder ein Framework, das Dotfiles ausliefert, können sie offenlegen.
Angreifer raten nicht — sie führen automatisierte Scans aus, die /.env und Dutzende Varianten fortlaufend gegen Millionen von Hosts anfragen. Eine erreichbare Datei wird innerhalb von Stunden gefunden.
Warum es wichtig ist
Diese Dateien enthalten routinemäßig Produktions-Datenbank-URLs, Stripe Secret Keys, JWT-Signatur-Secrets und Cloud-Zugangsdaten. Ein einziges Leck kann vollständigen Datendiebstahl, betrügerische Abbuchungen und Account-Übernahmen bedeuten.
Da die Secrets gültig bleiben, bis sie rotiert werden, hält der Schaden lange nach dem Entfernen der Datei an, sofern du nicht alles rotierst, was sie enthielt.
So behebst du es
Verweigere in der Konfiguration deines Webservers oder Proxys den Zugriff auf .env und andere Dotfiles.
location ~ /\.(?!well-known).* {
deny all;
return 404;
}Speichere die Konfiguration außerhalb jedes Verzeichnisses, das der Server statisch ausliefert, und stelle sicher, dass dein Build keine .env-Dateien in die veröffentlichte Ausgabe kopiert.
War eine Datei jemals erreichbar, behandle jedes darin enthaltene Secret als kompromittiert und rotiere Datenbank-Passwörter, API-Keys und Tokens sofort.
FAQ
Ich habe die Datei entfernt — bin ich sicher?
Nicht, bis du die Secrets rotierst. Wer sie heruntergeladen hat, besitzt weiterhin gültige Zugangsdaten, bis du sie änderst.
Woran erkenne ich, ob meine offengelegt ist?
Rufe https://deinedomain.de/.env in einem Browser auf. Siehst du KEY=value-Zeilen statt eines 404, ist sie offengelegt. AppSafe prüft das automatisch.
Ist deine App betroffen?
AppSafe prüft dies und Dutzende weitere Probleme in einem kostenlosen Scan.
Meine App gratis scannenAus dem Blog
Falsche KI-Crawler jagen deine .env-Dateien. So prüfst du deine
Credential-Scanner leihen sich die Namen von KI-Crawlern, um an Allowlists vorbeizukommen, und sie fragen nach einer ganz bestimmten Datei: deiner .env. So prüfst du, ob deine erreichbar ist, und wie du sie absicherst.
Das Railway-Datenleck: So rotierst du die Secrets deiner App ohne Ausfallzeit
Railway hat alle Nutzer aufgefordert, ihre Umgebungsvariablen zu rotieren, nachdem Angreifer gezielt nach KI- und Plattform-API-Keys gesucht hatten. So prüfst du, ob du betroffen bist, rotierst alles, ohne deine App lahmzulegen — und sorgst dafür, dass das nächste Datenleck weniger wehtut.
PHP2Shell wird ausgenutzt: So prüfst du, ob deine App betroffen ist
Zwei kritische Bugs in PHP selbst gingen innerhalb weniger Tage von „Patch veröffentlicht“ zu „aktiv ausgenutzt“. So findest du heraus, ob etwas, das du hostest, eine betroffene Version nutzt — und was du heute dagegen tust.
Launchst du eine mit KI gebaute App? Prüfe diese 7 Dinge vorher
KI-Coding-Tools optimieren auf „es funktioniert“, nicht auf „es ist sicher zum Launchen“. Das sind die sieben Probleme, die wir bei jeder frisch gelaunchten App zuerst prüfen — mit der Lösung für jedes.
Verwandte Guides
Offenes .git-Verzeichnis: das Quellcode-Leck, das sich gut sichtbar versteckt
Ein erreichbares /.git liefert deine komplette Codebasis samt Commit-Historie aus.
Offene Datenbank-Backups: was passiert, wenn /backup.sql erreichbar ist
Ein erreichbarer .sql-Dump ist die komplette Übergabe deiner gesamten Datenbank.
API-Keys, die in clientseitigem JavaScript offengelegt sind
Alles in deinem Bundle ist öffentlich. Behandle es entsprechend.
Source Maps in der Produktion leaken deinen Quellcode
Ausgelieferte .map-Dateien geben deinen originalen Quellcode preis.