Molti siti web hanno una parte che gli utenti normali non vedono.
Può essere:
/admin
/administrator
/backend
/dashboard
/manage
Oppure può trovarsi su un sottodominio:
admin.example.com
panel.example.com
manage.example.com
Avere un pannello amministrativo non è di per sé un problema.
Il problema nasce quando una superficie di amministrazione viene esposta su Internet senza le adeguate protezioni.
Perché esiste un pannello amministrativo?
Un pannello di amministrazione permette normalmente di svolgere operazioni privilegiate, come:
- gestione degli utenti;
- modifica dei contenuti;
- configurazione dell'applicazione;
- gestione degli ordini;
- accesso a dati interni;
- gestione di API o integrazioni;
- operazioni di manutenzione.
Proprio perché offre funzionalità più potenti rispetto alla parte pubblica del sito, dovrebbe essere protetto con particolare attenzione.
"È protetto da password, quindi va bene"?
Non necessariamente.
L'autenticazione è certamente importante, ma non è l'unico elemento da considerare.
Un pannello amministrativo accessibile pubblicamente dovrebbe essere valutato considerando almeno:
- autenticazione;
- autorizzazione;
- MFA quando appropriato;
- gestione delle sessioni;
- rate limiting;
- protezione dagli attacchi automatizzati;
- aggiornamento del software;
- configurazione del server;
- eventuali vulnerabilità dell'applicazione.
Un login funzionante non significa automaticamente che l'interfaccia sia sicura.
Il problema dei pannelli dimenticati
Un caso frequente è quello di un vecchio pannello che non viene più utilizzato.
Ad esempio:
admin.example.com
potrebbe appartenere a un vecchio progetto che nessuno ricorda più.
Oppure:
staging.example.com/admin
potrebbe essere rimasto online dopo una fase di sviluppo.
In questi casi il problema non è necessariamente una vulnerabilità specifica.
Il semplice fatto che una componente amministrativa continui a essere esposta può però aumentare la superficie di attacco.
Anche un pannello "nascosto" può essere trovato
Nascondere un pannello cambiando URL non equivale a proteggerlo.
Ad esempio:
example.com/admin
può diventare:
example.com/my-secret-panel
ma l'URL rimane comunque raggiungibile se non esistono controlli di accesso adeguati.
Inoltre, percorsi e riferimenti possono essere scoperti attraverso:
- codice HTML;
- JavaScript;
- sitemap;
- file di configurazione;
- documentazione;
- link dimenticati;
- vecchie versioni dell'applicazione;
- sottodomini;
- strumenti di gestione e deployment.
Per questo la sicurezza non dovrebbe dipendere dal fatto che un URL sia difficile da indovinare.
Pannelli di terze parti
Un altro scenario riguarda software installati sul server.
Per esempio:
/control-panel
/server-status
/monitoring
/database
oppure interfacce appartenenti a:
- CMS;
- sistemi di monitoring;
- strumenti CI/CD;
- pannelli cloud;
- sistemi di gestione API;
- strumenti di orchestrazione.
Non significa che questi strumenti debbano essere necessariamente nascosti.
Significa che bisogna sapere cosa è effettivamente raggiungibile da Internet e perché.
Cosa controllare
Per ogni interfaccia amministrativa individuata è utile chiedersi:
1. Serve davvero che sia pubblica?
Se il pannello può essere raggiunto soltanto dagli amministratori, potrebbe essere opportuno limitarne l'accesso alla rete aziendale, a una VPN o ad altri meccanismi appropriati.
2. È ancora utilizzata?
Un vecchio pannello dimenticato è particolarmente interessante da verificare.
Se non serve più, la soluzione più semplice può essere rimuoverlo.
3. È aggiornata?
Un pannello esposto su Internet dovrebbe essere mantenuto aggiornato come qualsiasi altra componente dell'applicazione.
4. Richiede autenticazione?
Un'interfaccia amministrativa senza autenticazione dovrebbe essere considerata con particolare attenzione.
5. Esiste un secondo fattore?
Per gli account privilegiati, l'autenticazione multifattore può aggiungere un ulteriore livello di protezione.
6. L'accesso è limitato?
Quando possibile, è utile ridurre la superficie di esposizione e consentire l'accesso soltanto agli utenti o alle reti che ne hanno realmente bisogno.
Come appare durante un controllo esterno?
Da fuori, un security scanner può individuare una superficie amministrativa senza sapere immediatamente se sia vulnerabile.
Ad esempio:
https://example.com/admin
potrebbe restituire:
HTTP/2 200
Questo significa semplicemente che quella risorsa è raggiungibile.
Non significa automaticamente:
"Il sito è stato compromesso."
Il controllo successivo deve stabilire cosa sia quella risorsa, se richieda autenticazione e quali protezioni siano presenti.
Questa distinzione è importante perché rilevare un'esposizione non equivale a confermare una vulnerabilità.
Una checklist semplice
Puoi utilizzare questa lista per fare un primo controllo:
- [ ] conosco tutti i pannelli amministrativi pubblicamente raggiungibili;
- [ ] so a cosa serve ciascun pannello;
- [ ] non esistono vecchi pannelli dimenticati;
- [ ] tutti i pannelli richiedono autenticazione;
- [ ] gli account amministrativi sono adeguatamente protetti;
- [ ] il software è aggiornato;
- [ ] l'accesso è limitato quando possibile;
- [ ] MFA è utilizzato dove appropriato;
- [ ] i pannelli inutilizzati vengono rimossi.
Perché fa parte della sicurezza della superficie web
Un sito non è composto soltanto dalla homepage.
La sua superficie pubblica può comprendere applicazioni, API, sottodomini, pannelli di amministrazione e servizi che nel tempo si sono aggiunti al progetto.
Più componenti rimangono esposte, più è importante sapere esattamente cosa esiste e perché.
È uno dei motivi per cui la discovery della superficie di attacco è una parte importante della sicurezza web.
MiHakero e le superfici amministrative
Un controllo esterno può aiutare a individuare componenti che meritano una verifica più approfondita.
L'obiettivo non è semplicemente trovare /admin.
È costruire una visione più completa di ciò che un dominio espone pubblicamente e distinguere le risorse normali da quelle che richiedono maggiore attenzione.
Perché spesso il primo problema di sicurezza non è una vulnerabilità sconosciuta.
È semplicemente una parte dell'infrastruttura che ci siamo dimenticati di avere online.