Organizația OISF (Open Information Security Foundation) lansarea sistemului de detectare și prevenire a intruziunilor în rețea , care oferă instrumente pentru inspectarea diferitelor tipuri de trafic. În configurațiile Suricata este permisă utilizarea , dezvoltată de proiectul Snort, precum și a seturilor de reguli și . Codurile sursă ale proiectului sub licența GPLv2.
Modificări principale:
- Au fost introduse module noi pentru analiză și înregistrare a log-urilor pentru protocoale
RDP, SNMP și SIP, scrise în limbajul Rust. Modulul pentru analiză FTP a adăugat capacitatea de a înregistra log-uri prin intermediul subsistemului EVE, care furnizează evenimente în format JSON; - Pe lângă suportul apărut în ultima versiune pentru metoda de identificare a clienților TLS JA3, a fost adăugat suport pentru metoda , care determină, pe baza caracteristicilor stabilirii conexiunii și a parametrilor specificați, ce software este utilizat pentru stabilirea conexiunii (de exemplu, permite identificarea utilizării Tor și altor aplicații tipice). JA3 permite identificarea clienților, iar JA3S — a serverelor. Rezultatele identificării pot fi utilizate în limbajul de reguli și în log-uri;
- A fost adăugată o capacitate experimentală de corelare cu eșantioane din seturi mari de date, implementată prin noi operațiuni . De exemplu, această capacitate se aplică căutării de măști în liste negre mari, conținând milioane de înregistrări;
- În modul de inspecție HTTP s-a asigurat o acoperire completă a tuturor situațiilor descrise în setul de teste (de exemplu, acoperă metodele utilizate pentru a masca activitatea malițioasă în trafic);
- Instrumentele de dezvoltare a modulelor în limbajul Rust au fost mutate din opțiuni în categoria funcționalităților standard obligatorii. În viitor, se preconizează extinderea utilizării Rust în baza de cod a proiectului și înlocuirea treptată a modulelor cu echivalente dezvoltate în Rust;
- Motorul de identificare a protocoalelor a fost îmbunătățit în ceea ce privește precizia crescută și procesarea fluxurilor de trafic asincrone;
- În log-ul EVE a fost adăugat suport pentru un nou tip de înregistrări «anomaly», în care sunt salvate evenimente atipice identificate în timpul decodării pachetelor. În EVE, de asemenea, a fost extinsă reflectarea informațiilor despre VLAN-uri și interfețele de captură a traficului. A fost adăugată o opțiune pentru a salva toate header-ele HTTP în înregistrările http ale log-ului EVE;
- În handler-ele bazate pe eBPF s-a asigurat suport pentru mecanismele hardware de accelerare a capturii pachetelor. Accelerarea hardware este momentan limitată la adaptoare de rețea Netronome, dar va apărea curând și pentru alte echipamente;
- Codul a fost rescris pentru a captura traficul folosind cadrul Netmap. A fost adăugată posibilitatea de a utiliza funcționalitățile extinse Netmap, cum ar fi comutatorul virtual. ;
- suport pentru noua schemă de identificare a cuvintelor cheie pentru „bufferi lipicioși” (Sticky Buffers). Noua schemă este definită în formatul „protocol.buffer”, de exemplu, pentru a inspecta URI, cuvântul cheie va avea forma „http.uri” în loc de „http_uri”;
- Întregul cod Python utilizat a fost verificat pentru compatibilitate cu
Python 3; - Suportul pentru arhitectura Tilera, jurnalul text dns.log și vechiul jurnal files-json.log a fost oprit.
Caracteristici ale Suricata:
- Utilizarea unui format unificat pentru output-ul rezultatelor verificării , utilizat de asemenea de proiectul Snort, ceea ce permite utilizarea instrumentelor standard pentru analiză, cum ar fi . Posibilitatea de integrare cu produsele BASE, Snorby, Sguil și SQueRT. Suport pentru output în format PCAP;
- Suport pentru detectarea automată a protocoalelor (IP, TCP, UDP, ICMP, HTTP, TLS, FTP, SMB ș.a.m.d.), care permite operarea în reguli doar după tipul de protocol, fără legătură cu numărul de port (de exemplu, blocarea traficului HTTP pe un port nestructurat). Existența decodoarelor pentru protocoalele HTTP, SSL, TLS, SMB, SMB2, DCERPC, SMTP, FTP și SSH;
- Un sistem puternic de analiză a traficului HTTP, care utilizează o bibliotecă specială HTP, creată de autorul proiectului Mod_Security pentru a descompune și normaliza traficul HTTP. Este disponibil un modul pentru ținerea unui jurnal detaliat al redirecționărilor HTTP transitate, jurnalul fiind salvat în format standard
Apache. Suport pentru extragerea și verificarea fișierelor transmise prin protocolul HTTP. Suport pentru descompunerea conținutului comprimat. Posibilitatea de a identifica prin URI, Cookie, anteturi, user-agent, corpul cererii/răspunsului; - Suport pentru diverse interfețe pentru interceptarea traficului, inclusiv NFQueue, IPFRing, LibPcap, IPFW, AF_PACKET, PF_RING. Este posibilă analiza fișierelor deja salvate în format PCAP;
- Performanță ridicată, capacitatea de a procesa fluxuri de până la 10 gigabiți/secundă pe echipamente obișnuite.
- Un mecanism de asociere de mare performanță cu seturi mari de adrese IP. Suport pentru extragerea conținutului pe baza mascării și expresiilor regulate. Extragerea fișierelor din trafic, inclusiv identificarea acestora după nume, tip sau sumă de control MD5.
- Posibilitatea utilizării variabilelor în reguli: se pot salva informații din flux și ulterior se pot folosi în alte reguli;
- Utilizarea formatului YAML în fișierele de configurare, ceea ce permite păstrarea clarității în raport cu ușurința de procesare automată;
- Suport complet pentru IPv6;
- Un motor integrat pentru defragmentarea automată și reasamblarea pachetelor, care asigură o procesare corectă a fluxurilor, indiferent de ordinea de sosire a pachetelor;
- Suport pentru protocoale de tunelare: Teredo, IP-IP, IP6-IP4, IP4-IP6, GRE;
- Suport pentru decodificarea pachetelor: IPv4, IPv6, TCP, UDP, SCTP, ICMPv4, ICMPv6, GRE, Ethernet, PPP, PPPoE, Raw, SLL, VLAN;
- Mod de ținere a jurnalului cheilor și certificatelor ce apar în cadrul conexiunilor TLS/SSL;
- Posibilitatea de a scrie scripturi în limbajul Lua pentru a asigura o analiză extinsă și implementarea funcționalităților suplimentare necesare pentru a determina tipurile de trafic pentru care regulile standard nu sunt suficiente.
Sursa: opennet.ro
