I problemi più comuni alla sicurezza del server includono infezioni da malware, accessi non autorizzati, violazioni dei dati, attacchi DDoS (Distributed Denial-of-Service) e vulnerabilità di software.
Che cos'è la sicurezza del server?
Uno degli aspetti più importanti del ciclo di vita dello sviluppo è comprendere la sicurezza del server nell'ambiente di hosting che esegue le nostre app web. I nostri server consentono connessioni in entrata dai sistemi esterni tramite porte specifiche ogni volta che viene distribuita un'app web. Le porte del server identificano il traffico di rete in entrata e in uscita.
Abbiamo bisogno di connessioni sicure per mantenere l'integrità del sistema. Per comprendere le vulnerabilità del server, dobbiamo pensare al punto in cui avvengono le comunicazioni.
Nell'esempio riportato sopra:
- Un client (a sinistra), in genere un browser web, invia una richiesta HTTP al server.
- Il server riceve la richiesta HTTP e la elabora.
- Il nome di dominio viene interrogato in base a uno o più server dei nomi di dominio, di solito gestiti dal registrar dei nomi di dominio.
- Il server recupera o genera il contenuto richiesto e invia una risposta HTTP al client.
- Il client riceve la risposta ed esegue il rendering del contenuto.
Durante questo processo, in alcuni casi, le connessioni ai nostri server possono provenire da computer dannosi che cercano di sfruttare le vulnerabilità presenti nelle relative configurazioni dei server. Sono molti i motivi per cui un server potrebbe essere sfruttato.
Diamo un'occhiata ad alcuni attacchi ai server più comuni che sfruttano un sistema di sicurezza inadeguato.
Attacchi DDoS (Distributed Denial-of-Service)
In un attacco DDoS (Distributed Denial-of-Service), un criminale tenta di sovraccaricare un server preso di mira con un flusso di richieste HTTP. Questo attacco viene anche chiamato attacco HTTP flood . Ricordate che ogni volta che viene effettuata una richiesta HTTP, i nostri server hanno il compito di rispondere a tale richiesta. Se non dispone della capacità di risorse necessaria per soddisfare il numero di richieste simultanee in entrata, il server web si rallenta o si interrompe. In futuro, ogni richiesta HTTP successiva non verrà eseguita e, pertanto, il server web diventerà irraggiungibile.
Gli attacchi DDoS vengono generalmente sferrati tramite le botnet, che sono una rete di dispositivi infettati da software dannoso, noto anche come malware, progettato specificamente per inviare un flusso di richieste HTTP ad un computer preso di mira che non dispone di firewall sufficienti.
L'illustrazione riportata sopra fornisce una panoramica sul funzionamento degli attacchi HTTP flood. Sul lato destro, il client effettua una richiesta al server, ma, poiché sono presenti diversi bot che effettuano anche richieste al server, esaurendo così le risorse del server, il client non riesce a connettersi al server.
Attacco directory traversal
Un attacco directory traversal è un altro exploit comune che, in genere, prende di mira i server configurati in modo errato. Tutti i file web vengono gestiti direttamente dalla directory radice. Gli utenti che si connettono ai nostri server tramite richieste web HTTP devono essere in grado di accedere solo a file specifici dalla directory radice senza poter accedere o eseguire file da cartelle più alte nella struttura della directory. Se ciò dovesse accadere, un criminale potrebbe ottenere l'accesso ai file di sistema e di configurazione critici e creare scompiglio sul server.
L'immagine riportata sopra mostra come funziona questo attacco. Il criminale invia una richiesta HTTP dannosa utilizzando un URL modificato, che include il percorso della directory a un file di sistema o di configurazione. Il server elabora la richiesta e, a causa di una configurazione di sicurezza del server o della progettazione dell'applicazione di scarsa qualità, può recuperare il file di sistema e visualizzarne il contenuto o il codice sorgente.
Attacco di forza bruta
Un attacco di forza bruta, chiamato anche attacco al dizionario o controllo degli account, è un altro attacco comunemente utilizzato quando un criminale tenta di accedere ad un punto di accesso limitato sul server. Questo punto di accesso limitato è, in genere, l'account radice del server o un altro account con privilegi radice. I criminali utilizzano il malware per inviare automaticamente numerosi tentativi di accesso con combinazioni di password e nome utente generate automaticamente in base alle parole del dizionario.
L'illustrazione riportata sopra mostra come funziona questo attacco. A sinistra, si vede come il criminale invia ripetuti tentativi di accesso generati da un elenco di parole, utilizzando un malware. Se trova le combinazioni corrette, il criminale ottiene l'accesso al server. Gli attacchi di forza bruta possono essere altamente efficaci, anche se un server utilizza solo l'autenticazione con chiave SSH.
Stabilire e mantenere la sicurezza del server
Ecco alcune best practice per configurare un server sicuro:
- Mantenere aggiornati il sistema operativo e il software in uso con le ultime patch e gli aggiornamenti per la sicurezza del server.
- Disabilitare o bloccare eventuali porte o servizi non necessari per ridurre al minimo la superficie di attacco.
- Limitare l'accesso al server consentendo solo agli utenti autorizzati di connettersi e interagire con il server in questione.
- Proteggere il traffico di rete utilizzando protocolli di crittografia come SSL o TLS.
- Disporre di un solido piano di backup e disaster recovery per ridurre al minimo la perdita di dati e i problemi di downtime.
- Implementare password complesse e l'autenticazione multifattore per proteggersi dagli accessi non autorizzati.
- Utilizzare i firewall per controllare il traffico di rete in entrata e in uscita.
- Monitorare i registri del server e il traffico di rete per rilevare eventuali attività sospette.
- Utilizzare i sistemi di rilevamento e prevenzione delle intrusioni per identificare e prevenire gli attacchi.
- Implementare misure di sicurezza come le autorizzazioni del file system e i controlli degli accessi per proteggersi dagli accessi non autorizzati ai dati sensibili.
Domande frequenti (FAQ)
Un server sicuro è un server che protegge i dati e le comunicazioni con varie misure di sicurezza, come la crittografia, i firewall e i protocolli sicuri, per prevenire gli accessi non autorizzati e garantire che i dati vengano trasmessi e archiviati in modo sicuro.
Sì, un server web può essere violato se presenta vulnerabilità, come software obsoleto, password deboli o impostazioni configurate in modo errato, consentendo ai criminali di ottenere un accesso o un controllo non autorizzato.
Le best practice da seguire per garantire la sicurezza del server includono l'aggiornamento regolare del software, l'utilizzo di password complesse e dell'autenticazione multifattore, la crittografia dei dati, l'utilizzo di firewall e sistemi di rilevamento delle intrusioni e l'esecuzione di regolari controlli di sicurezza e valutazioni delle vulnerabilità.
Perché i clienti scelgono Akamai
Akamai è l'azienda di cybersecurity e cloud computing che abilita e protegge il business online. Le nostre soluzioni di sicurezza leader del settore, l'innovativa intelligence sulle minacce e il team presente su scala globale forniscono una difesa approfondita in grado di proteggere applicazioni e dati critici ovunque. Le soluzioni complete di cloud computing offerte da Akamai assicurano performance elevate e notevoli risparmi grazie alla piattaforma più distribuita al mondo. Le maggiori aziende internazionali si affidano ad Akamai per ottenere la protezione, la scalabilità e le competenze leader del settore di cui hanno bisogno per far crescere le loro attività senza rischi.