Snort ou Suricata. Parte 1: scegliamo un IDS/IPS gratuito per proteggere la rete aziendale

Una volta, per proteggere una rete locale, era sufficiente un semplice firewall e programmi antivirus, ma contro gli attacchi degli hacker moderni e la proliferazione recente di malware, questo insieme non è più sufficientemente efficace. Il vecchio e caro firewall analizza solo le intestazioni dei pacchetti, consentendoli o bloccandoli in base a un insieme di regole formali. Di ciò che c'è all'interno dei pacchetti non sa nulla, pertanto non è in grado di riconoscere le azioni apparentemente legittime degli aggressori. I programmi antivirus non catturano sempre il malware, quindi l'amministratore deve affrontare la sfida di monitorare le attività anomale e isolare tempestivamente gli host infetti.

Snort ou Suricata. Parte 1: scegliamo un IDS/IPS gratuito per proteggere la rete aziendale

Ci sono molte soluzioni avanzate che permettono di proteggere l'infrastruttura IT di un'azienda. Oggi parleremo di sistemi di rilevamento e prevenzione delle intrusioni con codice sorgente aperto, che possono essere implementati senza acquistare costosi hardware e licenze software.

Classificazione IDS/IPS

L'IDS (Intrusion Detection System) è un sistema progettato per registrare le azioni sospette nella rete o su un singolo computer. Tieni un registro degli eventi e notifica il responsabile della sicurezza delle informazioni. Nell'IDS possiamo individuare i seguenti elementi:

  • sensori per monitorare il traffico di rete, vari registri, ecc. 
  • un sottosistema di analisi che rileva nei dati ricevuti segni di attacchi dannosi;
  • uno storage per raccogliere eventi primari e risultati dell'analisi;
  • una console di gestione.

Inizialmente, gli IDS venivano classificati in base alla loro posizione: potevano essere orientati a proteggere singoli nodi (host-based o Host Intrusion Detection System — HIDS) oppure a proteggere l'intera rete aziendale (network-based o Network Intrusion Detection System — NIDS). Vale la pena menzionare i cosiddetti APIDS (Application protocol-based IDS): monitorano un insieme limitato di protocolli applicativi per rilevare attacchi specifici e non effettuano un'analisi approfondita dei pacchetti di rete. Questi prodotti somigliano generalmente a proxy e vengono utilizzati per proteggere servizi specifici: server web e applicazioni web (ad esempio, scritte in PHP), server di database, ecc. Un tipico rappresentante di questa classe è mod_security per il server web Apache.

Siamo più interessati a NIDS universali che supportano un'ampia gamma di protocolli di comunicazione e tecnologie di analisi approfondita dei pacchetti DPI (Deep Packet Inspection). Monitorano tutto il traffico in transito, a partire dal livello di collegamento, e identificano un ampio spettro di attacchi di rete, così come tentativi di accesso non autorizzato alle informazioni. Spesso, tali sistemi si distinguono per un'architettura distribuita e possono interagire con vari dispositivi di rete attivi. Va notato che molti dei moderni NIDS sono ibridi e combinano più approcci. A seconda della configurazione e delle impostazioni, possono affrontare diverse problematiche: per esempio, la protezione di un singolo nodo o dell'intera rete. Inoltre, le funzioni IDS per le workstation sono state assunte dai pacchetti antivirus, che, a causa della diffusione di trojan mirati al furto di informazioni, si sono trasformati in firewall multifunzionali, che affrontano anche le questioni del riconoscimento e del blocco del traffico sospetto.

Inizialmente, gli IDS potevano solo rilevare le azioni di malware, il funzionamento di scanner di porte o, ad esempio, le violazioni delle politiche di sicurezza aziendale da parte degli utenti. Al verificarsi di un determinato evento, avvisavano l'amministratore, ma presto divenne chiaro che semplicemente riconoscere un attacco non era sufficiente: era necessario bloccarlo. Così, gli IDS si sono trasformati in IPS (Intrusion Prevention Systems) — sistemi di prevenzione delle intrusioni, in grado di interagire con i firewall.

Metodi di rilevamento

Le moderne soluzioni per il rilevamento e la prevenzione delle intrusioni utilizzano vari metodi per determinare l'attività dannosa, che possono essere suddivisi in tre categorie. Questo ci offre un'altra possibilità di classificazione dei sistemi:

  • Gli IDS/IPS basati su firme identificano nei dati di traffico alcuni schemi o monitorano le variazioni dello stato dei sistemi per determinare un attacco di rete o un tentativo di infezione. Offrono praticamente pochi falsi positivi e avvisi errati, ma non sono in grado di rilevare minacce sconosciute;
  • I sistemi IDS che identificano anomalie non utilizzano firme di attacco. Riconoscono il comportamento anomalo dei sistemi informatici (incluso il traffico di rete anomalo) e possono individuare anche attacchi sconosciuti. Questi sistemi possono generare molti falsi positivi e, se non utilizzati correttamente, possono paralizzare il funzionamento della rete locale;
  • Gli IDS basati su regole funzionano secondo il principio: if FATT0 then AZIONE. In sostanza, sono sistemi esperti con basi di conoscenza — un insieme di fatti e regole di deduzione logica. Queste soluzioni richiedono un notevole sforzo di configurazione e richiedono all'amministratore una comprensione dettagliata del funzionamento della rete. 

Storia dello sviluppo degli IDS

L'era della rapida espansione di Internet e delle reti aziendali è iniziata negli anni '90, ma gli specialisti hanno iniziato a interessarsi a tecnologie avanzate di sicurezza di rete un po' prima. Nel 1986, Dorothy Denning e Peter Neumann pubblicarono il modello IDES (Intrusion Detection Expert System), che divenne la base per la maggior parte dei sistemi di rilevamento delle intrusioni moderni. Utilizzava un sistema esperto per identificare tipi noti di attacchi, oltre a metodi statistici e profili di utenti/sistemi. IDES veniva eseguito su workstation Sun, controllando il traffico di rete e i dati delle applicazioni. Nel 1993 fu rilasciato NIDES (Next-generation Intrusion Detection Expert System) — un sistema esperto di rilevamento delle intrusioni di nuova generazione.

Sulla base del lavoro di Denning e Neumann, nel 1988 è stato sviluppato il sistema esperto MIDAS (Multics intrusion detection and alerting system), che utilizza P-BEST e LISP. In quello stesso periodo è stato creato un sistema Haystack basato su metodi statistici. Un altro rilevatore statistico di anomalie, W&S (Wisdom & Sense), è stato sviluppato un anno dopo presso il Laboratorio Nazionale di Los Alamos. Lo sviluppo del settore stava progredendo rapidamente. Ad esempio, nel 1990 nel sistema TIM (Time-based inductive machine) era già stata implementata l'individuazione delle anomalie utilizzando l'apprendimento induttivo su schemi utente sequenziali (linguaggio Common LISP). NSM (Network Security Monitor) per individuare anomalie confrontava le matrici di accesso, mentre l'ISOA (Information Security Officer’s Assistant) supportava varie strategie di rilevamento: metodi statistici, verifica del profilo e sistema esperto. Il sistema ComputerWatch, creato presso AT&T Bell Labs, utilizzava sia metodi statistici che regole per il controllo, mentre il primo prototipo di IDS distribuito, DIDS (Distributed intrusion detection system), era stato sviluppato dagli sviluppatori dell'Università della California nel 1991 e fungeva anche da sistema esperto.

Inizialmente, gli IDS erano proprietari, ma già nel 1998 il Laboratorio Nazionale Lawrence di Berkeley ha rilasciato Bro (rinominato in Zeek nel 2018) — un sistema open source che utilizza un linguaggio di regole proprietario per l'analisi dei dati libpcap. Nel novembre dello stesso anno è apparso APE, un sniffador di pacchetti che utilizza libpcap, che un mese dopo è stato rinominato in Snort e successivamente è diventato un IDS/IPS completo. Anche molte soluzioni proprietarie hanno iniziato a emergere in quel periodo.

Snort e Suricata

In molte aziende si preferiscono gli IDS/IPS gratuiti con codice sorgente aperto. A lungo, la soluzione standard è stata l'ormai citata Snort, ma ora è stata superata dal sistema Suricata. Analizziamo più nel dettaglio i loro vantaggi e svantaggi. Snort combina i vantaggi del metodo basato su firme con la capacità di rilevare anomalie in tempo reale. Suricata consente anche di utilizzare metodi diversi oltre al riconoscimento degli attacchi tramite firme. Il sistema è stato creato da un gruppo di sviluppatori che si è staccato dal progetto Snort e supporta funzionalità IPS a partire dalla versione 1.4, mentre in Snort la possibilità di prevenire intrusioni è stata implementata successivamente.

La principale differenza tra i due prodotti popolari risiede nella capacità di Suricata di utilizzare la GPU per i calcoli in modalità IDS, oltre a un IPS più avanzato. Il sistema è stato progettato sin dall'inizio per il multithreading, mentre Snort è un prodotto a thread singolo. A causa della sua lunga storia e del codice ereditato, non sfrutta in modo ottimale le piattaforme hardware multi-processore/multi-core, mentre Suricata su normali computer di uso generale può gestire traffico fino a 10 Gbps. Si può discutere a lungo sulle somiglianze e sulle differenze tra i due sistemi, ma sebbene il motore di Suricata funzioni più rapidamente, per canali non troppo ampi ciò non ha una rilevanza fondamentale.

Opzioni di distribuzione

L'IPS deve essere posizionato in modo tale che il sistema possa monitorare i segmenti di rete a lui sottoposti. Nella maggior parte dei casi si tratta di un computer dedicato, il cui'interfaccia è connessa dopo i dispositivi di confine e 'guarda' attraverso di essi verso le reti pubbliche non protette (Internet). L'altra interfaccia dell'IPS è collegata all'ingresso del segmento protetto, in modo che tutto il traffico passi attraverso il sistema e venga analizzato. Nei casi più complessi, ci possono essere più segmenti protetti: ad esempio, nelle reti aziendali si distingue spesso una zona demilitarizzata (DMZ) con servizi accessibili da Internet.

Snort ou Suricata. Parte 1: scegliamo un IDS/IPS gratuito per proteggere la rete aziendale

Un IPS del genere può prevenire tentativi di scansione delle porte o di accesso tramite attacco a forza bruta, sfruttamento di vulnerabilità nei server di posta, nei server web o negli script, oltre ad altre varietà di attacchi esterni. Nel caso in cui i computer della rete locale vengano infettati da malware, l'IDS non consentirà loro di connettersi ai server botnet situati all'esterno. Per una protezione più seria della rete interna, probabilmente sarà necessaria una configurazione complessa con un sistema distribuito e costosi switch gestiti in grado di fare mirror del traffico per quelli collegati a uno dei porti dell'interfaccia IDS.

Spesso le reti aziendali sono soggette ad attacchi distribuiti mirati a negare il servizio (DDoS). Sebbene i moderni IDS possano affrontarli, la configurazione descritta sopra probabilmente non sarà utile. Il sistema riconosce l'attività dannosa e blocca il traffico parassitario, ma affinché ciò avvenga, i pacchetti devono passare attraverso una connessione internet esterna e arrivare alla sua interfaccia di rete. A seconda dell'intensità dell'attacco, il canale di comunicazione potrebbe non essere in grado di gestire il carico e l'obiettivo degli aggressori sarà raggiunto. In questi casi, raccomandiamo di implementare un IDS su un server virtuale con una connessione internet significativamente più performante. È possibile collegare un VPS alla rete locale tramite VPN e poi sarà necessario configurare il routing di tutto il traffico esterno attraverso di esso. In questo modo, in caso di attacco DDoS, non sarà necessario instradare i pacchetti attraverso la connessione con il provider; saranno bloccati sul nodo esterno.

Snort ou Suricata. Parte 1: scegliamo un IDS/IPS gratuito per proteggere la rete aziendale

Il problema della scelta

Identificare un leader tra i sistemi gratuiti è molto difficile. La scelta di un IDS/IPs dipende dalla topologia della rete, dalle funzionalità di sicurezza necessarie e dalle preferenze personali dell'amministratore e dalla sua disponibilità a lavorare sulle configurazioni. Snort ha una storia più lunga ed è meglio documentato, anche se informazioni su Suricata non sono difficili da trovare online. In ogni caso, per imparare a usare il sistema sarà necessario dedicare uno sforzo, che alla fine sarà ripagato: gli IDS/IPs hardware e software commerciali costano piuttosto cari e non sempre rientrano nel budget. Non vale la pena pentirsi del tempo speso, poiché un buon amministratore migliora sempre le proprie competenze a spese del datore di lavoro. In questa situazione, tutti ne traggono vantaggio. Nel prossimo articolo esamineremo alcune opzioni di distribuzione di Suricata e confronteremo praticamente un sistema più moderno con il classico IDS/IPs Snort.

Snort ou Suricata. Parte 1: scegliamo un IDS/IPS gratuito per proteggere la rete aziendale

Snort ou Suricata. Parte 1: scegliamo un IDS/IPS gratuito per proteggere la rete aziendale

Fonte: habr.com

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster