Open Source IDS Tools: Compararea Suricata, Snort, Bro (Zeek), Linux

Original scris de Joe Schreiber, rescris și editat de Guest Blogger, reeditat și extins de Rich Langston

Dacă aveți nevoie să monitorizați gazdele sau rețelele care le conectează pentru a identifica cele mai recente amenințări, aveți la dispoziție câteva instrumente de detectare a intruziunilor (IDS) open source excelente.

Listă de instrumente IDS cu sursă deschisă

  • Snort
  • Suricata
  • Bro (Zeek)
  • OSSEC
  • Samhain Labs
  • OpenDLP

Tehnici de detecție IDS

Există două tehnici principale de detecție a amenințărilor: detecția bazată pe semnături și detecția bazată pe anomalii. Aceste tehnici de detecție sunt importante atunci când decideți dacă alegeți un motor de detecție bazat pe semnături sau pe anomalii, dar furnizorii au devenit conștienți de beneficiile fiecăruia, iar unii le integrează pe ambele în produsele lor. Învățarea punctelor lor forte și a punctelor slabe vă permite să înțelegeți cum se pot completa reciproc.

Instrumente IDS bazate pe semnături

Cu un IDS bazat pe semnături, cunoscut și ca IDS bazat pe cunoștințe, se caută reguli sau modele de trafic malițios cunoscut. Odată ce se găsește o potrivire cu o semnătură, o alertă este trimisă administratorului. Aceste alerte pot descoperi probleme precum programe malware cunoscute, activitate de scanare a rețelei și atacuri împotriva serverelor.

Management unificat al securității

O singură platformă care combină capacitățile esențiale de securitate, inclusiv IDS, descoperirea activelor și gestionarea jurnalelor SIEM.

Aflați mai multe

Unelte IDS bazate pe anomalii

Cu un IDS bazat pe anomalii, cunoscut și ca IDS bazat pe comportament, activitatea care a generat traficul este mult mai importantă decât sarcina utilă livrată. Un instrument IDS bazat pe anomalii se bazează mai degrabă pe linii de bază decât pe semnături. Acesta va căuta o activitate neobișnuită care se abate de la mediile statistice ale activităților anterioare sau de la activitățile observate anterior. De exemplu, dacă un utilizator se conectează întotdeauna la rețea din California și accesează fișiere de inginerie, dacă același utilizator se conectează din Beijing și se uită la fișiere de resurse umane, acesta este un semnal de alarmă.

Atât tehnicile de detectare bazate pe semnături, cât și cele bazate pe anomalii sunt de obicei implementate în același mod, deși se poate argumenta că ați putea (și oamenii au făcut-o) să creați un IDS bazat pe anomalii pe baza datelor de flux de rețea colectate din exterior sau a unor informații de trafic similare.

Avantaje și dezavantaje

Cei mai puțini fals-pozitivi apar cu detecția bazată pe semnătură, dar numai semnăturile cunoscute sunt marcate, lăsând o gaură de securitate pentru amenințările noi și încă neidentificate. Mai multe falsuri pozitive apar cu detecția bazată pe anomalii, dar, dacă este configurată corespunzător, detectează amenințări necunoscute anterior.

Sistemele de detectare a intruziunilor bazate pe rețea (NIDS)

Sistemele de detectare a intruziunilor bazate pe rețea (NIDS) funcționează prin inspectarea întregului trafic pe un segment de rețea pentru a detecta activitățile rău intenționate. Cu NIDS, o copie a traficului care traversează rețeaua este livrată dispozitivului NIDS prin oglindirea traficului care traversează comutatoarele și/sau routerele.

