Organisation OISF (Open Information Security Foundation) lance un système de détection et de prévention des intrusions réseau , qui fournit des outils d'inspection de divers types de trafic. Dans les configurations de Suricata, il est possible d'utiliser , développée par le projet Snort, ainsi que des ensembles de règles et . Les codes sources du projet sous licence GPLv2.
Principales modifications :
- Nouveaux modules d'analyse et de journalisation pour les protocoles
RDP, SNMP et SIP, écrits en Rust. Le module d'analyse FTP a été amélioré avec la possibilité de journaliser via le sous-système EVE, permettant d'exporter des événements au format JSON; - En plus du support du protocole d'identification des clients TLS JA3 introduit dans la version précédente, le support du protocole , de déterminer, sur la base des caractéristiques de la négociation de connexion et des paramètres définis, quel logiciel est utilisé pour établir la connexion (par exemple, cela permet d'identifier l'utilisation de Tor et d'autres applications types). JA3 permet d'identifier les clients, tandis que JA3S identifie les serveurs. Les résultats peuvent être utilisés dans le langage de règles et les logs;
- Ajout d'une fonctionnalité expérimentale de correspondance avec un échantillon de grands ensembles de données, réalisée à l'aide de nouvelles opérations . Par exemple, cette fonctionnalité est applicable à la recherche de masques dans de grandes listes noires contenant des millions d'entrées;
- En mode d'inspection HTTP, une couverture complète de toutes les situations décrites dans le jeu de tests est assurée (par exemple, elle couvre les méthodes utilisées pour masquer une activité malveillante dans le trafic);
- Les outils de développement de modules en Rust ont été déplacés des options aux fonctionnalités standard obligatoires. À l'avenir, il est prévu d'étendre l'utilisation du Rust dans la base de code du projet et de remplacer progressivement les modules par des équivalents développés en Rust;
- Le moteur d'identification des protocoles a été amélioré pour augmenter la précision et le traitement des flux de trafic asynchrones;
- Dans le journal EVE, un nouveau type d'enregistrement 'anomaly' a été ajouté, dans lequel sont conservés des événements atypiques détectés lors du décodage des paquets. EVE a également élargi l'affichage des informations sur les VLAN et les interfaces de capture de trafic. Une option a été ajoutée pour enregistrer tous les en-têtes HTTP dans les enregistrements http du journal EVE;
- Les gestionnaires basés sur eBPF prennent en charge les mécanismes matériels d'accélération de la capture de paquets. Pour l'instant, l'accélération matérielle est limitée aux adaptateurs réseau Netronome, mais d'autres matériels suivront bientôt;
- Le code a été réécrit pour capturer le trafic à l'aide du framework Netmap. La possibilité d'utiliser les fonctionnalités avancées de Netmap, telles que le commutateur virtuel, a été ajoutée. ;
- prise en charge du nouveau schéma de détermination des mots clés pour les « buffers collants » (Sticky Buffers). Le nouveau schéma est défini au format « protocole.buffer », par exemple, pour l'inspection d'URI, le mot clé sera « http.uri » au lieu de « http_uri »;
- Tout le code Python utilisé a été vérifié pour la compatibilité avec
Python 3 ; - La prise en charge de l'architecture Tilera, du journal texte dns.log et de l'ancien journal files-json.log a été interrompue.
Caractéristiques de Suricata :
- Utilisation d'un format unifié pour le retour des résultats de vérification , également utilisé par le projet Snort, ce qui permet d'utiliser des outils standard d'analyse, tels que . Possibilité d'intégration avec les produits BASE, Snorby, Sguil et SQueRT. Support pour l'exportation au format PCAP;
- Prise en charge de la détection automatique des protocoles (IP, TCP, UDP, ICMP, HTTP, TLS, FTP, SMB, etc.), permettant de travailler avec des règles basées uniquement sur le type de protocole, sans se référer au numéro de port (par exemple, bloquer le trafic HTTP sur un port non standard). Présence de décodeurs pour les protocoles HTTP, SSL, TLS, SMB, SMB2, DCERPC, SMTP, FTP et SSH ;
- Système d'analyse puissant du trafic HTTP, utilisant une bibliothèque spéciale HTP, développée par l'auteur du projet Mod_Security pour analyser et normaliser le trafic HTTP. Un module est disponible pour tenir un journal détaillé des transmissions HTTP en transit, le journal est enregistré dans un format standard.
Apache. Support de l'extraction et de la vérification des fichiers transmis via le protocole HTTP. Support de l'analyse du contenu compressé. Possibilité d'identification par URI, Cookie, en-têtes, user-agent, corps de la requête/réponse ; - Prise en charge de diverses interfaces pour l'interception du trafic, y compris NFQueue, IPFRing, LibPcap, IPFW, AF_PACKET, PF_RING. Analyse possible de fichiers déjà sauvegardés au format PCAP ;
- Performances élevées, capables de traiter des débits allant jusqu'à 10 gigabits/seconde sur du matériel standard.
- Mécanisme de correspondance haute performance basé sur un masque avec de grands ensembles d'adresses IP. Prise en charge de l'extraction de contenu par masque et expressions régulières. Extraction de fichiers à partir du trafic, y compris leur identification par nom, type ou checksum MD5.
- Possibilité d'utiliser des variables dans les règles : il est possible de conserver des informations provenant du flux et de les utiliser ultérieurement dans d'autres règles ;
- Utilisation du format YAML dans les fichiers de configuration, permettant de maintenir une clarté tout en étant facilement traitable par machine ;
- Prise en charge complète de l'IPv6 ;
- Moteur intégré pour la déflectation automatique et la reconstruction des paquets, permettant d'assurer un traitement correct des flux, quel que soit l'ordre d'arrivée des paquets ;
- Prise en charge des protocoles de tunneling : Teredo, IP-IP, IP6-IP4, IP4-IP6, GRE ;
- Prise en charge du décodage des paquets : IPv4, IPv6, TCP, UDP, SCTP, ICMPv4, ICMPv6, GRE, Ethernet, PPP, PPPoE, Raw, SLL, VLAN ;
- Mode de conservation des clés et certificats dans le cadre des connexions TLS/SSL ;
- Possibilité d'écrire des scripts en Lua pour assurer une analyse avancée et mettre en œuvre des fonctionnalités supplémentaires nécessaires pour identifier des types de trafic pour lesquels les règles standard ne suffisent pas.
Source : opennet.ru
