File .env & Config yang Terekspos: The Keys to the Kingdom
Dalam pengembangan web modern (terutama framework MVC seperti Laravel, Symfony, Django, Rails), file konfigurasi adalah jantung aplikasi. File ini menyimpan variabel lingkungan (Environment Variables) yang menghubungkan aplikasi dengan database, layanan email, dan gateway pembayaran.
Jika file ini bisa dibaca publik, penyerang memiliki kendali penuh atas infrastruktur Anda.
1. Target Utama: File .env
File .env biasanya berada di root direktori proyek. Formatnya sederhana KEY=VALUE.
Isi File .env yang Umum:
APP_KEY(Digunakan untuk enkripsi sesi/cookies).DB_HOST,DB_USERNAME,DB_PASSWORD(Akses database langsung).AWS_ACCESS_KEY_ID,AWS_SECRET_ACCESS_KEY(Akses cloud penuh).STRIPE_SECRET(Akses rekening pembayaran).
filetype:env intext:"DB_PASSWORD"
filetype:env intext:"APP_DEBUG=true"
Mengapa ini terjadi? Developer sering lupa memasukkan .env ke dalam file .gitignore, atau salah mengonfigurasi web server sehingga melayani file dot (`.`) sebagai file statis.
2. Web Server Configs (web.config & sftp-config)
Selain aplikasi, server web sendiri punya file config.
IIS Web.Config
Server Windows (IIS) menggunakan XML.
filetype:xml inurl:"web.config" intext:"password"
Sublime Text SFTP Config
Developer yang menggunakan Sublime Text dengan plugin SFTP sering meninggalkan file sftp-config.json yang berisi password FTP/SSH server!
filetype:json inurl:"sftp-config.json" intext:"password"
3. Wordpress wp-config.php
File PHP umumnya dieksekusi di server, jadi kita tidak bisa melihat isinya di browser. TAPI, jika admin melakukan backup dengan mengganti nama file menjadi:
wp-config.php.bakwp-config.php.txtwp-config.php.save
Maka server akan menganggapnya sebagai file teks biasa dan menampilkannya ke browser.
inurl:"wp-config.php.bak" OR inurl:"wp-config.php.txt"
4. Docker & Kubernetes Config
Di era container, file konfigurasi orkestrasi juga menjadi target.
filetype:yml inurl:"docker-compose.yml" intext:"password"
filetype:yml inurl:"kube/config"
Jika attacker mendapatkan AWS_SECRET_ACCESS_KEY dari file .env Anda:
- Mereka bisa memutar ribuan server EC2 untuk menambang crypto (Cryptojacking).
- Tagihan cloud Anda bisa melonjak menjadi $50,000 dalam semalam.
- Mereka bisa menghapus semua backup S3 Anda (Ransomware).
5. Pencegahan (Mitigasi)
1. Block Dotfiles: Tambahkan aturan di Nginx/Apache untuk memblokir akses ke semua file yang dimulai dengan titik (.*).
2. Pindahkan Config: Jangan taruh file konfigurasi di folder public_html atau www. Taruh di direktori satu level di atasnya.
3. Environment Variables Server: Set variabel langsung di konfigurasi OS atau dashboard hosting, jangan bergantung pada file fisik di produksi.
🚀 Audit File Config Anda
Apakah server Anda mengekspos rahasia perusahaan? Gunakan Dork King untuk memverifikasi.
Ke Generator Dork King