Diventa Autore per CoreTech | Scopri di più





Rafforzamento del sistema Web in 5 semplici passaggi

17/07/20 CoreTech Blog

Rinforzare un sistema informatico significa rendere più difficile l'attacco di un hacker malintenzionato. In termini formali, l'rafforzamento del sistema significa ridurre la superficie di attacco: la superficie di attacco è la combinazione di tutti i punti in cui un attaccante può colpire.

Molti sistemi di default hanno una superficie di attacco molto ampia. Questo perché viene installato molto software con troppe autorizzazioni e quante più funzioni possibili. L'rafforzamento del sistema, quindi, si basa essenzialmente sulle opzioni di scrematura.

In questa breve guida al rafforzamento, esamineremo 5 passaggi del processo di rafforzamento che è possibile eseguire come amministratore di un server che ospita applicazioni Web.

Passaggio 1. Rafforzamento del sistema operativo

Il livello base dell'rafforzamento del sistema si occupa della sicurezza del sistema operativo. Un sistema operativo rinforzato ti consente di evitare molte minacce alla sicurezza .

Per rafforzare il sistema operativo del server:

  • Disinstallare tutto il software non necessario. Ogni programma può presentare una potenziale vulnerabilità che può consentire all'attaccante di intensificare l'attacco. Ciò include, ad esempio, anche compilatori / interpreti non necessari, poiché possono consentire all'attaccante di creare shell inverse .
  • Rimuovere tutti gli account utente non necessari e assicurarsi che gli account utente utilizzati per eseguire i servizi non dispongano di privilegi eccessivi. Ad esempio, se si utilizza un account utente per eseguire il proprio server Web, potrebbe non essere necessario l'accesso alla shell e dovrebbe avere privilegi minimi.
  • Per evitare accessi non autorizzati, richiedere password complessecome parte del controllo degli accessi (ma non richiedere modifiche regolari della password - tali pratiche sono risultate meno sicure) o utilizzare l'autenticazione basata su chiave.
  • Attiva la registrazione dettagliata se puoi permetterti le risorse. Più dettagli hai nei tuoi registri, più facile sarà analizzare i registri dopo un attacco.
  • Abilita il patching automatico del sistema operativo o abilita le notifiche delle patch. Le patch di sicurezza sono di fondamentale importanza e installarle automaticamente è più sicura.

Si noti che i suggerimenti generali sopra riportati si applicano a tutti i sistemi operativi: Linux / UNIX, Microsoft Windows, macOS e tutti gli altri. Tuttavia, casi specifici possono applicarsi a sistemi specifici. Ad esempio, su Windows, potresti voler concentrarti sui criteri di gruppo.

Passaggio 2. Rafforzamento della rete

La protezione della rete si estende oltre il server e spesso include dispositivi di rete aggiuntivi. Tuttavia, a livello del server che stai gestendo, ci sono già molte cose che puoi fare per migliorare la sicurezza della rete.

Per rafforzare le connessioni di rete sul server:

  • Chiudere e disinstallare tutti i servizi non necessari se non vengono utilizzati su questo server. Ad esempio, FTP, telnet, POP / SMTP e altro. Ciò ti consentirà di eliminare tutte le porte di rete aperte non necessarie.
  • Applicare regole firewall rigide. Se si tratta di un server Web dedicato, assicurarsi che le uniche connessioni in entrata consentite siano connessioni Web e potenzialmente amministrative (ad esempio SSH).
  • Se puoi permetterti le risorse, monitora le connessioni in uscita per potenziali shell inverse.

Un sacco di rafforzamento della rete è già fatto quando si indurisce il sistema operativo. Tuttavia, se non sei l'unica persona con accesso al server, è una buona idea proteggersi da qualcun altro che apre connessioni di rete non sicure.

Passaggio 3. Rafforzamento del server Web

Poiché supponiamo che la funzione principale del tuo server sia l'hosting di applicazioni Web, devi concentrarti sull'rafforzamento del software del server Web.

Per rafforzare il tuo server web:

  • Rimuovere tutti i moduli server Web non necessari. Molti server Web per impostazione predefinita sono dotati di diversi moduli che introducono rischi per la sicurezza.
  • Modifica le impostazioni di configurazione predefinite. Ad esempio, molti server Web supportano i vecchi protocolli SSL / TLS nelle loro impostazioni predefinite. Ciò significa che il tuo server è vulnerabile ad attacchi come BEASTo POODLE .
  • Attiva protezione aggiuntiva per le applicazioni web. Ad esempio, introdurre una politica di sicurezza dei contenuti (CSP).
  • Installa ed esegui un firewall per applicazioni Web (WAF). La maggior parte dei server Web supporta il firewall ModSecurity open source.
  • Se possibile, aggiorna automaticamente il software del server patch all'ultima versione o attiva le notifiche per il patching manuale.

Abbiamo anche guide dettagliate per rafforzare i server Web più popolari:

  • Scopri come rafforzare nginx
  • Scopri come rafforzare Apache
  • Scopri come rafforzare IIS

Passaggio 4. Rafforzamento delle applicazioni Web

Se conosci già un po' la sicurezza web in generale , sai che la maggior parte delle vulnerabilità del web sono il risultato di errori nelle applicazioni web, non nei software sottostanti (come server web o sistemi operativi). Pertanto, questo è il passo più importante.

