Release candidate pour le système de détection d'attaque Snort 3

Société Cisco annoncé le sur le développement d'une release candidate pour un système de prévention des attaques entièrement repensé Renifler 3, également connu sous le nom de projet Snort++, sur lequel travaille par intermittence depuis 2005. La version stable devrait être publiée d’ici un mois.

Dans la branche Snort 3, le concept produit a été entièrement repensé et l'architecture a été repensée. Parmi les domaines clés de développement de Snort 3 : simplification de la mise en place et du fonctionnement de Snort, automatisation de la configuration, simplification du langage de construction des règles, détection automatique de tous les protocoles, mise à disposition d'un shell pour le contrôle depuis la ligne de commande, utilisation active de multithreading avec accès conjoint de différents processeurs à une seule configuration.

Les innovations significatives suivantes ont été mises en œuvre :

  • Une transition a été effectuée vers un nouveau système de configuration qui offre une syntaxe simplifiée et permet l'utilisation de scripts pour générer dynamiquement des paramètres. LuaJIT est utilisé pour traiter les fichiers de configuration. Les plugins basés sur LuaJIT sont fournis avec la mise en œuvre d'options supplémentaires pour les règles et un système de journalisation ;
  • Le moteur de détection d'attaques a été modernisé, les règles ont été mises à jour et la possibilité de lier des tampons dans les règles (sticky buffers) a été ajoutée. Le moteur de recherche Hyperscan a été utilisé, ce qui a permis d'utiliser des modèles déclenchés plus rapidement et plus précisément basés sur des expressions régulières dans les règles ;
  • Ajout d'un nouveau mode d'introspection pour HTTP qui prend en compte l'état de la session et couvre 99% des situations supportées par la suite de tests Évadeur HTTP. Ajout du système d'inspection du trafic HTTP/2 ;
  • Les performances du mode d’inspection approfondie des paquets ont été considérablement améliorées. Ajout de la possibilité de traitement de paquets multithread, permettant l'exécution simultanée de plusieurs threads avec des processeurs de paquets et offrant une évolutivité linéaire en fonction du nombre de cœurs de processeur ;
  • Un stockage de configuration commun et des tables d'attributs ont été implémentés, partagés entre différents sous-systèmes, ce qui a considérablement réduit la consommation de mémoire en éliminant la duplication des informations ;
  • Nouveau système de journalisation des événements utilisant le format JSON et facilement intégrable aux plateformes externes telles qu'Elastic Stack ;
  • Transition vers une architecture modulaire, possibilité d'étendre les fonctionnalités grâce à la connexion de plugins et à la mise en œuvre de sous-systèmes clés sous la forme de plugins remplaçables. Actuellement, plusieurs centaines de plugins ont déjà été implémentés pour Snort 3, couvrant divers domaines d'application, permettant par exemple d'ajouter vos propres codecs, modes d'introspection, méthodes de journalisation, actions et options dans les règles ;
  • Détection automatique des services en cours d'exécution, éliminant le besoin de spécifier manuellement les ports réseau actifs.
  • Ajout de la prise en charge des fichiers pour remplacer rapidement les paramètres relatifs à la configuration par défaut. Pour simplifier la configuration, l'utilisation de snort_config.lua et SNORT_LUA_PATH a été interrompue.
    Ajout de la prise en charge du rechargement des paramètres à la volée ;

  • Le code offre la possibilité d'utiliser des constructions C++ définies dans la norme C++14 (la construction nécessite un compilateur prenant en charge C++14) ;
  • Ajout d'un nouveau gestionnaire VXLAN ;
  • Recherche améliorée de types de contenu par contenu à l'aide d'implémentations d'algorithmes alternatifs mis à jour Boyer Moore и Hyperscan;
  • Le démarrage est accéléré en utilisant plusieurs threads pour compiler des groupes de règles ;
  • Ajout d'un nouveau mécanisme de journalisation ;
  • Un système d'inspection RNA (Real-time Network Awareness) a été ajouté, qui collecte des informations sur les ressources, les hôtes, les applications et les services disponibles sur le réseau.

Source: opennet.ru

Ajouter un commentaire