Efter et års udvikling har organisationen OISF (Open Information Security Foundation) udgivet et system til detektion og forebyggelse af netværksindtrængen , som tilbyder værktøjer til inspektion af forskellige typer trafik. I konfigurationer af Suricata er det muligt at anvende , der udvikles af projektet Snort, samt reglerne fra og . Kildekoderne til projektet er under GPLv2-licensen.
Vigtige ændringer:
- Begyndende support for HTTP/2.
- Support for RFB og MQTT-protokoller, inklusive mulighed for protokoldetektion og logging.
- Mulighed for logging af DCERPC-protokollen.
- Betydelig forbedring af loggerens ydeevne gennem EVE-subsystemet, der muliggør output af hændelser i JSON-format. Hastigheden er opnået ved at bruge en ny JSON-builder skrevet i Rust.
- Skalerbarheden af EVE-logsystemet er forbedret, og der er tilføjet mulighed for at føre separate logfiler for hver strøm.
- Mulighed for at definere betingelser for at nulstille oplysninger i loggen.
- Mulighed for at inkludere MAC-adresser i EVE-loggen og forbedre detaljeringen af DNS-loggen.
- Forbedret ydeevne af flow-motoren.
- Support til identifikation af SSH-implementationer ().
- Implementering af GENEVE-tunnel dekoder.
- Koden til behandling af , DCERPC og SSH er gen skrevet i Rust. Support for nye protokoller er også implementeret i Rust.
- I regeldefineringsspråket er støtten til parameteren from_end i nøgleordet byte_jump blevet tilføjet, og parameteren bitmask i byte_test. Det er implementeret et nøgleord pcrexform, der muliggør brug af regulære udtryk (pcre) til at fange substrenge. URL-decoding er tilføjet. Nøgleordet byte_math er også tilføjet.
- Mulighed for at bruge cbindgen til at generere bindings på Rust- og C-sprog.
- Begyndende support for plugins.
Funktioner i Suricata:
- Brug af et ensartet format til output af resultaterne af inspektioner , som også bruges af projektet Snort, hvilket muliggør brug af standardværktøjer til analyse, såsom . Mulighed for integration med produkter som BASE, Snorby, Sguil og SQueRT. Support for output i PCAP-format;
- Understøttelse af automatisk identifikation af protokoller (IP, TCP, UDP, ICMP, HTTP, TLS, FTP, SMB osv.), der gør det muligt at arbejde med regler kun baseret på protokoltypen, uden tilknytning til portnummeret (f.eks. blokere HTTP-trafik på en ikke-standard port). Tilstedeværelsen af dekodere til protokoller som HTTP, SSL, TLS, SMB, SMB2, DCERPC, SMTP, FTP og SSH;
- En kraftfuld HTTP-trafikanalysesystem, der bruger et specielt bibliotek HTP til at analysere og normalisere HTTP-trafik, udviklet af forfatteren af Mod_Security-projektet. Der er en modul til at føre detaljerede logfiler over transit HTTP-transmissioner, loggen gemmes i standardformat;
Apache. Understøttelse af udtrækning og verifikation af filer overført via HTTP-protokollen. Understøttelse af analyse af komprimeret indhold. Mulighed for identifikation baseret på URI, cookies, headers, user-agent, samt indholdet af anmodningen/svaret; - Understøttelse af forskellige græn interfaces til trafikfangst, herunder NFQueue, IPFRing, LibPcap, IPFW, AF_PACKET, PF_RING. Mulighed for at analysere allerede gemte filer i PCAP-format;
- Høj ydeevne, evne til at behandle streams op til 10 gigabit/s på almindeligt udstyr.
- Højtydende maskematch-mekanisme med store sæt IP-adresser. Understøttelse af indholdsforskydning baseret på masker og regulære udtryk. Udtrækning af filer fra trafikken, herunder identifikation baseret på navn, type eller MD5-kontrolsum.
- Mulighed for at bruge variable i regler: man kan gemme information fra streamen og senere bruge den i andre regler;
- Brug af YAML-formatet i konfigurationsfiler, hvilket gør det muligt at bevare overskueligheden samtidig med at maskinerne kan behandle dem nemt;
- Fuld understøttelse af IPv6;
- Indbygget motor til automatisk defragmentering og gensamling af pakker, der muliggør korrekt behandling af streams uanset rækkefølgen af pakkerne;
- Understøttelse af tunnelprotokoller: Teredo, IP-IP, IP6-IP4, IP4-IP6, GRE;
- Understøttelse af dekodering af pakker: IPv4, IPv6, TCP, UDP, SCTP, ICMPv4, ICMPv6, GRE, Ethernet, PPP, PPPoE, Raw, SLL, VLAN;
- Logføringsfunktion til nøgler og certifikater, der indgår i TLS/SSL-forbindelser;
- Mulighed for at skrive scripts i Lua-sproget for at sikre udvidet analyse og implementering af yderligere funktioner, der er nødvendige for at definere trafiktyper, som ikke kan håndteres med standardregler;
Kilde: opennet.ru