Un dispozitiv NIDS monitorizează și alertează în funcție de tipare sau semnături de trafic. Atunci când evenimentele malițioase sunt semnalate de dispozitivul NIDS, sunt înregistrate informații vitale. Aceste date trebuie să fie monitorizate pentru a ști că s-a produs un eveniment. Prin combinarea acestor informații cu evenimentele colectate de la alte sisteme și dispozitive, puteți vedea o imagine completă a posturii de securitate a rețelei dumneavoastră. Rețineți că niciunul dintre instrumentele de aici nu corelează jurnalele de unul singur. Aceasta este, în general, funcția unui Security Information and Event Manager (SIEM).

Snort

Ah, venerabilul purceluș care iubește pachetele. Mulți oameni își vor aminti de 1998 ca fiind anul în care a apărut Windows 98, dar a fost, de asemenea, anul în care Martin Roesch a lansat pentru prima dată Snort. Deși Snort nu era un IDS adevărat la acea vreme, acesta era destinul său. De atunci, a devenit standardul de-facto pentru IDS, datorită contribuțiilor comunității.

Este important de reținut că Snort nu are o interfață grafică reală sau o consolă de administrare ușor de utilizat, deși au fost create o mulțime de alte instrumente open source pentru a ajuta, cum ar fi BASE și Sguil. Aceste instrumente oferă un front-end web pentru a interoga și analiza alertele provenite de la Snort IDS.

Snort Rezumat

  • Viață lungă a produsului, fără semne de dispariție
  • Suport excelent din partea comunității
  • O mulțime de front-end-uri administrative
  • Aprobat și testat în profunzime
  • Suport excelent din partea comunității
  • Conform site-ului web al Snort, caracteristicile includ:
    • Design modular:
    • Multi-threading for packet processing
    • Shared configuration and attribute table
    • Use a simple, scriptable configuration
    • Plugin framework, make key components pluggable (and 200+ plugins)
    • Auto-detect services for portless configuration
    • Auto-generate reference documentation
    • Scalable memory profile
    • Rule parser and syntax (support sticky buffers in rules)
  • Documentation:
    • Ruleset Updates
    • Snort FAQ
    • A Snort Cheatsheet
    • A plugin for Snort is available for AlienVault USM Anywhere.

Suricata

What’s the only reason for not running Snort? If you’re using Suricata instead. Although Suricata’s architecture is different than Snort, it behaves the same way as Snort and can use the same signatures. What’s great about Suricata is what else it’s capable of over Snort. Face atât de multe altele, încât probabil că merită un post dedicat de sine stătător.

Există instrumente open source de la terți disponibile pentru un front-end web pentru a interoga și analiza alertele provenite de la Suricata IDS.

Suricata Summary

  • Multi-Threaded – Snort rulează cu un singur fir de execuție, ceea ce înseamnă că poate folosi doar un singur CPU (nucleu) la un moment dat. Suricata poate rula mai multe fire de execuție, astfel încât poate profita de toate cpu/corele pe care le aveți disponibile. Au existat multe dispute cu privire la faptul dacă acest lucru este avantajos, Snort spune că nu și câteva benchmark-uri spun că da.
  • Built in Hardware Acceleration – Știați că puteți folosi plăci grafice pentru a inspecta traficul de rețea?
  • File Extraction – Cineva care descarcă malware? Puteți să îl capturați direct din Suricata și să îl studiați.
  • LuaJIT – Este o mulțime de litere da, dar este, de asemenea, un motor de scripting care poate fi folosit cu informații din pachetele inspectate de Suricata. Acest lucru face ca potrivirea complexă să fie și mai ușoară și puteți chiar câștiga eficiență prin combinarea mai multor reguli într-un singur script.
  • Înregistrarea mai mult decât pachetele – Suricata poate capta și înregistra lucruri cum ar fi certificatele TLS/SSL, cererile HTTP, cererile DNS
  • Suport excelent din partea comunității
  • Conform site-ului web al Suricata, caracteristicile includ:
    • Performanță ridicată – bază de cod multi-threaded, scalabilă
    • Motor multifuncțional – NIDS, NIPS, NSM, analiză offline etc.
    • Suport multi-platformă – Linux, Windows, macOS, OpenBSD, etc.
    • Suport TCP/IP modern, inclusiv un motor de flux scalabil, IPv4/IPv6 complet, fluxuri TCP și defragmentarea pachetelor IP
    • Protocol parsers – decodificarea pachetelor, decodificarea nivelului de aplicație
    • Motor HTTP – parser HTTP, logger de cereri, potrivire de cuvinte cheie, etc.
    • Autodetect services for portless configuration
    • Lua scripting (LuaJIT)
    • Application-layer logging and analysis, including TLS/SSL certs, HTTP requests, DNS requests, and more
    • Built-in hardware acceleration (GPU for network sniffing)
    • File extraction
  • Documentation:
    • Suricata User Guide
    • User and Developer Docs
    • Suricata FAQ

Bro (renamed Zeek)

Bro, which was renamed Zeek in late 2018 and is sometimes referred to as Bro-IDS or now Zeek-IDS, is a bit different than Snort and Suricata. In a way, Bro is both a signature and anomaly-based IDS. Its analysis engine will convert traffic captured into a series of events. An event could be a user login to FTP, a connection to a website or practically anything. The power of the system is what comes after the event engine and that’s the Policy Script Interpreter. Acest motor de politici are propriul său limbaj (Bro-Script) și poate face unele sarcini foarte puternice și versatile.

Dacă sunteți analist și v-ați întrebat „Cum pot automatiza o parte din munca mea?”, atunci acesta este instrumentul pe care îl căutați. Doriți să descărcați fișiere văzute pe fir, să le trimiteți pentru analiza malware, să vă anunțați dacă se găsește o problemă, apoi să puneți sursa pe lista neagră și să închideți calculatorul utilizatorului care l-a descărcat? Doriți să urmăriți tiparele de utilizare ale unui utilizator după ce acesta a contactat un IP dintr-o bază de date de reputație?

Dacă nu sunteți analist, atunci acest instrument va avea o curbă de învățare dificilă. Deoarece a fost dezvoltat ca un instrument de cercetare, nu s-a concentrat inițial pe lucruri precum interfețele grafice, ușurința de utilizare și de instalare. Deși face numeroase lucruri interesante din start, multe dintre aceste lucruri nu sunt imediat acționabile și pot fi dificil de interpretat.

Nu există o interfață grafică nativă, dar există instrumente open source de la terțe părți disponibile pentru un front-end web pentru a interoga și analiza alertele care provin de la Bro-IDS. Consider ELK stack.

Bro Summary

  • Complicated to set up
  • Can detect patterns of activity other IDS systems can not
  • Very extensible architecture
  • Good community support
  • According to Bro’s website, features include:
    • Comprehensive traffic logging and analysis
    • Powerful and flexible event-driven scripting language (Bro scripts)
    • Deploys on UNIX-style systems, including Linux, FreeBSD, and MacOS
    • DNS/FTP/HTTP/IRC/SMTP/SSH/SSL/other protocol support
    • Fully passive traffic analysis with network tap or monitoring port
    • Real-time and offline analysis
    • Cluster-support for large-scale deployments
    • Comprehensive IPv6 support
    • IDS-style pattern matching
    • File extraction
    • Extensible architecture
    • Analysts can use Bro for automation (file extraction, malware analysis, blacklisting, track usage patterns, research work, etc.)
  • Documentație:
    • Manualul Bro
    • Bro Docs
    • Bro FAQ

Host-based IDS (HIDS)

Sistemele de detectare a intruziunilor bazate pe host (HIDS) funcționează prin monitorizarea activității care are loc la nivel intern pe o gazdă endpoint. Aplicațiile HIDS (de exemplu, software antivirus, software de detectare a programelor spion, firewall-uri) sunt de obicei instalate pe toate computerele conectate la internet dintr-o rețea sau pe un subset de sisteme importante, cum ar fi serverele. Acestea le includ și pe cele din mediile cloud publice.

HIDS caută activități neobișnuite sau nefaste examinând jurnalele create de sistemul de operare, căutând modificările aduse fișierelor cheie ale sistemului, urmărind software-ul instalat și, uneori, examinând conexiunile de rețea pe care le face o gazdă.

Primele sisteme HIDS erau de bază, de obicei doar creând hașuri MD5 ale fișierelor în mod recurent și căutând discrepanțe, utilizând un proces denumit monitorizare a integrității fișierelor (FIM). De atunci, HIDS au devenit mult mai complexe și îndeplinesc o varietate de funcții de securitate utile și vor continua să crească. Aceasta include capabilități moderne de răspuns la puncte terminale (EDR).

Dacă organizația dvs. are un mandat de conformitate, cum ar fi pentru PCI DSS, HIPAA sau ISO 27001, atunci este posibil să solicitați ca HIDS să demonstreze monitorizarea integrității fișierelor (FIM), precum și monitorizarea activă a amenințărilor.

OSSEC

În domeniul instrumentelor HIDS open source cu funcții complete, există OSSEC și nu prea multe altele. Vestea bună este că OSSEC este foarte bun în ceea ce face și este destul de extensibil.

OSSEC rulează pe aproape orice sistem de operare major și include o arhitectură de gestionare și logare bazată pe client/server, ceea ce este foarte important într-un sistem HIDS. Deoarece HIDS-ul local poate fi compromis în același timp cu sistemul de operare, este foarte important ca informațiile de securitate și criminalistică să părăsească gazda și să fie stocate în altă parte cât mai repede pentru a evita orice fel de manipulare sau ofuscare care ar împiedica detectarea.

Arhitectura client/server aOSSEC încorporează această strategie prin livrarea alertelor și a jurnalelor către un server centralizat unde analiza și notificarea pot avea loc chiar dacă sistemul gazdă este scos din funcțiune sau compromis. Un alt avantaj al arhitecturii client/server este capacitatea de a gestiona în mod centralizat agenții de pe un singur server. Având în vedere că implementările pot varia de la una până la mii de instalații, capacitatea de a face modificări globale de pe un server central este esențială pentru sănătatea mintală a unui administrator.

Când se discută despre OSSEC (și alte HIDS) există adesea anxietate cu privire la instalarea unui agent sau a unui software pe serverele critice. Trebuie remarcat faptul că instalarea OSSEC este extrem de ușoară (programul de instalare este sub 1MB) și majoritatea analizelor se desfășoară de fapt pe server, ceea ce înseamnă că OSSEC consumă foarte puțin CPU pe gazdă. OSSEC are, de asemenea, capacitatea de a trimite jurnalele sistemului de operare către server pentru analiză și stocare, ceea ce este deosebit de util pe mașinile Windows care nu dispun de mecanisme de jurnalizare native și transplatforme.

Rezumat OSSEC:

  • Agenți pentru aproape toate sistemele de operare
  • Agent compilat pentru Windows
  • Multe funcționalități decât doar FIM
  • Proces de instalare rigid, dar simplu
  • Suport bun din partea comunității
  • Potrivit site-ului web al OSSEC, caracteristicile includ:
    • File integrity monitoring (FIM)
    • Log monitoring collects, analyzes, and correlates system logs
    • Rootkit detection, which searches for system modifications similar to rootkits
    • Active response can invoke automated response action when alerts are triggered
    • Client/Server architecture
    • Multi-platform support (Linux, Solaris, Windows, MacOS, etc.)
    • Supports compliance requirements for FIM
    • Real-time and configurable alerts
    • Integration with current infrastructure
    • Centralized server for mass policy management
    • Agent and agentless monitoring
  • A plugin for OSSEC is available for AlienVault USM Anywhere. To learn more, read here.
  • Documentation:
    • OSSEC Docs
    • OSSEC FAQ
    • OSSEC Github

