Introducere

Deși primele tipuri de sisteme de detectare a intruziunilor în rețea datează încă de la începutul anilor 1980, conceptul de IDS a luat avânt atunci când Martin Roesch a creat sistemul său IDS gratuit și open source SNORT. Datorită designului său ușor și opțiunilor flexibile de implementare, baza de utilizatori ai Snort a crescut rapid în anii următori (până la 400.000 în prezent).

În 2001, Martin Roesch a fondat compania Sourcefire (achiziționată de Cisco în 2013) pentru un produs IDS comercial bazat pe SNORT. Cu toate acestea, versiunea originală gratuită și open-source a SNORT a rămas disponibilă și este încă utilizată pe scară largă în rețelele din întreaga lume. Între timp, unii concurenți au câștigat teren pe tărâmul IDS cu sursă deschisă, mai ales Suricata IDS.

Care sunt principalele diferențe dintre acestea și la ce ne putem aștepta în viitor de la SNORT?

Reguli

O soluție IDS este la fel de bună doar ca și regulile disponibile pe care le poate aplica traficului monitorizat. Snort a beneficiat întotdeauna de mult sprijin din partea comunității, iar acest lucru a dus la un set de reguli substanțial, actualizat în mod regulat. Sintaxa regulilor este destul de simplă, iar structura programului permite oricui să implementeze reguli personalizate în IDS-ul său sau să le partajeze cu comunitatea.

Câteva părți comerciale dezvoltă, de asemenea, reguli SNORT, care pot fi achiziționate pentru o taxă lunară sau anuală. Câteva exemple sunt regulile SO/VRT ale Talos (lansate gratuit după o lună) și CrowdStrikes Threat Intelligence Services.

Suricata poate utiliza aceleași reguli ca și SNORT. Multe, dar nu toate, regulile VRT funcționează în continuare. Suricata are propriul set de reguli, lansat inițial pentru abonații plătitori, dar disponibil gratuit după 30 până la 60 de zile: Emerging Threats (Amenințări emergente). Aceste reguli Suricata utilizează mai mult funcțiile suplimentare pe care Suricata le oferă, cum ar fi detectarea protocolului agnostic pentru porturi și detectarea automată a fișierelor și extragerea fișierelor.

Detectarea aplicațiilor

Din primele zile de existență a Snort, s-a spus că Snort nu este „conștient de aplicații”. Pur și simplu se uită la traficul care se potrivește cu regulile sale și întreprinde o acțiune (alertă, abandonare și așa mai departe) atunci când există o potrivire. Preprocesoarele ajută prin modelarea traficului într-un format utilizabil pentru ca regulile să se aplice: de exemplu, efectuând decomprimarea și decodarea, dar nu era nevoie ca Snort să înțeleagă ce aplicație a generat datele.

Exigențele de afaceri s-au schimbat în timp însă și, pentru a se adapta la piață, Snort a lansat OpenAppID în versiunea 2.9.7 în 2014. OpenAppID permite detectarea aplicațiilor prin intermediul așa-numitelor Layer 7 Detectors. Deși existența unei aplicații cunoscute nu este întotdeauna un incident de securitate direct (utilizarea Dropbox, de exemplu), aceasta permite o mai bună înțelegere a ceea ce există în cadrul rețelei. Nu numai că aplicațiile necunoscute anterior pot fi găsite, dar traficul lor poate fi, de asemenea, abandonat sau alertat prin corelarea unui AppID cu o regulă SNORT IDS/IPS tradițională.

Suricata funcționează puțin diferit în acest spațiu. Acesta suportă reguli de detecție Application-Layer și poate, de exemplu, să identifice traficul HTTP sau SSH pe porturi non-standard pe baza protocoalelor. De asemenea, va aplica apoi setări de jurnal specifice protocolului la aceste detecții.

