← Tutti i controlli
SicurezzaGravità tipica: Critico

Scanner di backup scaricabili

Cerca archivi compressi del sito e dump SQL scaricabili che espongono il tuo codice e i tuoi dati.

Cosa controlla

Questo scanner cerca backup accessibili pubblicamente sul tuo sito, come archivi compressi del sito o dump di database scaricabili. Rileva quando quei file sono stati lasciati sul server alla portata di chiunque.

Perché è importante

Un backup scaricabile può contenere tutto il tuo codice sorgente e, peggio ancora, un dump del database con dati degli utenti, password e segreti di configurazione. È una delle fughe più gravi perché consegna tutto il tuo sito e i tuoi dati in un colpo solo.

Come risolverlo

Rimuovi dalla cartella pubblica qualsiasi file di backup o dump SQL e conservali in un luogo privato fuori dalla portata del sito. Configura il tuo processo di backup così da non scrivere mai dentro la directory servita dal server web.

Come funziona questo controllo

Scanaris richiede nove nomi di file che le persone usano in continuazione per conservare backup nella radice del sito: backup.zip, backup.tar.gz, website.zip, www.zip, public_html.zip, site.zip, database.sql, dump.sql e db.sql. Per ciascuno verifica che la risposta sia un file vero e non la pagina generica del tuo sito: guarda il tipo di contenuto e, per i dump SQL, che il testo somigli a SQL. Tutti i rilievi sono di gravità critica, perché un file del genere contiene o il codice completo del sito o l'intero database.

Perché è importante

Un backup.zip raggiungibile è il tuo progetto completo: codice, configurazione, le chiavi che giravano nei file e, spesso, una copia del database dentro. Un dump.sql è il database così com'è: utenti, e-mail, password hashate (attaccabili con calma), ordini, messaggi. Nessuna tecnica necessaria: è un download. E gli scanner automatici provano esattamente questi nomi contro tutti i domini che trovano, quindi «nessuno conosce l'URL» non è una protezione.

Perché succede

Per comodità nel momento sbagliato: prima di una migrazione o di un aggiornamento, si comprime la cartella del sito «per sicurezza» e la si lascia lì. Oppure un plugin di backup scrive in una cartella pubblica. Oppure un'esportazione del database viene salvata accanto al codice per passarla a qualcuno. Su un server che serve la radice del progetto, qualsiasi file che ci finisce è pubblico all'istante.

Come risolvere

  • Elimina il file adesso e agisci come se fosse stato scaricato: ruota tutte le chiavi e le password che conteneva e, se c'erano dati personali, valuta l'obbligo di notifica.
  • Sposta i backup fuori dalla directory pubblica. I backup vanno in uno storage a parte (un bucket privato, un altro server), mai in una cartella servita dal server web.
  • Configura lo strumento di backup perché scriva fuori dalla radice web. I plugin WordPress di solito permettono di scegliere la cartella o di inviare a un servizio esterno.
  • Blocca le estensioni lato server come seconda barriera. In nginx: location ~* \.(zip|tar|gz|sql|bak)$ { deny all; }. In Apache, un FilesMatch equivalente con Require all denied. Se offri legittimamente download compressi, limitali a una cartella specifica.
  • Controlla i log di accesso cercando richieste in 200 verso questi nomi: ti diranno se qualcuno è passato prima.

Verifica che sia risolto

for p in backup.zip backup.tar.gz website.zip www.zip public_html.zip site.zip database.sql dump.sql db.sql; do
  printf "%-18s " "$p"; curl -s -o /dev/null -w "%{http_code} %{content_type}\n" "https://tuodominio.it/$p"
done

Atteso: 404 o 403. Un 200 in text/html su una single-page app è il suo HTML generico; un 200 in application/zip, application/octet-stream o text/plain è il file vero.

Domande frequenti

Il mio backup ha un nome che nessuno indovinerebbe.

Gli strumenti di attacco provano migliaia di nomi e combinazioni con il dominio, la data e parole come «old» o «bak». Un nome insolito riduce il rischio ma non lo elimina; la soluzione è che non stia in una cartella pubblica.

E se il file è protetto da password?

Uno ZIP con password si scarica lo stesso e si attacca senza limite di tentativi sul computer dell'attaccante. Resta un rilievo critico.

Il controllo guarda solo la radice. E le sottocartelle?

Esatto, questi nove nomi vengono testati nella radice. Gli elenchi di directory aperti, misurati da un altro controllo, sono il modo abituale per trovare backup nelle sottocartelle; chiuderli e bloccare le estensioni copre il resto.

Verificalo sul tuo sito

Scansiona il tuo sito gratis e scopri se questo e altri 44 controlli passano, con un prompt di fix per ogni problema.

Scansiona il mio sito gratis

Controlli correlati