Per rafforzare le tue applicazioni Web:

  • Scansiona regolarmente tutte le tue applicazioni web usando uno scanner di vulnerabilità web. Elimina tutte le vulnerabilità il prima possibile. Il modo migliore per farlo è scansionare le applicazioni in fase di sviluppo, ad esempio usando Jenkins .
  • Eseguire ulteriori test di penetrazione. Mentre uno scanner di vulnerabilità rileva la maggior parte delle vulnerabilità di sicurezza, i tester di penetrazione saranno in grado di trovare quelli che non sono rilevabili automaticamente. I test di penetrazione e la scansione delle vulnerabilitàdevono essere trattati come attività complementari, non alternative.
  • Aggiungi regole temporanee al firewall dell'applicazione Web se ci sono vulnerabilità che non puoi eliminare immediatamente.

Sebbene non faccia parte dell'rafforzamento stesso, la codifica sicura è molto importante per la sicurezza delle applicazioni web. Pertanto, se la tua organizzazione lo promuove, avrai meno vulnerabilità di cui preoccuparti.

Passaggio 5. Rafforzamento continuo

La cosa più importante da capire sul rafforzamento è che si tratta di un processo senza fine. È necessario eseguire regolari controlli di rafforzamento del sistema per assicurarsi che la configurazione di sicurezza sia aggiornata, che tutte le misure di sicurezza siano ancora in atto e che non vi siano nuove minacce alla sicurezza delle informazioni. Tali nuove minacce possono provenire da altri utenti del server, dagli sviluppatori di applicazioni Web o semplicemente a causa delle vulnerabilità riscontrate nel software esistente.

Fortunatamente, parte del processo può essere automatizzata. Ad esempio, è possibile utilizzare il software di gestione delle patch per assicurarsi che il software chiave sia sempre aggiornato. È inoltre possibile eseguire scansioni pianificate utilizzando uno scanner di vulnerabilità Web per assicurarsi che le applicazioni Web nuove e aggiornate non introducano minacce alla sicurezza informatica.

Il modo migliore per farlo è quello di mantenere una checklist di rafforzamento, che crei inizialmente con il tuo primo esercizio di rafforzamento e poi modifichi mentre scopri nuovi modi per rendere il tuo sistema meno soggetto agli attacchi.


Articoli su Acunetix

Trovare le vulnerabilità dei siti web prima degli HackerL'importanza della convalida delle correzioni: lezioni da GoogleSDLC agile e sicuro - Best practiceIn che misura le aziende gestiscono la sicurezza delle applicazioni Web?Cross-Origin Resource Sharing (CORS) e intestazione Access-Control-Allow-OriginCosa sono i reindirizzamenti aperti?DevSecOps: come arrivarci da DevOpsIl bigino su SQL Injection per sviluppatoriSfruttare SSTI in ThymeleafSicurezza nginx: come proteggere la configurazione del serverRafforzamento del sistema Web in 5 semplici passaggiCos'è la sicurezza del sito Web - Come proteggere il tuo sito Web dall'hackingRapporto sulle vulnerabilità delle applicazioni Web Acunetix 2020Perché l'elenco delle directory è pericoloso?Cosa sono gli hack di Google?Cosa è l'attacco BEASTWeb Shells in Action - Rilevazione e prevenzione - parte 5Web Shells in Action - parte 4Mantenere le Web Shells sotto copertura - parte 3Introduzione alle web shell - parte 2: 101 Uso di PHPIntroduzione alle web shell - parte 1Debunking 5 miti sulla postura della sicurezza informaticaIniezioni di NoSQL e come evitarleConfigurazione passo passo di Acunetix con JenkinsCosa sono i riferimenti a oggetti diretti non sicuriAnche il più forte cade: un'iniezione SQL in Sophos XG FirewallAcunetix rilascia Business Logic RecorderCome recuperare un sito Web compromessoCome difendersi dagli hacker Black Hat durante la pandemia COVID-19Che cos'è l'inclusione remota dei file (RFI)?Apache Security - 10 consigli per un'installazione sicuraUn nuovo sguardo sugli attacchi correlati al proxy inversoVulnerabilità delle password comuni e come evitarleTutto quello che devi sapere sugli attacchi Man-in-the-MiddleChe cosa sono le iniezioni HTMLRed Teaming – 5 consigli su come farlo in modo sicuroTesta le tue competenze XSS utilizzando siti vulnerabiliPerché hacker malintenzionati hanno messo gli occhi sugli ospedaliPratiche di codifica sicura – I tre principi chiaveLa maledizione delle vecchie librerie JavaMutation XSS nella ricerca GoogleIgnorare SOP utilizzando la cache del browserCome e perché evitare reindirizzamenti e inoltri non convalidati?Dirottamento di sessione e altri attacchi di sessioneCome abbiamo trovato un altro XSS in Google con AcunetixChe cos'è un buffer overflowChe cos'è l'overflow di IntegerChe cos'è HSTS e perché dovrei usarlo?Che cosa è OS Command InjectionVulnerabilità delle entità esterne XML in Internet ExplorerCoreTech assicura protezione dei siti Web con AcunetixCoreTech distributore Acunetix a fianco dei partner per la CyberSecurityCyberSecurity applicativa, nuova opportunità per voi!