Tüm rehberler
Kritik önem derecesiYapılandırma Hataları

.env dosyalarının açığa çıkması: saldırganlar secret'larını nasıl bulur

Bir .env dosyası veritabanı parolalarını, API key'lerini ve imzalama secret'larını barındırır. Web üzerinden erişilebilirse — /.env, /.env.production veya /.env.backup gibi bir yedekte — herkes onu indirip hizmetlerini ele geçirebilir.

Nedir

Environment dosyaları sunucuda kalmalı ve asla istemcilere sunulmamalıdır. Yanlış yapılandırılmış bir statik handler, web root'a düşmüş başıboş bir kopya veya dotfile'ları sunan bir framework onları açığa çıkarabilir.

Saldırganlar tahmin etmez — /.env ve onlarca varyantını sürekli olarak milyonlarca host'a karşı isteyen otomatik taramalar çalıştırır. Erişilebilir bir dosya saatler içinde bulunur.

Neden önemli

Bu dosyalar rutin olarak production veritabanı URL'leri, Stripe secret key'leri, JWT imzalama secret'ları ve bulut kimlik bilgileri içerir. Tek bir sızıntı; tam veri hırsızlığı, sahte ücretlendirmeler ve hesap ele geçirme anlamına gelebilir.

Secret'lar rotate edilene kadar geçerli olduğundan, dosya kaldırıldıktan çok sonra bile — içindeki her şeyi rotate etmediğin sürece — hasar devam eder.

Nasıl düzeltilir

Dotfile'ları sunucuda engelle

Web sunucusu veya proxy yapılandırmanda .env ve diğer dotfile'lara erişimi reddet.

location ~ /\.(?!well-known).* {
  deny all;
  return 404;
}
Env dosyalarını web root dışında tut

Yapılandırmayı, sunucunun statik olarak sunduğu herhangi bir dizinin dışında sakla ve build'inin .env dosyalarını yayınlanan çıktıya kopyalamadığından emin ol.

Açığa çıkan her şeyi rotate et

Bir dosya bir kez bile erişilebilir olduysa, içindeki her secret'ı ele geçmiş kabul et ve veritabanı parolalarını, API key'lerini ve token'ları derhal rotate et.

SSS

Dosyayı kaldırdım — güvende miyim?

Secret'ları rotate edene kadar değil. Onu indiren herkes, sen değiştirene kadar hâlâ geçerli kimlik bilgilerine sahip.

Benimkinin açığa çıkıp çıkmadığını nasıl anlarım?

Bir tarayıcıda https://yourdomain.com/.env iste. 404 yerine KEY=value satırları görüyorsan, açığa çıkmış demektir. AppSafe bunu otomatik olarak kontrol eder.

Uygulaman etkileniyor mu?

AppSafe, bunu ve onlarca başka sorunu tek bir ücretsiz taramada kontrol eder.

Uygulamamı ücretsiz tara