Alcuni giorni fa il mio sito Web è stato violato. Ho scoperto che l'hacker eseguiva le query direttamente nel database, quindi in qualche modo ha avuto accesso alle credenziali del mio database.
Sto usando laravel 4 e il file di configurazione è memorizzato fuori dalla cartella public_html in un file .env.production.php e assomiglia a questo:
<?php
return array(
'DB_NAME' => 'database_name',
'DB_USER' => 'database_user',
'DB_PASS' => 'my_password',
'DB_SERVER' => 'localhost'); ?>
L'accesso a questo file nel browser non restituisce nulla, quindi come hanno ottenuto i dati gli aggressori? Una teoria potrebbe essere che la società di hosting sia stata hackerata (io sono in hosting condiviso. Lo negano e ho motivi per crederci.
Quali altre possibilità ci sono? Inclusione di file remoti? Inclusione di file locali? Voglio sapere che cosa potrebbe causare il danneggiamento dei dati nel file di configurazione, quindi so cosa controllare nella mia applicazione.