Only in German available.
Published on: May 18, 2022
Author: Thomas Federer
In einer weiteren Analyse (siehe auch: SPF / DMARC Analyse von .ch und .li Domains oder Öffentliche .git Ordner) hat Codepurple bei allen .ch und .li Domains untersucht, ob .env Dateien öffentlich verfügbar sind. Dabei wurden 201 .env Dateien gefunden. Neben harmlosen Konfigurationseinstellungen wurden 135 Datenbankbenutzer und Passwörter, 48 E-Mail-Konten mit Benutzername und Passwort, 11 Zugänge zu Zahlungsanbieter, 98 Anmeldeinformationen für API’s (Schnittstellen) und 128 App-Secrets (Secret zum sicheren generieren von Session-IDs, CSRF-Tokens, JWT-Tokens oder gleich fix konfigurierte Adminaccounts) gefunden. Die Analyse der .env-Dateien brachte sehr brisante Erkenntnisse, denn Passwörter und Secrets sind in unverschlüsselter Form in der .env-Datei gespeichert.
Jede Software benötigt eine Konfiguration und hat diverse Einstellungen. Bei Anwendersoftware, wie zum Beispiel bei einem Mail-Client werden diese Einstellungen, wie E-Mail-Adresse, Benutzername und Passwort beim ersten Start vom Benutzer abgefragt. Bei Software, welche auf einem Server läuft und oft automatisch installiert wird, ist eine Abfrage vom Benutzer so nicht möglich. Bei einigen Software-Frameworks können diese Einstellungen über Umgebungs-Variablen (Environment-Variablen) festgelegt und in einer Datei mit dem Namen .env konfiguriert werden.
Beispiel einer .env-Datei:
ENV="PRODUCTION" LOG_LEVEL="INFO" SMTP_HOST="email.example.com" SMTP_PORT= 25 SMTP_USER="info@example.com" SMTP_PASS="SuperSecurePassword2022" SMTP_TLS=1 SMTP_CONNECTION_TIMEOUT_SECONDS=2 DB_HOST="dbserver.example.com" DB_DATABASE_NAME="important_database" DB_USER="my-app-db-user" DB_PASSWORD="2022SuperVerySecurePassword" PAYMENT_GATEWAY="payment.example.com" PAYMENT_SECRET= "super-secure-payment-api-secret"
Anmerkung: Wir empfehlen sicherere Passwörter als die oben in den Beispielen genannten.
Da fast jede Webapplikation auf eine Datenbank zugreift, müssen die Anmeldeinformationen der Applikation übergeben werden. Geschieht dies über die .env-Datei, so stehen die Anmeldeinformationen in Klartext in dieser Datei. Ist der Webserver falsch konfiguriert und wird diese .env-Datei vom Webserver ausgeliefert, kann jeder diese Daten abfragen. Dazu besucht man mit einem Browser eine URL wie zum Beispiel: https://example.com/.env.
Gefährlich ist, dass die Passwörter und Secrets in unverschlüsselter Form in der .env-Datei stehen.
Codepurple hat alle .ch und .li Domains auf öffentliche .env-Dateien untersucht. Dabei wurden 2’417’079 Domains untersucht.
Es gibt primär zwei Möglichkeiten sich zu schützen, wenn .env-Dateien verwendet werden:
Automatisiert hat Codepurple die Komplexität der gefundenen Passwörter analysiert. Dabei entsteht ein düsteres Bild. Etwa 65% der Passwörter sind sehr einfach und zu kurz. Der Benutzername als Passwort oder “secret” sind auch im Jahr 2022 keine guten Passwörter. Gerade bei der Konfiguration von Serversystemen kann man generierte und somit sichere Passwörter verwenden, da diese nicht von einem Menschen auswendig gelernt werden müssen.
Codepurple hat einen umfangreichen Datenstamm und Software für die Analyse zur Verfügung. Gerne Analysieren wir für Sie Ihr Unternehmen: Anfrage senden.
Sollen wir Ihre Systeme auf öffentliche Env-Dateien prüfen?
Folgende Blog-Beiträge könnten Sie interessieren:
A password with 8 characters with numbers, upper and lower case letters and symbols can be cracked in under one hour.
Source: Hive Systems
X
Sollen wir Ihre Systeme auf öffentliche Env-Dateien prüfen?
Contact us without obligation:
Kathrin Müller is looking forward to hearing from you and will be happy to organize a meeting according to your needs.
nanio GmbH (Codepurple)
Moosweg 24
5606 Dintikon