TRAIRA: uma ferramenta para Tratamento de Incidentes de Rede Automatizado Aluno: da Silva Brito 1 Orientador: Luciano Porto Barreto 1 Co-Orientador: Jerônimo Aguiar Bezerra 2 1 Departamento de Ciência da Computação Universidade Federal da Bahia 2 Ponto de Presença da RNP na Bahia 14 de dezembro de 2010
Estatísticas do CERT.Bahia Motivação Estatísticas do CERT.Bahia (dados coletados até Out/2010): 1431 notificações do tipo host possivelmente infectado com vírus/worm (93.8%); 45 notificações de envio de spam (3%); 23 notificações relacionados à violação de copyright (1.5%); Dentre outros Retirado de http://www.certbahia.pop-ba.rnp.br/estatisticas 2 / 24
Resposta a incidentes Motivação Grande desafio para equipes de segurança Volume de notificações, heterogeneidade, tecnologias (e.g. NAT e DHCP) Limitação de equipe e carência de ferramentas especializadas Inviável e custoso o tratamento/intervenção manual em redes corporativas (e.g. máquinas infectadas com software malicioso). Importante: automatização do processo de tratamento 3 / 24
Motivação Principais dificuldades do tratamento de incidentes - NAT Network Address Translation (NAT) Problema: dificuldade em determinar, com precisão, o endereço IP interno mapeado no endereço externo Suporte à logging nos dispositivos de NAT iptables não suporta Busca nos logs 4 / 24
Motivação Principais dificuldades do tratamento de incidentes - DHCP Dynamic Host Configuration Protocol (DHCP) Problema: um host pode ter dois ou mais endereços IP por dia, semana ou mês (lease time) Complexo correlacionar IP e host 5 / 24
Motivação Principais dificuldades do tratamento de incidentes - Logs Registros (logs) do sistema Problema: volume de dados para salvaguarda e análise Exemplo da Rede UFBA: logs de NAT (valores médios diários em Nov/2010) 290MB por arquivo compactado (gzip -9) 3.9GB por arquivo sem compactação Mais de 7 milhões de registros de traduções NAT 6 / 24
TRAIRA TRAIRA Tratamento de Incidentes de Rede Automatizado Ferramenta para automatização do tratamento de incidentes de segurança Contexto: Rede UFBA, CERT.Bahia Rede UFBA Quase 12 mil hosts na rede (3500 hosts simultaneamente), sem considerar os acessos via rede wireless Heterogeneidade de equipamentos e software Características: Modular, extensível Fácil implantação em ambientes heterogêneos Relatórios/Estatísticas automáticos Geração automática de Resposta 7 / 24
TRAIRA TRAIRA Tratamento de Incidentes de Rede Automatizado Objetivo principal: efetuar a detecção, identificação e isolamento da máquina geradora do incidente. Plataforma: desenvolvido em Perl como extensão do Request Tracker (RT) ferramenta livre para tratamento de incidentes Cerca 2.500 linhas de código 8 / 24
TRAIRA TRAIRA Arquitetura 9 / 24
TRAIRA Fluxo de execução TRAIRA 10 / 24
TRAIRA TRAIRA Geração de estatísticas 11 / 24
Estudo de caso na UFBA TRAIRA TRAIRA está sendo usado como base para o tratamento de incidentes de segurança na Universidade Federal da Bahia (UFBA) Só em Nov/2010, foram 23 notificações de incidentes do tipo vírus/worm 483 incidentes TRAIRA permitiu o tratamento de todos esses incidentes Geralmente uma máquina é responsável por cada notificação de incidente 12 / 24
NFCT-SNATLOG Registro das traduções SNAT do IPTables/Netfilter IPTables/Netfilter é o componente nativo do Linux para filtro de pacotes, NAT/NAPT e outras manipulações de pacotes O iptables não registra as traduções SNAT Solução proposta: NFCT-SNATLOG ( ) Netfilter Connection Tracking SNAT Logging Registro das seguintes informações: IP/porta de origem originais; IP/porta de origem traduzidos; protocolo; data/hora do fim da conexão, duração; via syslog. 13 / 24
NFCT-SNATLOG NFCT-SNATLOG Netfilter Conntrack SNAT Logging Software desenvolvido em C, que utiliza a biblioteca libnetfilter_conntrack Cerca de 500 linhas de código /usr/sbin/nfct snatlog daemon && tail f /var/log/syslog 1 2 Nov 20 09:49:18 firewall nfct-snatlog: [SNAT_LOG] proto=tcp o-src=10.10.10.1 o-spt=40000 t-src=192.168.5.253 t-spt=1024 duration=130s Nov 20 09:49:17 firewall nfct-snatlog: [SNAT_LOG] proto=tcp o-src=172.16.0.1 o-spt=40000 t-src=192.168.5.253 t-spt=40000 duration=130s 14 / 24
NFCT-SNATLOG NFCT-SNATLOG Netfilter Conntrack SNAT Logging Software desenvolvido em C, que utiliza a biblioteca libnetfilter_conntrack Cerca de 500 linhas de código /usr/sbin/nfct snatlog daemon && tail f /var/log/syslog 1 Nov 20 09:49:18 firewall nfct-snatlog: [SNAT_LOG] proto=tcp o-src=10.10.10.1 o-spt=40000 t-src=192.168.5.253 t-spt=1024 duration=130s 2 Nov 20 09:49:17 firewall o src=10.10.10.1 nfct-snatlog: [SNAT_LOG] o spt=40000 proto=tcp o-src=172.16.0.1 t src=192.168.5.253 o-spt=40000 t-src=192.168.5.253 t spt=1024 t-spt=40000 duration=130s duration=130s proto=tcp 15 / 24
Avaliação de desempenho NFCT-SNATLOG Cenário1: Sem logging Cenário2: Logging local Cenário3: Logging remoto N x nc u SERVER 6001 q 0 < file2k.bin iperf c SERVER p 5001 n 64K N=4, 6, 8, 10, 12, 14./udp_server 6001 & iperf p 5001 s 16 / 24
Avaliação de desempenho NFCT-SNATLOG Resumo dos resultados obtidos: Cenário Memória Escrita em disco Livre Buffers Cache Min Média Max Logging local -7.65% 1.22% 5.66% 6.14KB/s 23.9KB/s 41.47KB/s Logging remoto -0.92.% 0.63% -- 6.14KB/s 9.33KB/s 26.62KB/s Análise dos resultados: Viabilidade de uso do NFCT-SNATLOG Vantagens no logging remoto Desvantagem no uso de muitas máquinas por IP de NAT 17 / 24
Conclusões Contribuição: automatizar o tratamento a incidentes TRAIRA: detecção, identificação e isolamento da máquina geradora do incidente Requisitos de implantação do TRAIRA são simples Principal requisito: logging das traduções SNAT IPTables/Netfilter não suporta nativamente Proposta: NFCT-SNATLOG Uma ferramenta para o registro (logging) das traduções SNAT do IPTables/Netfitler Utilização viável (bom desempenho) 18 / 24
Conclusões Trabalhos futuros Implantar o TRAIRA nos clientes do PoP-BA/RNP e outras instituições interessadas (parceria com outros CSIRTs acadêmicos) Armazenamento de logs em bancos de dados Investigar integração do TRAIRA ao RTIR Avaliar impactos da Internet do futuro no tratamento de incidentes de segurança (IPv6 e fim do NAT, mobilidade etc.) 19 / 24
Referências Bibliográficas SCARFONE, K.; GRANCE, T.; MASONE, K. Computer Security Incident Handling Guide. KAISER, J. et al. Automated resolving of security incidents as a key mechanism to fight massive infections of malicious software. FARNHAM, G. Cisco Security Agent and Incident Handling. AYUSO, P. Netfilter s connection tracking system. CERT.BR. Cartilha de Segurança para Internet. Parte VII: Incidentes de Segurança e Uso Abusivo da Rede. BEZERRA, J. A. Relatório de atividades - Operação e Segurança - parte II. KLINGMüLLER, T. SIRIOS: A Framework for CERTs. NETFILTER. The netfilter.org libnetfilter_conntrack project. 20 / 24
Backup 21 / 24
Trabalhos correlatos SCARFONE, K.; GRANCE, T.; MASONE, K. Computer Security Incident Handling Guide. KAISER, J. et al. Automated resolving of security incidents as a key mechanism to fight massive infections of malicious software. FARNHAM, G. Cisco Security Agent and Incident Handling. 22 / 24
TRAIRA Demonstração 23 / 24
Perguntas? Obrigado!!! ;-) 24 / 24