Compañía Cisco a versión beta final dun sistema de prevención de ataques completamente redeseñado , tamén coñecido como o proxecto Snort++, leva en desenvolvemento de forma intermitente desde 2005. Está previsto que se publique unha versión candidata a finais deste ano.
A nova rama reinventa completamente o concepto do produto e redeseña a súa arquitectura. As áreas clave de enfoque durante a nova rama inclúen a simplificación da configuración e o inicio de Snort, a automatización da configuración, a simplificación da linguaxe de creación de regras, a detección automática de todos os protocolos, o fornecemento dun shell para a xestión da liña de comandos e o uso activo de subprocesos múltiples con acceso compartido a unha única configuración entre diferentes xestores.
Realizáronse as seguintes innovacións significativas:
- Fíxose unha transición a un novo sistema de configuración que ofrece unha sintaxe simplificada e permite o uso de scripts para xerar axustes de forma dinámica. LuaJIT úsase para procesar ficheiros de configuración. Os complementos baseados en LuaJIT son proporcionados coa implementación de opcións adicionais para as regras e un sistema de rexistro;
- Modernizouse o motor de detección de ataques, actualizáronse as regras e engadiuse a capacidade de vincular búfers en regras (búfers adhesivos). Utilizouse o buscador Hyperscan, que permitiu empregar patróns desencadeados rápidos e con máis precisión baseados en expresións regulares nas regras;
- Engadiuse un novo modo de introspección para HTTP que ten en conta o estado da sesión e abarca o 99 % das situacións admitidas pola suite de probas O código para soportar HTTP/2 está en desenvolvemento;
- Mellorouse significativamente o rendemento do modo de inspección profunda de paquetes. Engadida a capacidade de procesamento de paquetes multi-fíos, permitindo a execución simultánea de varios fíos con procesadores de paquetes e proporcionando escalabilidade lineal dependendo do número de núcleos de CPU;
- Implementouse un almacenamento común de táboas de configuración e atributos, que se comparte entre distintos subsistemas, o que permitiu reducir significativamente o consumo de memoria ao eliminar a duplicación de información;
- Novo sistema de rexistro de eventos usando formato JSON e facilmente integrado con plataformas externas como Elastic Stack;
- Transición a unha arquitectura modular, a capacidade de ampliar a funcionalidade mediante a conexión de complementos e a implementación de subsistemas clave en forma de complementos substituíbles. Actualmente, xa se implementaron varios centos de complementos para Snort 3, que abarcan varias áreas de aplicación, por exemplo, que lle permiten engadir os seus propios códecs, modos de introspección, métodos de rexistro, accións e opcións nas regras;
- Detección automática dos servizos en execución, eliminando a necesidade de especificar manualmente os portos de rede activos.
Cambios en comparación coa versión de proba anterior, que se publicou en 2018:
- Engadiuse compatibilidade con ficheiros para anular rapidamente a configuración relativa á configuración predeterminada;
- O código ofrece a posibilidade de usar construcións C++ definidas no estándar C++14 (a compilación require un compilador que admita C++14);
- Engadiuse un novo controlador VXLAN;
- Busca mellorada de tipos de contido por contido mediante implementacións de algoritmos alternativos actualizadas и ;
- O sistema de inspección de tráfico HTTP/2 está case totalmente operativo;
- O inicio é acelerado usando varios fíos para compilar grupos de regras;
- Engadiuse un novo mecanismo de rexistro;
- Detección de erros de Lua mellorada e inclusión en listas brancas optimizada;
- Fixéronse cambios para permitir a recarga da configuración sobre a marcha;
- Engadiuse o sistema de inspección RNA (Real-time Network Awareness, coñecemento da rede en tempo real), que recompila información sobre recursos, hosts, aplicacións e servizos dispoñibles na rede;
- Para simplificar a configuración, deixouse de usar snort_config.lua e SNORT_LUA_PATH.
Fonte: opennet.ru
