Índice:
Há muitos casos em que as redes são invadidas, acessadas ilegalmente ou desativadas com eficácia. O agora infame hacking de 2006 da rede TJ Maxx foi bem documentado - tanto em termos de falta de diligência por parte da TJ Maxx quanto em conseqüência das implicações legais sofridas pela empresa. Adicione a isso o nível de dano causado a milhares de clientes da TJ Maxx e a importância de alocar recursos para a segurança da rede rapidamente se torna aparente.
Em uma análise mais aprofundada dos hackers do TJ Maxx, é possível apontar para um ponto tangível no tempo em que o incidente foi finalmente percebido e atenuado. Mas e os incidentes de segurança que passam despercebidos? E se um jovem hacker empreendedor for discreto o suficiente para extrair pequenas informações vitais de uma rede de uma maneira que deixe os administradores de sistema ainda mais sábios? Para combater melhor esse tipo de cenário, os administradores de segurança / sistema podem considerar o IDS (Snort Intrusion Detection System).
Começos de Snort
Em 1998, Snort foi lançado pelo fundador da Sourcefire, Martin Roesch. Na época, era considerado um sistema leve de detecção de intrusões que funcionava principalmente nos sistemas operacionais Unix e similares ao Unix. Na época, a implantação do Snort era considerada de ponta, pois rapidamente se tornou o padrão de fato nos sistemas de detecção de intrusão de rede. Escrito na linguagem de programação C, Snort rapidamente ganhou popularidade quando os analistas de segurança gravitaram em direção à granularidade com a qual ele poderia ser configurado. O Snort também é um software completamente aberto, e o resultado tem sido um software muito robusto e amplamente popular que resistiu a grandes quantidades de escrutínio na comunidade de software livre.Fundamentos do Snort
No momento da redação deste artigo, a versão atual de produção do Snort é 2.9.2. Ele mantém três modos de operação: modo Sniffer, modo registrador de pacotes e modo IDS / IPS (sistema de detecção e prevenção de intrusões de rede).
O modo sniffer envolve pouco mais do que capturar pacotes à medida que eles se cruzam com a placa de interface de rede (NIC) em que o Snort está instalado. Os administradores de segurança podem usar esse modo para decifrar que tipo de tráfego está sendo detectado na NIC e, em seguida, podem ajustar a configuração do Snort de acordo. Deve-se notar que não há registro nesse modo; portanto, todos os pacotes que entram na rede são simplesmente exibidos em um fluxo contínuo no console. Fora da solução de problemas e instalação inicial, esse modo específico tem pouco valor por si só, pois a maioria dos administradores de sistema é melhor atendida usando algo como o utilitário tcpdump ou o Wireshark.
O modo registrador de pacotes é muito semelhante ao modo sniffer, mas uma diferença importante deve ser evidente no nome desse modo específico. O modo registrador de pacotes permite que os administradores de sistema registrem os pacotes que estão chegando aos locais e formatos preferidos. Por exemplo, se um administrador do sistema quiser registrar pacotes em um diretório chamado / log em um nó específico da rede, ele primeiro criará o diretório nesse nó específico. Na linha de comando, ele instruiria o Snort a registrar pacotes de acordo. O valor no modo registrador de pacotes está no aspecto de manutenção de registros inerente ao nome, pois permite que os analistas de segurança examinem o histórico de uma determinada rede.
ESTÁ BEM. É bom saber todas essas informações, mas onde está o valor agregado? Por que um administrador de sistema gasta tempo e esforço instalando e configurando o Snort quando o Wireshark e o Syslog podem executar praticamente os mesmos serviços com uma interface muito mais bonita? A resposta para essas perguntas muito pertinentes é o modo NIDS (Network Intrusion Detection System).
O modo sniffer e o modo logger de pacotes são trampolins para o que realmente importa o Snort - o modo NIDS. O modo NIDS baseia-se principalmente no arquivo de configuração do snort (geralmente chamado snort.conf), que contém todos os conjuntos de regras que uma implantação típica do Snort consulta antes de enviar alertas aos administradores do sistema. Por exemplo, se um administrador gostaria de acionar um alerta toda vez que o tráfego FTP entra e / ou sai da rede, ele simplesmente se refere ao arquivo de regras apropriado no snort.conf e pronto! Um alerta será acionado de acordo. Como se pode imaginar, a configuração do snort.conf pode ser extremamente granular em termos de alertas, protocolos, determinados números de portas e qualquer outra heurística que um administrador de sistema possa achar relevante para sua rede específica.
Onde Snort vem curto
Logo após Snort começar a ganhar popularidade, sua única falha era o nível de talento da pessoa que o configurava. Com o passar do tempo, no entanto, os computadores mais básicos começaram a suportar múltiplos processadores e muitas redes locais começaram a atingir velocidades de 10 Gbps. O Snort sempre foi considerado "leve" ao longo de sua história, e esse apelido é relevante até hoje. Quando executada na linha de comando, a latência de pacotes nunca foi um obstáculo, mas nos últimos anos um conceito conhecido como multithreading realmente começou a se firmar, pois muitos aplicativos tentam tirar proveito dos múltiplos processadores mencionados acima. Apesar de várias tentativas de superar o problema de multithreading, Roesch e o restante da equipe do Snort não conseguiram produzir resultados tangíveis. O Snort 3.0 deveria ser lançado em 2009, mas ainda não havia sido disponibilizado no momento da redação. Além disso, Ellen Messmer, da Network World, sugere que Snort rapidamente se viu em uma rivalidade com o IDS do Departamento de Segurança Interna conhecido como Suricata 1.0, cujos defensores sugerem que ele suporta multithreading. No entanto, deve-se notar que essas alegações foram veementemente contestadas pelo fundador da Snort.Futuro do Snort
O Snort ainda é útil? Isso depende do cenário. Os hackers que sabem como tirar proveito das deficiências multithreading do Snort ficariam encantados em saber que o único meio de uma determinada rede de detectar invasões é o Snort 2.x. No entanto, o Snort nunca foi concebido para ser a solução de segurança para qualquer rede. O Snort sempre foi considerado uma ferramenta passiva que serve a um propósito específico em termos de análise de pacotes de rede e análise forense de rede. Se os recursos forem limitados, um administrador de sistema sábio com conhecimento abundante em Linux pode considerar a implantação do Snort de acordo com o restante de sua rede. Embora possa ter suas deficiências, o Snort ainda oferece o maior valor pelo menor custo. (sobre distribuições Linux no Linux: Bastião da Liberdade.)