Codepurple Logo Codepurple Logo Codepurple Logo
  • Services
  • Blog
  • About us
  • Contact
  • de
  • /

  • en
  • Language:

  • de
  • /

  • en

Öffentliche .env-Dateien

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.

Public env

Was ist eine .env Datei?

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.

Was ist das Risiko?

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.

Statistik

Codepurple hat alle .ch und .li Domains auf öffentliche .env-Dateien untersucht. Dabei wurden 2’417’079 Domains untersucht.

  • 201 gefundene .env-Dateien
  • 135 gefundene Datenbankzugänge
  • 48 gefundene E-Mail Benutzernamen und Passwörter
  • 11 gefundene Zugänge zu Zahlungsanbietern
  • 98 gefundene Zugänge zu verschiedenen anderen APIs
  • 128 gefundene App Secrets

Wie schütze ich mich?

Es gibt primär zwei Möglichkeiten sich zu schützen, wenn .env-Dateien verwendet werden:

  • .env-Datei in einem Ordner speichern, welches der Webserver nicht ausliefert
  • .env-Datei in der Webserver-Konfiguration explizit sperren
Secure env

Analyse der gefundenen Passwörter

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.

In wie weit ist meine Firma betroffen?

Codepurple hat einen umfangreichen Datenstamm und Software für die Analyse zur Verfügung. Gerne Analysieren wir für Sie Ihr Unternehmen: Anfrage senden.

Contact us without obligation:

Sollen wir Ihre Systeme auf öffentliche Env-Dateien prüfen?

More blog posts

You may be interested in the following blog posts:

  • Penetrationtest : 2-Faktor-Auhtentifizierung
  • security.txt und Kontaktinformationen

A password with 8 characters with numbers, upper and lower case letters and symbols can be cracked in under one hour.

Source: Hive Systems

Hello

X

Sollen wir Ihre Systeme auf öffentliche Env-Dateien prüfen?

Contact us without obligation:

Speech bubble

Do you have any questions or would you like an appointment?

Kathrin Müller is looking forward to hearing from you and will be happy to organize a meeting according to your needs.

Contact

nanio GmbH (Codepurple)
Moosweg 24
5606 Dintikon

+41 79 823 45 30
rhino@codepurple.ch

Follow us

Linekdin

Imprint| Privacy| © Codepurple 2025. All rights reserved