Samhain Labs

Samhain is probably the only HIDS open-source that gives OSSEC a run for its money. Dar este foarte mult cazul de „același lucru, dar diferit” atunci când le comparăm pe cele două. Samhain are aceeași arhitectură client/server, dar nu o necesită, așa cum face OSSEC. Agentul în sine are o varietate de metode de ieșire, una dintre acestea fiind un depozit central de jurnale, dar include și altele, cum ar fi Syslog, e-mail și RDBMS. Există chiar și o opțiune de a utiliza Samhain ca aplicație autonomă pe o singură gazdă.

O altă diferență importantă este locul unde are loc analiza. Spre deosebire de OSSEC, procesarea are loc chiar pe client, ceea ce are implicații operaționale. From a practical point of view, care must be taken it doesn’t overload a busy server and interfere with operations. From the security point of view, having the brains on the endpoint invites hackers to deactivate the tool so warnings aren’t issued.

Samhain Summary:

  • Harder to install
  • Windows clients require Cygwin
  • Great FIM functionality
  • More flexible client
  • Okay community support
  • According to Samhain’s website, features include:
    • File integrity monitoring (FIM)
    • Log file monitoring and analysis
    • Rootkit detection
    • Port monitoring
    • Detection of rogue SUID executables and hidden processes
    • Multi-platform support
    • Centralized logging and maintenance
    • Client/Server architecture (mostly)
    • Variety of output methods (e.g. syslog, email RDBMS)
    • Can be used as a standalone application on a single host
  • Documentation:
    • Samhain Docs
    • Samhain User Manual
    • Samhain FAQ

File Integrity Monitoring (FIM Only)

Multe instrumente de monitorizare a integrității fișierelor (FIM) sunt categorisite cu HIDS, deoarece FIM implică detectarea amenințărilor, așa că haideți să vorbim despre ele. FIM este un instrument care validează integritatea fișierelor sistemului de operare și a aplicațiilor specificate prin compararea versiunilor curente cu versiunile valide cunoscute, alertând administratorul dumneavoastră ori de câte ori acestea sunt modificate. Acest lucru este important deoarece modificările de pe serverele critice semnalează adesea că a avut loc o încălcare. Dacă încă vă întrebați „ce este monitorizarea integrității fișierelor și de ce am nevoie de ea?”, avem o întreagă postare pe blog care explică de ce.

Câteva FIM sunt dezvoltate în mod activ, în timp ce altele nu au mai fost actualizate de ani de zile. Open Source Tripwire și AFICK sunt două opțiuni de produse FIM open-source. Pentru sistemele autonome bazate pe Unix, luați în considerare verificarea verificatoarelor de integritate a fișierelor care găsesc rootkit-uri, cum ar fi chkrootkit, rkhunter sau Unhide. Mecanismul unic de căutare a rootkit-urilor face ca aceste soluții să merite a fi luate în considerare. Soluții proprietare sunt, de asemenea, disponibile pentru Windows.

Platforma Unified Security Management (USM) AlienVault oferă capacități FIM încorporate pentru a impulsiona tehnologiile de detectare a amenințărilor și pentru a accelera eforturile dumneavoastră de conformitate în materie de securitate cibernetică. Pentru a afla mai multe despre modul în care AlienVault USM utilizează FIM pentru a vă proteja activele, citiți aici.

Gânduri finale

Sperăm că acest ghid v-a ajutat să înțelegeți unele dintre opțiunile open source. După cum se arată aici, nu au existat niciodată până acum atât de multe opțiuni sau un set mai larg de instrumente disponibile. Cu o planificare atentă și cu un plan de întreținere continuă, puteți construi o rețea sigură cu aceste instrumente. Cu o planificare atentă, și un plan de întreținere continuă, puteți construi o rețea sigură cu aceste instrumente.

.

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *