Open Source IDS Tools: Suricata vs Snort vs Bro (Zeek) | AT&T Cybersecurity Open Source IDS Tools: Suricata, Snort, Bro (Zeek), Linux összehasonlítása

Eredetileg Joe Schreiber írta, újraírta és szerkesztette a vendégblogger, újraszerkesztette és bővítette Rich Langston

Függetlenül attól, hogy a legújabb fenyegetések azonosítása érdekében a hosztokat vagy az azokat összekötő hálózatokat kell felügyelnie, néhány nagyszerű nyílt forráskódú behatolásérzékelő (IDS) eszköz áll az Ön rendelkezésére.

A nyílt forráskódú IDS-eszközök listája

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

IDS-felderítési technikák

Két elsődleges fenyegetés-felderítési technika létezik: a szignatúraalapú és az anomáliaalapú. Ezek az észlelési technikák fontosak, amikor eldöntjük, hogy szignatúra- vagy anomália-érzékelő motort válasszunk-e. A gyártók azonban felismerték mindkettő előnyeit, és néhányan mindkettőt beépítik termékeikbe. Az erősségeik és gyengeségeik megismerése lehetővé teszi, hogy megértse, hogyan egészíthetik ki egymást.

Szignatúra-alapú IDS-eszközök

A szignatúra-alapú IDS, más néven tudásalapú IDS esetében az ismert rosszindulatú forgalom szabályait vagy mintáit keresik. Amint egy aláírásnak megfelelőt találnak, riasztást küldenek a rendszergazdának. Ezek a riasztások olyan problémákat fedezhetnek fel, mint az ismert rosszindulatú programok, a hálózati pásztázási tevékenység és a szerverek elleni támadások.

Egységes biztonsági kezelés

Egyetlen platform, amely egyesíti az alapvető biztonsági funkciókat, beleértve az IDS-t, az eszközfelderítést és a SIEM naplókezelését.

További információ

Anomália-alapú IDS-eszközök

Az anomália-alapú IDS, más néven viselkedésalapú IDS esetében a forgalmat generáló tevékenység sokkal fontosabb, mint a szállított hasznos teher. Az anomália-alapú IDS-eszköz inkább az alapvonalakra támaszkodik, mint az aláírásokra. Olyan szokatlan tevékenységeket keres, amelyek eltérnek a korábbi tevékenységek statisztikai átlagaitól vagy a korábban látott tevékenységektől. Ha például egy felhasználó mindig Kaliforniából jelentkezik be a hálózatba, és mérnöki fájlokhoz fér hozzá, ha ugyanez a felhasználó Pekingből jelentkezik be, és HR-fájlokat néz meg, az piros zászlót jelent.

Az aláírás- és az anomália-alapú észlelési technikákat általában ugyanúgy alkalmazzák, bár lehet érvelni amellett, hogy a kívülről gyűjtött netflow-adatok vagy hasonló forgalmi információk alapján is lehet anomália-alapú IDS-t létrehozni (és már meg is tették).

Előnyök és hátrányok

A szignatúra-alapú észlelésnél kevesebb téves pozitív eredmény fordul elő, de csak az ismert szignatúrák kerülnek megjelölésre, ami biztonsági rést hagy az új és még nem azonosított fenyegetések számára. Az anomália-alapú észlelésnél több hamis pozitív jelenség fordul elő, de megfelelő konfiguráció esetén a korábban ismeretlen fenyegetéseket is észleli.

Hálózat-alapú IDS (NIDS)

A hálózat-alapú behatolásérzékelő rendszerek (NIDS) úgy működnek, hogy egy hálózati szegmens teljes forgalmát vizsgálják a rosszindulatú tevékenység észlelése érdekében. Az NIDS esetében a hálózaton áthaladó forgalom másolatát a kapcsolókon és/vagy útválasztókon áthaladó forgalom tükrözésével juttatják el az NIDS-eszközhöz.

A NIDS-eszköz figyeli és riasztja a forgalmi mintákat vagy aláírásokat. Amikor a NIDS-eszköz rosszindulatú eseményeket jelez, a létfontosságú információk naplózásra kerülnek. Ezeket az adatokat nyomon kell követni ahhoz, hogy tudjuk, hogy egy esemény megtörtént. Ezeket az információkat más rendszerekből és eszközökből gyűjtött eseményekkel kombinálva teljes képet kaphat a hálózat biztonsági helyzetéről. Vegye figyelembe, hogy az itt szereplő eszközök egyike sem korrelálja önmagában a naplófájlokat. Ez általában a biztonsági információ- és eseménykezelő (SIEM) feladata.

Snort

Ah, a tiszteletre méltó malac, amely szereti a csomagokat. Sokan úgy emlékeznek 1998-ra, mint a Windows 98 megjelenésének évére, de ez volt az az év is, amikor Martin Roesch először kiadta a Snortot. Bár a Snort akkoriban még nem volt igazi IDS, ez volt a sorsa. Azóta az IDS-ek de facto szabványává vált, köszönhetően a közösségi hozzájárulásoknak.

Fontos megjegyezni, hogy a Snortnak nincs igazi GUI-ja vagy könnyen használható adminisztrációs konzolja, bár rengeteg más nyílt forráskódú eszköz jött létre, hogy segítsen, mint például a BASE és a Sguil. Ezek az eszközök webes felületet biztosítanak a Snort IDS-től érkező riasztások lekérdezéséhez és elemzéséhez.

Snort összefoglaló

  • Hosszú termékéletkor, a megszűnés jelei nélkül
  • Nagyszerű közösségi támogatás
  • Bőséges adminisztratív front-end
  • Teljesen bevált és tesztelt
  • Nagyszerű közösségi támogatás
  • A Snort webhelye szerint a funkciók közé tartoznak:
    • Moduláris felépítés:
    • 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. Annyi mindenre képes, hogy valószínűleg megérdemelne egy külön bejegyzést.

A Suricata IDS-től érkező riasztások lekérdezéséhez és elemzéséhez harmadik féltől származó nyílt forráskódú eszközök állnak rendelkezésre webes frontendhez.

Suricata összefoglaló

  • Multi-Threaded – A Snort egyetlen szálon fut, ami azt jelenti, hogy egyszerre csak egy CPU(magot) tud használni. A Suricata több szálat tud futtatni, így az összes rendelkezésre álló cpu/magot ki tudja használni. Sok vita volt arról, hogy ez előnyös-e. A Snort szerint nem, néhány benchmark szerint igen.
  • Beépített hardveres gyorsítás – Tudta, hogy grafikus kártyákat használhat a hálózati forgalom ellenőrzésére?
  • File Extraction – Valaki rosszindulatú programot tölt le? Rögtön a Suricatából rögzítheti és tanulmányozhatja.
  • LuaJIT – Igen, ez egy csomó betű, de ez egy szkriptmotor is, amely a Suricata által vizsgált csomagokból származó információkkal használható. Ez még egyszerűbbé teszi az összetett párosítást, és még hatékonyságot is nyerhet több szabály egyetlen szkriptbe történő kombinálásával.
  • Nem csak a csomagokat naplózza – a Suricata képes olyan dolgokat megragadni és naplózni, mint a TLS/SSL certs, HTTP-kérelmek, DNS-kérelmek
  • Nagyszerű közösségi támogatás
  • A Suricata honlapja szerint a funkciók a következők:
    • Nagy teljesítmény – többszálú, skálázható kódbázis
    • Multifunkciós motor – NIDS, NIPS, NSM, offline elemzés, stb.
    • Keresztplatformos támogatás – Linux, Windows, macOS, OpenBSD stb.
    • Modern TCP/IP támogatás, beleértve a skálázható áramlási motort, teljes IPv4/IPv6, TCP streamek és IP csomag defragmentálás
    • Protokoll elemzők – csomagdekódolás, alkalmazási réteg dekódolás
    • HTTP motor – HTTP elemző, kérésnaplózó, kulcsszó egyezés stb.
    • 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. Ennek a policy motornak saját nyelve van (Bro-Script), és nagyon hatékony és sokoldalú feladatok elvégzésére képes.

Ha Ön elemző, és azon gondolkodik, hogy “Hogyan automatizálhatnám a munkám egy részét?”, akkor ez az az eszköz, amit keresett. Szeretné letölteni a hálózaton látott fájlokat, elküldeni őket rosszindulatú programok elemzésére, értesíteni Önt, ha problémát talál, majd feketelistára tenni a forrást és leállítani a felhasználó számítógépét, aki letöltötte? Szeretné nyomon követni egy felhasználó használati szokásait, miután kapcsolatba lépett egy IP-címmel egy hírnév-adatbázisból?

Ha nem elemző, akkor ez az eszköz kihívást jelentő tanulási folyamatot jelent. Mivel kutatási eszközként fejlesztették ki, kezdetben nem olyan dolgokra összpontosított, mint a felhasználói felület, a használhatóság és a könnyű telepítés. Miközben számos klassz dolgot csinál a dobozból, ezek közül sok nem azonnal használható és nehezen értelmezhető.

Nem létezik natív GUI, de rendelkezésre állnak harmadik féltől származó nyílt forráskódú eszközök a Bro-IDS-ből érkező riasztások lekérdezéséhez és elemzéséhez szükséges webes frontendhez. 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.)
  • Dokumentáció:
    • Bro Manual
    • Bro Docs
    • Bro FAQ

Host-alapú IDS (HIDS)

A host-alapú behatolásérzékelő rendszerek (HIDS) a végponti állomáson belül zajló tevékenységek megfigyelésével működnek. A HIDS-alkalmazásokat (pl. vírusirtó szoftverek, kémprogram-felismerő szoftverek, tűzfalak) általában egy hálózaton belül az összes internetkapcsolattal rendelkező számítógépre vagy a fontos rendszerek egy részhalmazára, például szerverekre telepítik. Ide tartoznak a nyilvános felhőkörnyezetekben lévők is.

A HIDS az operációs rendszer által létrehozott naplófájlok vizsgálatával, a kulcsfontosságú rendszerfájlok módosításainak keresésével, a telepített szoftverek nyomon követésével, és néha az állomás hálózati kapcsolatainak vizsgálatával keresi a szokatlan vagy rosszindulatú tevékenységeket.

Az első HIDS-rendszerek egyszerűek voltak, általában csak MD5-ös hash-eket készítettek a fájlokból, és az eltéréseket keresték, egy FIM-nek (file integrity monitoring) nevezett folyamatot alkalmazva. Azóta a HIDS-ek sokkal összetettebbé váltak, és számos hasznos biztonsági funkciót látnak el, és ez a fejlődés folytatódni fog. Ez magában foglalja a modern végponti válaszadási (EDR) képességeket is.

Ha a szervezetének megfelelőségi kötelezettsége van, például a PCI DSS, a HIPAA vagy az ISO 27001 tekintetében, akkor a HIDS-nek a fájlintegritás-figyelés (FIM) mellett aktív fenyegetésfigyelést is kell mutatnia.

OSSEC

A teljes körű nyílt forráskódú HIDS-eszközök birodalmában létezik az OSSEC és nem sok minden más. A jó hír az, hogy az OSSEC nagyon jó abban, amit csinál, és eléggé bővíthető.

Az OSSEC szinte minden nagyobb operációs rendszeren fut, és kliens/szerver alapú kezelési és naplózási architektúrát tartalmaz, ami nagyon fontos egy HIDS rendszerben. Mivel a helyi HIDS az operációs rendszerrel egyidejűleg veszélybe kerülhet, nagyon fontos, hogy a biztonsági és törvényszéki információk elhagyják az állomásrendszert, és minél előbb máshol tárolódjanak, hogy elkerülhető legyen mindenféle manipuláció vagy elfedés, amely megakadályozná a felderítést.

AOSSEC kliens/szerver architektúrája magában foglalja ezt a stratégiát, mivel a riasztásokat és naplókat egy központi szerverre szállítja, ahol az elemzés és az értesítés akkor is megtörténhet, ha az állomásrendszer offline vagy veszélybe kerül. A kliens/szerver architektúra másik előnye, hogy az ügynökök központilag, egyetlen szerverről kezelhetők. Mivel a telepítések száma egytől több ezer telepítésig terjedhet, a központi szerverről történő globális módosítások elvégzése kritikus fontosságú a rendszergazda józan ítélőképessége szempontjából.

Az OSSEC (és más HIDS-ek) megvitatásakor gyakran felmerül az ügynök vagy szoftver kritikus szerverekre történő telepítése miatti aggodalom. Meg kell jegyezni, hogy az OSSEC telepítése rendkívül könnyű (a telepítő kevesebb, mint 1 MB), és az elemzés nagy része valójában a szerveren történik, ami azt jelenti, hogy az OSSEC nagyon kevés CPU-t fogyaszt az állomáson. Az OSSEC képes arra is, hogy az operációs rendszer naplóit elemzés és tárolás céljából a szerverre küldje, ami különösen hasznos a Windows gépeken, amelyek nem rendelkeznek natív és platformok közötti naplózási mechanizmusokkal.

OSSEC összefoglaló:

  • Agensek szinte minden operációs rendszerhez
  • Kompilált ügynök Windowshoz
  • Nagyon sok funkció, nem csak FIM
  • Szigorú, de egyszerű telepítési folyamat
  • Jó közösségi támogatás
  • Az OSSEC honlapja szerint a funkciók közé tartozik:
    • 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. De nagyon is az “ugyanaz, de más” esetről van szó, amikor a kettőt összehasonlítjuk. A Samhain ugyanolyan kliens/szerver architektúrával rendelkezik, de nem igényli azt, mint az OSSEC. Maga az ügynök többféle kimeneti módszerrel rendelkezik, amelyek közül az egyik egy központi naplótároló, de olyanokat is tartalmaz, mint a Syslog, az e-mail és az RDBMS. Lehetőség van arra is, hogy a Samhain-t önálló alkalmazásként használjuk egyetlen állomáson.

A másik fontos különbség az, hogy hol történik az elemzés. Az OSSEC-től eltérően a feldolgozás magában az ügyfélben történik, ami működési következményekkel jár. 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)

Sok file integrity monitoring (FIM) eszközt a HIDS-hez sorolnak, mivel a FIM magában foglalja a fenyegetések felderítését, ezért beszéljünk róluk. A FIM olyan eszköz, amely az operációs rendszer és a megadott alkalmazásfájlok integritását ellenőrzi azáltal, hogy az aktuális verziókat összehasonlítja az ismert érvényes verziókkal, és riasztja a rendszergazdát, ha azok módosulnak. Ez azért fontos, mert a kritikus szervereken történő változások gyakran jelzik, hogy jogsértés történt. Ha még mindig azon tűnődik, hogy “mi az a fájlintegritás-figyelés, és miért van rá szükségem?”, egy egész blogbejegyzésben elmagyarázzuk, hogy miért.

Egyes FIM-eket aktívan fejlesztenek, míg másokat évek óta nem frissítettek. A nyílt forráskódú Tripwire és az AFICK két nyílt forráskódú FIM terméklehetőség. Önálló Unix-alapú rendszerek esetén fontolja meg a rootkit-kereső fájlintegritás-ellenőrzők, például a chkrootkit, az rkhunter vagy az Unhide ellenőrzését. Az egyedi rootkit-kereső mechanizmus miatt érdemes megfontolni ezeket a megoldásokat. Windowsra is elérhetőek saját fejlesztésű megoldások.

AlienVault Unified Security Management (USM) Platform beépített FIM-képességeket biztosít a fenyegetésfelismerő technológiák működtetéséhez és a kiberbiztonsági megfelelési erőfeszítések felgyorsításához. Ha többet szeretne megtudni arról, hogy az AlienVault USM hogyan használja a FIM-et eszközei védelmére, olvassa el itt.

Végső gondolatok

Remélhetőleg ez az útmutató segített megérteni néhány nyílt forráskódú lehetőséget. Amint az itt látható, soha nem volt még ennyi választási lehetőség vagy ilyen széles körű eszközkészlet. Gondos tervezéssel és folyamatos karbantartási tervvel biztonságos hálózatot építhet ezekkel az eszközökkel. Gondos tervezéssel és folyamatos karbantartási tervvel biztonságos hálózatot építhet ezekkel az eszközökkel.

Vélemény, hozzászólás?

Az e-mail-címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük