Meu posicionamento/resposta diante desta pergunta:
I - Uma infra-estrutura de "Network Forensics" que seja capaz de reconstruir e fazer o "replay" dos pacotes relacionados ao ataque (ex: NetWitness NextGen / NikSun / Infinistream / NetIntercept )
II - Uma solução de SIEM/SEM para correlacionamento em near-real time dos logs (firewall, roteadores, servidor comprometido, ids/ips, dhcp, dns, aplicações internas) (ex: ArcSight / ISM Intellitatics / Symantec SIM)
III - Uma solução (idealmente enterprise) de forense computacional que possibilite a análise de dados voláteis (incluindo memória) e de disco (ex: Encase Enterprise / F-Response / AccessData Enterprise )
IV - Uma ferarmenta de monitoração de atividade de desktops (ex: SpectorCNE, WorkExaminer) [item incluído em 18/10/2009]
Com relação a primeira das soluções listadas acima, o Richard Bejtlich (CSO da General Eletric e autor de vários livros - todos recomendados) é uma referência mundial no que diz respeito à Segurança e Monitoramento de Rede, já o utilizei de referência/links em vários assuntos abordados aqui no nosso blog.
Ele postou há alguns dias atrás um artigo muito interessante sobre tipos de aplicações de monitoração de segurança de rede e eu fiquei esperando ter um tempinho para atualizar o blog com este excelente material e discussão.
São elencados por ele seis "data types" (maltraduzindo: tipos de dados) possíveis em uma ferramenta que lida com monitoração de rede (tradução livre minha):
- Alertas: julgamento e detecção e/ou bloqueio feito por um produto ("Port scan!" ou "Buffer overflow!");
- Estatísticas: descrição high-level de atividades (percentual de protocolos, tendências, etc.);
- Sessões: comunicações entre hosts ("A conversou com B na 6a-feira por 61 segundos enviando 1234 bytes");
- Conteúdo Completo (Full Content): todos os pacotes trafegados (no cabo/ar);
- Extração de Conteúdo: reconstrução de elementos de uma sessão e extração de metadados;
- Transações: geração de logs baseado em tráfego do tipo requisição-resposta (request-reply) como DNS, HTTP, etc.
Na minha opinião, a tabela mostra claramente porque uma organização que se preocupa com segurança precisa possuir ou desenvolver pelo menos uma das duas últimas categorias de produtos (NetWork Forensic Appliance ou Custom NSM Appliance) e não se satisfazer com soluções tradicionais (ex: IDS/IPS).
Apresento abaixo uma análise da tabela apresentada, algumas opiniões próprias (*) e nomes de aplicações e produtos que o autor do post citado preferiu não incluir.
(1) Produto IDS/IPS: Alerta ou Bloqueio OK; Estatísticas de Alertas OK; Sem Sessões; Sem Conteúdo Completo; Sem Extração de Conteúdo; Sem Transações. [ * Minha opinião: melhor opção comercial: SourceFire, melhor opção free: Snort / pouquíssimas vezes tive a oportunidade de ver um IDS/IPS bem gerenciado/"tunado"* ]
(2) Produto NBAD (Network Bahavioral Anomaly Device): Alerta baseados na análise de flows; Bons dados estatísticos; Bons dados de sessão; Conteúdo Completo somente para alguns flows; Sem Extração de Conteúdo; Sem Transações.
(3) Network Forensic Appliance: Sem alertas (* O NextGen da NetWitness possui alertas *); Bons dados estatísticos; Dados de sessão não podem ser manipulados imediatamente (*O NextGen da NetWitness permite que dados de sessão que possam ser manipulados imediatamente * ); Conteúdo Completo (propósito deste tipo de solução); Extração de Dados (alguns appliances possuem); Bons dados de Transações.
(4) Custom NSM Appliance *ou faça você mesmo com ferramentas de código aberto*: Alertas: Snort, Bro; Estatísticas: MRTG, Ntop; Sessões: auto-contidas ou aceitam Netflow; Conteúdo Completo: Dumpcap/Wireshark, Daemonlogger/Snort; Extração de sessão: requer desenvolvimento próprio (* tcpxtract, Networkminer *) ; Transações: Bro, Httpry.
Extendendo a resposta dada no início deste post no que diz respeito à monitoração de rede com objetivo de resposta a incidentes:
Se você possui budget para investimento, o ideal é buscar uma solução de Forense de Rede (opção 3 acima - que também é a que traz resultados mais rápidos)
No caso de não ter dinheiro mas possuir uma equipe numerosa e qualificada em segurança e open-source para dispor no desenvolvimento de uma solução customizada, o melhor (porém mais demorado) caminho é a opção 4 (Custom NSM Appliance).
Sei que este tipo de discussão costuma gerar debates interessantes... Comentários?