P4-ONIDS: A P4-based NIDS optimized for constrained programmable data planes in SDN - Tavares, Kairo; Ferreto, Tiago (Anais do Simpósio Brasileiro de Redes de Computadores e Sistemas Distribuídos (SBRC); 2021: Anais do XXXIX Simpósio Brasileiro de Redes de Computadores e Sistemas Distribuídos, 2021)
Sistemas de Detecção de Intrusão de Redes de Computadores (NIDS) são um dos principais mecanismos de defesa empregados para detectar e mitigar ameaças baseadas em redes de computadores. Vários trabalhos exploraram a capacidade de descarregar recursos de pré-filtragem de NIDS para plataformas de hardware para reduzir a saturação de usos de recursos e melhorar a precisão da detecção. Entre eles, as soluções de plano de dados de redes em SDN visam usufruir da velocidade do hardware e a flexibilidade recente dos switches programáveis. No entanto, essas soluções são projetadas sem considerar um plano de dados restrito com tamanhos de tabela e espaço de memória limitados, reduzindo assim a detecção de precisão e ataques de saturação do buffer de vulnerabilidade. Este artigo propõe P4-ONIDS, uma solução que melhora a análise e compilação de regras NIDS para o plano de dados ao lado de soluções baseadas em sketches para pré-filtragem de fluxo suspeito, mantendo um baixo uso de recursos e aproveitando a velocidade de hardware do plano de dados. Avaliamos o compilador e nossa capacidade de pré-filtragem no plano de dados em um ambiente emulado usando Mininet com Snort NIDS. Os resultados mostraram uma redução de mais de 400x nas regras P4 geradas. Alguns experimentos alcançam uma precisão de aproximadamente 90% com 40% de filtragem de pacotes.