Nu există cu adevărat un produs mai bun sau mai rău în acest spațiu, ci depinde cu adevărat de ceea ce caută întreprinderea și de sistemul care umple cel mai bine lacunele de detecție. Deoarece ambele sunt complet open-source, configurarea unui mediu de testare este relativ rapidă și ieftină.

Multithreading

Unul dintre principalele avantaje ale Suricata este că a fost dezvoltat mult mai recent decât Snort. Acest lucru înseamnă că are la bord mult mai multe caracteristici care sunt practic de neratat în zilele noastre. Una dintre aceste caracteristici este suportul pentru multithreading.

Creșterea traficului de rețea de-a lungul anilor a fost urmată îndeaproape de cererile de procesare ale dispozitivelor IDS (măsurate în pachete pe secundă). Din fericire, Suricata suportă multithreading din start. Snort, însă, nu suportă multithreading. Indiferent de numărul de nuclee pe care îl conține un procesor, Snort va utiliza doar un singur nucleu sau thread.

Există o soluție de rezolvare destul de complicată: rularea mai multor instanțe SNORT cu un singur fir, toate alimentând același jurnal. Cu toate acestea, cheltuielile generale suplimentare pentru a gestiona acest proces (AutoFP) și costul ridicat al hardware-ului înseamnă că această configurație este rar întâlnită în mediile de producție. SNORT3 va suporta multithreading, dar se află încă în stadiul Alpha, funcționând ca Snort++. Desigur, nu se recomandă utilizarea unui produs în stadiu Alpha într-un mediu de producție. Multithreading-ul este, fără îndoială, un argument puternic pentru a lua în considerare Suricata în detrimentul Snort.

Extragerea fișierelor

Suricata suportă extragerea fișierelor. Aceasta este o caracteristică incredibil de utilă care permite extragerea automată a fișierelor selectate odată ce este declanșată o regulă care conține opțiunea „filestore”. Este, de exemplu, posibilă extragerea tuturor fișierelor .pdf sau a tuturor fișierelor .png cu un singur pixel și stocarea lor într-un dosar preconfigurat pentru analize manuale ulterioare, căutări VirusTotal sau chiar sandboxing automat.

Alternative

În timp ce Snort și Suricata sunt cu siguranță cele mai populare sisteme open-source de detectare a intruziunilor, există câteva alternative. Versiunea actualizată SNORT3, menționată anterior, pare foarte promițătoare, cu suportul său pentru multithreading, identificarea serviciilor și un limbaj de reguli mai simplu. Acesta se află în dezvoltare de mai mulți ani. Cu toate acestea, stadiul Alpha datează din 2014, iar o dată de lansare a unei versiuni de producție nu a fost încă stabilită.

Există, de asemenea, alternative la soluțiile IDS/IPS tradiționale, dar acestea pot funcționa uneori ușor diferit. Bro Network Security Monitor (cunoscut acum sub numele de Zeek), de exemplu, este mai degrabă un sistem de detectare a anomaliilor. În timp ce Snort și Suricata lucrează cu semnături IDS tradiționale, Bro/Zeek utilizează scripturi pentru a analiza traficul.

Un avantaj semnificativ al Bro/Zeek este că aceste scripturi permit, de asemenea, fluxuri de lucru foarte automatizate între diferite sisteme, o abordare care permite luarea unor decizii mult mai granulare decât vechile acțiuni pass or drop. Cu toate acestea, configurarea sa poate deveni destul de complicată.

Concluzie

Există mai multe opțiuni IDS open-source bune. Totuși, din cauza diferențelor dintre ele, nu toate soluțiile vor funcționa pentru fiecare mediu. Selectarea celor mai bune produse ar trebui să se bazeze pe ce alte produse de securitate, care se pot suprapune, sunt deja existente, pe tipul de trafic care traversează rețeaua, pe volumul de trafic și pe setul de competențe al personalului IT disponibil.

.

Lasă un răspuns

Adresa ta de email nu va fi publicată.