24
Detecção de ataques em Backbones IP através do Netflow - Claus Rugani Töpke - 23/09/2001 - 1 Detecção de ataques em Detecção de ataques em Backbones IP Backbones IP através do Netflow através do Netflow Autor: Claus Rugani Töpke [email protected] www.coppe.ufrj.br www.ravel.ufrj.br

Detecção de ataques em Backbones IP através do Netflow - Claus Rugani Töpke - 23/09/2001 -1 Detecção de ataques em Backbones IP através do Netflow Autor:

Embed Size (px)

Citation preview

Page 1: Detecção de ataques em Backbones IP através do Netflow - Claus Rugani Töpke - 23/09/2001 -1 Detecção de ataques em Backbones IP através do Netflow Autor:

Detecção de ataques em Backbones IP através do Netflow - Claus Rugani Töpke - 23/09/2001 - 1

Detecção de ataques emDetecção de ataques em

Backbones IPBackbones IP

através do Netflow através do Netflow

Autor: Claus Rugani Tö[email protected]

www.coppe.ufrj.br www.ravel.ufrj.br

Page 2: Detecção de ataques em Backbones IP através do Netflow - Claus Rugani Töpke - 23/09/2001 -1 Detecção de ataques em Backbones IP através do Netflow Autor:

Detecção de ataques em Backbones IP através do Netflow - Claus Rugani Töpke - 23/09/2001 - 2

Sumário

1 - Objetivo;

2 - Definições;

3 - Meios para a Detecção;

4 - O funcionamento do BPF;

5 - O funcionamento do Netflow;

6 - Implementação do detector;

7 - Conclusões.

Page 3: Detecção de ataques em Backbones IP através do Netflow - Claus Rugani Töpke - 23/09/2001 -1 Detecção de ataques em Backbones IP através do Netflow Autor:

Detecção de ataques em Backbones IP através do Netflow - Claus Rugani Töpke - 23/09/2001 - 3

Objetivo

Ilustrar os métodos de detecção de ataques em

Backbones IP. Apresentar uma implementação utilizando o NetFlow.

Page 4: Detecção de ataques em Backbones IP através do Netflow - Claus Rugani Töpke - 23/09/2001 -1 Detecção de ataques em Backbones IP através do Netflow Autor:

Detecção de ataques em Backbones IP através do Netflow - Claus Rugani Töpke - 23/09/2001 - 4

Definições (Backbone)

Page 5: Detecção de ataques em Backbones IP através do Netflow - Claus Rugani Töpke - 23/09/2001 -1 Detecção de ataques em Backbones IP através do Netflow Autor:

Detecção de ataques em Backbones IP através do Netflow - Claus Rugani Töpke - 23/09/2001 - 5

Definições (Tipos de Fluxo)

Page 6: Detecção de ataques em Backbones IP através do Netflow - Claus Rugani Töpke - 23/09/2001 -1 Detecção de ataques em Backbones IP através do Netflow Autor:

Detecção de ataques em Backbones IP através do Netflow - Claus Rugani Töpke - 23/09/2001 - 6

Definições (Ataques a serem detectados)

1 - Flood IP;

2 - DoS (ou Distribuido);

3 - ICMP Scan;

4 - Port Scan (UDP e TCP);Backdoor scan, service scan...

5 - Spoofing;

Page 7: Detecção de ataques em Backbones IP através do Netflow - Claus Rugani Töpke - 23/09/2001 -1 Detecção de ataques em Backbones IP através do Netflow Autor:

Detecção de ataques em Backbones IP através do Netflow - Claus Rugani Töpke - 23/09/2001 - 7

Meios para detecção

1 - RMON;

2 - IP Accounting;

3 - IP CEF Accounting;

4 - BGP Accounting;

5 - BPF (BSD Packet Filter);

5 - Netflow;

Page 8: Detecção de ataques em Backbones IP através do Netflow - Claus Rugani Töpke - 23/09/2001 -1 Detecção de ataques em Backbones IP através do Netflow Autor:

Detecção de ataques em Backbones IP através do Netflow - Claus Rugani Töpke - 23/09/2001 - 8

O funcionamento do BPF

Network

Kernel

Usuário

Nível

Programaçãoda máquinade estadoFiltro

Buffer

/dev/bpf...

Filtro

Buffer

Link-layerdriver

ProtocolStack

Link-layerdriver

...

libpcap

BPF

*BSD = Berkeley Software Distribution

snort tcpdump

Page 9: Detecção de ataques em Backbones IP através do Netflow - Claus Rugani Töpke - 23/09/2001 -1 Detecção de ataques em Backbones IP através do Netflow Autor:

Detecção de ataques em Backbones IP através do Netflow - Claus Rugani Töpke - 23/09/2001 - 9

O funcionamento do Netflow (sem NetFlow)

Procurana ACL

Envia parasaída

Pacote chegapela interface

Desviaou filtra

Procura na tabelade roteamento

ou cache Procura na tabela deroteamento ou cache

identificando a interfacede saída, depois procura

na ACL.

Page 10: Detecção de ataques em Backbones IP através do Netflow - Claus Rugani Töpke - 23/09/2001 -1 Detecção de ataques em Backbones IP através do Netflow Autor:

Detecção de ataques em Backbones IP através do Netflow - Claus Rugani Töpke - 23/09/2001 - 10

O funcionamento do Netflow (com NetFlow)

Procurana ACL

Envia parasaída

Pacote chegapela interface

Desviaou filtra

Procura na tabela deroteamento ou cache

procura cache de fluxos

tabela cachede fluxos

Exportação

Para ocoletor

Procura na tabelade roteamento

ou cache

Procura nocache de fluxos

TabelaBGP

Page 11: Detecção de ataques em Backbones IP através do Netflow - Claus Rugani Töpke - 23/09/2001 -1 Detecção de ataques em Backbones IP através do Netflow Autor:

Detecção de ataques em Backbones IP através do Netflow - Claus Rugani Töpke - 23/09/2001 - 11

O funcionamento do Netflow (com NetFlow)

Page 12: Detecção de ataques em Backbones IP através do Netflow - Claus Rugani Töpke - 23/09/2001 -1 Detecção de ataques em Backbones IP através do Netflow Autor:

Detecção de ataques em Backbones IP através do Netflow - Claus Rugani Töpke - 23/09/2001 - 12

Funcionamento do Netflow (quando exportar ?)

tabela cachede fluxos

Exportação

Para ocoletor

1 - Tabela cheia;2 - Tempo grande do fluxo (default 30min);3 - Tempo inativo grande (default 15s);4 - Identificação do final do fluxo (TCP FIN ou RST);

http://www.cisco.com/univercd/cc/td/doc/cisintwk/intsolns/netflsol/nfwhite.htm

TabelaBGP

Page 13: Detecção de ataques em Backbones IP através do Netflow - Claus Rugani Töpke - 23/09/2001 -1 Detecção de ataques em Backbones IP através do Netflow Autor:

Detecção de ataques em Backbones IP através do Netflow - Claus Rugani Töpke - 23/09/2001 - 13

Funcionamento do Netflow (quando exportar ?)

Page 14: Detecção de ataques em Backbones IP através do Netflow - Claus Rugani Töpke - 23/09/2001 -1 Detecção de ataques em Backbones IP através do Netflow Autor:

Detecção de ataques em Backbones IP através do Netflow - Claus Rugani Töpke - 23/09/2001 - 14

Funcionamento do Netflow (tipos de fluxos exportados)

*

* - Linha Catalyst

Page 15: Detecção de ataques em Backbones IP através do Netflow - Claus Rugani Töpke - 23/09/2001 -1 Detecção de ataques em Backbones IP através do Netflow Autor:

Detecção de ataques em Backbones IP através do Netflow - Claus Rugani Töpke - 23/09/2001 - 15

Funcionamento do Netflow (tipos de fluxos exportados)

Versão 1

Versão 5

~Versão 7(router shortcut)

Page 16: Detecção de ataques em Backbones IP através do Netflow - Claus Rugani Töpke - 23/09/2001 -1 Detecção de ataques em Backbones IP através do Netflow Autor:

Detecção de ataques em Backbones IP através do Netflow - Claus Rugani Töpke - 23/09/2001 - 16

Backbone IP

ConexãoFastEthernet

“clientes”

export flowUDP

UDP

MáquinaColetora

export flowUDP

PR

AR

“clientes”

BackboneB

AR

BackboneA

Funcionamento do Netflow (método de envio dos fluxos)

Page 17: Detecção de ataques em Backbones IP através do Netflow - Claus Rugani Töpke - 23/09/2001 -1 Detecção de ataques em Backbones IP através do Netflow Autor:

Detecção de ataques em Backbones IP através do Netflow - Claus Rugani Töpke - 23/09/2001 - 17

Implementação Utilizando Netflow

Identificação dos ataques

1- Fluxo (grande) para IP destino com média do tamanho dos pacotes pequeno ( <100 bytes );

2- Fluxo (grande) para IP destino com média do tamanho dos pacotes grande ( = 1500bytes);

3- Muitos fluxos com IP destino fixo e IP origem variando;

4- Muitos fluxos com IP destino fixo, IP origem fixo e portas destino variando;

5- Muitos fluxos com IP destino fixo, IP origem fixo e portas origem variando;

6- Assimetricidade grande de tráfego (fluxo de saída e entrada – pode se utilizar MIB Octets);

Page 18: Detecção de ataques em Backbones IP através do Netflow - Claus Rugani Töpke - 23/09/2001 -1 Detecção de ataques em Backbones IP através do Netflow Autor:

Detecção de ataques em Backbones IP através do Netflow - Claus Rugani Töpke - 23/09/2001 - 18

Implementação Utilizando Netflow

Identificação dos ataques

7- Assimetricidade dos fluxos ( fluxo de saída não corresponde a respostas do fluxo de entrada e vice-versa);

8- Tráfego maior que a capacidade do AL (necessário consulta a MIB do AR ou base de dados);

9- Tráfego ICMP ou SNMP excessivo (necessário avaliar histograma de protocolos);

10- Tráfego de uma porta UDP ou TCP (necessário avaliar histograma de portas);

11- TCP flags em estado anormal (SYN constante ou combinações estranhas)*;

* - Discussão das TCP Flags no Capítulo 8 do www.ravel.ufrj.br/~claus/Msc/tese.ps.gz

Page 19: Detecção de ataques em Backbones IP através do Netflow - Claus Rugani Töpke - 23/09/2001 -1 Detecção de ataques em Backbones IP através do Netflow Autor:

Detecção de ataques em Backbones IP através do Netflow - Claus Rugani Töpke - 23/09/2001 - 19

Implementação Utilizando Netflow

Construção básica de detector

- Tabela HASH:

- A chave pode ser:

- O IP destino;

- A rede destino (ver tabela IGP);

- As redes destino apontadas para o AR;

Page 20: Detecção de ataques em Backbones IP através do Netflow - Claus Rugani Töpke - 23/09/2001 -1 Detecção de ataques em Backbones IP através do Netflow Autor:

Detecção de ataques em Backbones IP através do Netflow - Claus Rugani Töpke - 23/09/2001 - 20

Implementação Utilizando Netflow

- PERL (fácil implementação/lento para hashes grandes);

- C++ ( rapidez utilizando maps e multimaps );

- C ( rapidez, necessário criar hash ou utilizar libliotecas);

Construção do detector

Page 21: Detecção de ataques em Backbones IP através do Netflow - Claus Rugani Töpke - 23/09/2001 -1 Detecção de ataques em Backbones IP através do Netflow Autor:

Detecção de ataques em Backbones IP através do Netflow - Claus Rugani Töpke - 23/09/2001 - 21

Implementação Utilizando Netflow

typedef struct {

uint32_t Pkts;

uint32_t Bytes;

ipv4addr_t Router;

ipv4addr_t SrcIP;

uint16_t DstPort;

uint16_t SrcPort;

uint16_t IfIndexSrc;

uint16_t IfIndexDst;

uint8_t Proto;

uint16_t Asn;

} CrtTblType, *CrtTblTypePtr ;

typedef map<ipv4addr_t, CrtTblType> CrtTblMap;

CrtTblMap ExampleCrtTbl;

Utilizando C++

Page 22: Detecção de ataques em Backbones IP através do Netflow - Claus Rugani Töpke - 23/09/2001 -1 Detecção de ataques em Backbones IP através do Netflow Autor:

Detecção de ataques em Backbones IP através do Netflow - Claus Rugani Töpke - 23/09/2001 - 22

Implementação Utilizando Netflow

Tamanho do pacote para a rede destino (resposta 10minutos)

Tráfego em bytes para a rede destino (resposta 1minutos)

Fluxos por IP destino (resposta 1minutos)

Tráfego em pacotes para a rede destino (resposta 1minutos)

Problema => muitas vezes o fluxo tem que acabar para ser exportado...

Tempo de resposta

Page 23: Detecção de ataques em Backbones IP através do Netflow - Claus Rugani Töpke - 23/09/2001 -1 Detecção de ataques em Backbones IP através do Netflow Autor:

Detecção de ataques em Backbones IP através do Netflow - Claus Rugani Töpke - 23/09/2001 - 23

Conclusões, Perguntas e Discussões

Page 24: Detecção de ataques em Backbones IP através do Netflow - Claus Rugani Töpke - 23/09/2001 -1 Detecção de ataques em Backbones IP através do Netflow Autor:

Detecção de ataques em Backbones IP através do Netflow - Claus Rugani Töpke - 23/09/2001 - 24

http://www.pdos.lcs.mit.edu/thomer/mit/multops_usenix2001.pdf

http://www.net.ohio-state.edu/security/talks/2000-02-09_ddos-and-netflow_oartech/oartech.pdf

Referências

http://www.cisco.com/univercd/cc/td/doc/product/software/ios121/121newft/121t/121t5/tms.htm

http://www.cisco.com/univercd/cc/td/doc/product/software/ios122/122cgcr/fswtch_c/swprt1/xcfcefc.htm

http://www.hpovua.org/PUBLICATIONS/PROCEEDINGS/8_HPOVUAWS/Papers/Paper02.4-Kotsokalis-Router.pdf

http://www.switch.ch/tf-tant/floma/frankfurt/floma.html

ftp://ftp.ee.lbl.gov/papers/bpf-usenix93.ps.Z