A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

FIREWALLS Edgard Jamhour.

Apresentações semelhantes


Apresentação em tema: "FIREWALLS Edgard Jamhour."— Transcrição da apresentação:

1 FIREWALLS Edgard Jamhour

2 Riscos a Segurança de uma Rede
Invasão Invasão sniffing FILTRO Os tipos de ameaças mais comuns a segurança de uma rede são: Invasão de Rede (Network Intrusion) Invadir uma rede significa conseguir a senha de alguma máquina da rede, como por exemplo de um servidor. Após descobrir a senha o invasor pode instalar programas e assumir o controle da máquina utilizando programas de acesso remoto como telnel. A invasão é feita descobrindo-se a senha por sniffing, ou usando algum “furo” escondido do sistema operacional. IP Address Spoofing O Spoofing de IP consiste em instalar um programa num computador que faça com que ele gere pacotes cujo IP de origem não é o seu. Normalmente, o “falso IP” representa algum IP que é aceito pelo filtro de pacotes da rede que se deseja atacar. Packet Sniffing A ação de “Sniffing” é feita desabilitando o filtro de endereços MAC de uma placa de rede Ethernet. A partir desse momento a placa passa a escutar todos os quadros de outros computadores que estejam no mesmo HUB. spoofing

3 Tipos de Ameaças a Segurança de uma Rede
Invasão de Rede (Network Intrusion) Alguém de fora acessa a uma máquina da rede com poderes de administrador. A invasão é feita descobrindo-se a senha ou usando algum “furo” escondido do sistema operacional. IP Address Spoofing Alguém da rede externa se faz passa por um IP da sua rede interna. Packet Sniffing Escuta do tráfego local que se propaga pela Ethernet.

4 Camada Física e Enlace de Dados
Tecnologias de Redes Locais, como Ethernet, funcionam com broadcast físico, o que permite fazer sniffing na rede. Se a interface do computador for colocada em modo promíscuo, a informação pode ser facilmente interceptada destino origem Muitos problemas de segurança decorrem do princípio de funcionamento dos protocolos de enlace. A maioria dos protocolos de enlace utilizados com redes TCP/IP trabalha com um meio compartilhado, isto é, pelos mesmos meios físicos trafegam informações de usuários diferentes. Cabe a interface de rede descartar os quadros de acordo com o endereço físico de destino encontrado no cabeçalho dos quadros. Este é o caso típico do protocolo Ethernet. Neste caso, a ação de sniffing é feita simplesmente reprogramando a interface de rede para que ela não descarte os quadros enviados para outros destinatários. A proteção da rede contra sniffing pode ser feita evitando a difusão de quadros através de um dispositivo de comutação como o Switch. O switch evita a difusão de quadros para computadores que não são os destinatários da informação. Conseqüentemente, um computador fazendo sniffing não consegue ouvir os quadros de computadores que estejam conectados as outras portas. No caso extremo em que utiliza-se apenas um computador por porta de Switch, o sniffing é completamente eliminado. Se for utilizado mais de um computador por porta de switch, através de um HUB, então o computador efetuando sniffing escutará apenas os quadros dos computadores que estiverem conectados no mesmo HUB que ele. MAC MAC MAC sniffing

5 Switch: Isolando Domínios de Colisão
Packet sniffing pode ser combativo de duas formas: com criptografia e com switches. Os computadores que estão conectados a portas isoladas de um switch são imunes a sniffing. Mesmo domínio de broadcast SWITCH Não há possibilidade de sniffing HUB HUB A B C D E F G

6 FTP, SMTP, HTTP, Telnet, SNM, etc. Ethernet, Token Ring, FDDI, etc
Filtragem de Pacotes A filtragem de pacotes é feita com base nas informações contidas no cabeçalho dos protocolos. Aplicações Seqüência de empacotamento Protolco de Aplicação FTP, SMTP, HTTP, Telnet, SNM, etc. aplicação TCP, UDP A filtragem de pacotes é feita com base nas informações introduzidas no cabeçalho dos protocolos da arquitetura TCP/IP. Observe que, na transmissão, cada camada introduz o seu próprio cabeçalho na estrutura de dados recebida da camada superior. Na recepção o processo contrário acontece, isto é, cada camada retira o seu cabeçalho antes de passar a estrutura de dados para camada superior. Os filtros de pacotes trabalham com as estruturas de dados correspondentes a camada de rede (denominados pacotes ou datagramas). Os pacotes contêm basicamente três tipos de informação: o cabeçalho de rede e, em alguns casos, o cabeçalho de transporte e aplicação. Deve-se observar que, dependendo da mensagem transmitida, nem todos os protocolos são utilizados. Por exemplo, uma mensagem ICMP não utiliza os protocolos de transporte e aplicação. Os filtros de pacotes trabalham basicamente com as informações das camadas de rede e transporte. Como veremos adiante, a camada de aplicação é utilizada pelos gateways de aplicação (servidores proxy). transporte IP rede Data Link Ethernet, Token Ring, FDDI, etc enlace Tecnologia heterogênea Física física

7 Implementação Física No software do Roteador: screening routers
No software de uma estação dedicada (um PC com duas placas de rede). ROTEADOR REDE INTERNA REDE EXTERNA Os filtros de pacote são implementados no ponto de conexão entre a rede interna e a rede externa. Esse ponto é geralmente um roteador, mas pode-se utilizar também um computador com duas placas de rede. Os roteadores que executam a função de filtragem de pacotes são denominados "screening routers". A maioria dos roteadores comerciais modernos traz embutida a função de filtragem de pacotes. Existem também muitos produtos comerciais que permitem utilizar um computador com duas placas de rede como filtro de pacotes. A configuração do filtro de pacotes é feita através de um conjunto de regras de filtragem que definem a política de segurança da empresa em relação a conectividade com o mundo externo. O formato das regras de filtragem é do tipo: Se CRITÉRIO satisfeito então AÇÃO. A ação ser do tipo ACEITAR ou REJEITAR (o pacote). O critério especifica as condições que a ação deve ser implementada. Os critérios são estabelecidos em função das informações encontradas no cabeçalho dos pacotes. FIREWALL PERSONAL FIREWALL ROTEADOR REDE INTERNA REDE EXTERNA FIREWALL

8 Exemplo Roteadores Cisco PIX Firewall Firewall Roteador Proxy
Detetor de ataques (SMTP, etc) Defesa contra fragmentação de IP Implementa VPN com IPsec Mais de 256K sessões simultâneas.

9 Exemplo Implementação por Software Check Point Firewall
Interface Gráfica Módulo de Firewall Módulo de Gerenciamento Mútiplas Plataformas Windows, Solaris, Linux, HP-UX, IBM AIX Controle de Segurança e Qualidade de Serviço.

10 Segurança na Camada IP = Roteamento Seletivo
Bloquear pacotes destinados a uma rede diferente de X REDE X REDE X Filtro Bloquear pacotes recebidos de uma rede diferente de X Roteador Roteador Roteador

11 Filtragem de Pacotes Interface interna
As principais informações utilizadas para criar regras de filtragem são listadas a seguir:  a) No cabeçalho do protocolo IP analisa-se os endereços IP de origem e destino. Analisa-se também o tipo de protocolo, que é um campo no cabeçalho IP que identifica o tipo de informação transportada pelo pacote. Por exemplo: TCP (0x06), UDP (0x11) ou ICMP (0x01). b) No caso do ICMP (mensagens para testar conexões de rede) analisa-se o tipo de mensagem. O ICMP é um exemplo onde não existe protocolo de transporte, isto é, não há uma porta associada a este protocolo. c) No cabeçalho do protocolo de transporte (TCP ou UDP) analisa-se o endereço das portas de origem ou destino. Para o protocolo TCP, utiliza-se também a informação do bit ACK, que indica o estabelecimento de uma conexão TCP (ACK = 0 indica o pedido de abertura de conexão). d) De modo geral, pode-se utilizar também padrões de bits no corpo ou cabeçalho do pacote. Esse método genérico permite associar regras a seqüências especiais de bits que apareçam em qualquer parte do pacote. Interface interna O roteamento ou rejeição de pacotes é feito de acordo com a política de segurança da empresa. screening router Interface externa Internet

12 Exemplos de Objetivos do Roteamento Seletivo
Bloquear todas as conexões que chegam de um sistema externo da rede interna, exceto conexões SMTP. Liberar conexões externas apenas para uma máquina específica da rede (e.g. servidor Web). Permitir aos usuários internos iniciarem conexões de Telnet com o meio externo, mas não o contrário. Liberar acesso a Internet apenas para algumas máquinas da rede interna.

13 Regras de Filtragem Recebe pacote Analisa Cabeçalho S OK para
encaminhar? Encaminhar Pacote Uma informação muito importante para construção das regras de filtragem é o sentido do pacote, isto é, se ele está entrando ou saindo da rede interna. As regras são definidas de maneira independente para os pacotes que entram e saem da rede. Alguns roteadores permitem definir as regras isoladamente para cada porta, assumindo também que cada porta controla apenas os pacotes que entram no roteador. As regras do filtro de pacotes são avaliadas em seqüência, sendo que a primeira regra que for satisfeita, independentemente de haver outras regras na seqüência, define a ação sobre o pacote. Em geral as regras mais especificas devem ser colocadas primeiro e as regras mais genéricas por último. Existem duas estratégias básicas para construir as regras de filtragem: a) O que não for proibido é permitido - Utilizar regras específicas no início do tipo bloquear. - A última regra é do tipo permitir tudo. b) O que não for permitido é proibido - Utiliza regras específicas no início do tipo permitir. - A última regra é do tipo proibir tudo. N Precisa para bloquear? S Bloquear Pacote N S Última Regra? N

14 Rede Interna Confiável Rede Externa Não -Confiável
Exemplo AÇÃO permitir negar INTERFACE 1 (sair) 2 (entrar) * IP ORIGEM : * IP DESTION * : Interpretação: Geralmente, as regras são definidas individualmente para cada interface. Cada interface controla apenas os pacotes que entram no roteador. Rede Interna Confiável Rede Externa Não -Confiável INTERFACE 1 INTERFACE 2

15 Filtragem com base nas Portas TCP e UDP
As informações introduzidas no cabeçalho de controle dos protocolos TCP e UPD permitem identificar o tipo de serviço executado na Internet. Essa característica permite estabelecer regras diferenciadas para cada tipo de aplicação executada na Internet, ou numa Intranet. Por exemplo, é possível estabelecer regras de segurança que se aplique somente ao serviço de ftp ou somente ao serviço de telnet. É comum dentro do processo de contrução das políticas de segurança de uma empresa que certas aplicação sejam permitidas e outras não. Em filtros de pacotes, as aplicações são identificadas pela porta do protocolo de transporte (números inteiros entre 0 e 65535). Em comunicações cliente-servidor em redes TCP/IP, o servidor utiliza uma porta padronizada pela IANA (The Internet Assigned Numbers Authority). Essas portas são denominadas "portas bem conhecidas", pois a IANA atribui uma porta de servidor para cada serviço padronizado para redes TCP/IP. Por exemplo, a porta 80 é utilizada para o serviço de HTTP. A porta do cliente é geralmente a primeira porta livre, com número acima de 1023, escolhida pelo sistema operacional do próprio cliente. Deve-se observar, todavia, que isto é apenas uma convenção. Na prática, nada implede de se programar um cliente numa porta abaixo de 1024 ou um servidor acima de De fato, os servidores que não são aplicações padronizadas para Internet, como os servidores de banco de dados, utilizam portas acima de 1023. datagrama PORTA DE DESTINO PORTA DE ORIGEM DADOS

16 Portas bem Conhecidas …. 1023 1024 …. 65535
…. 1023 Portas Bem conhecidas (well known ports): Função padronizada pela IANA (The Internet Assigned Numbers Authority) Geralmente usada pelos servidores de serviços padronizados. Portas livres: Usadas pelos clientes e pelos serviços não padronizados PORTAS TCP ou UDP 1024 …. 65535

17 Exemplos de portas bem conhecidas
Observe que a combinação de portas e endereços IP de origem e destino permite implementar as políticas de segurança de maneira bastante flexível. Por exemplo, a Tabela acima exprime o conjunto de regras que permite que usuários da rede interna acessem recursos externos usando o protocolo de aplicação HTTP(porta 80), mas proíbe que qualquer computador externo inicie uma conexão com um computador interno. A tabela com as regras de filtragem mostra uma coluna denominada FLAG ACK. O flag ACK é um bit contido no cabeçalho do protocolo TCP. A função básica do flag ACK é detectar um tipo de ataque no qual um cliente se faz passar por um servidor para enganar o filtro de pacotes. Por exemplo, um cliente pode fazer uma conexão escolhendo a porta TCP 80, para se fazer passar por um servidor HTTP. Neste caso, se houver uma regra de filtragem permitindo a entrada de pacotes TCP na rede este cliente externo poderá tentar fazer uma conexão com qualquer computador da rede interna.

18 Exemplo de Regras de Filtragem
ação interface/ sentido protocolo IP origem destino Porta Flag ACK 1 aceitar rede interna/ para fora TCP interno externo > 1024 80 *[1] 2 rede externa/ para dentro > 1023 3 rejeitar * [1] O símbolo "*" indica que qualquer valor é aceitável para regra.

19 Problema:Spoofing de Porta
Como diferenciar um ataque externo de uma resposta solicitada por um usuário interno? 1024 80 80 1024 Para compreender como o problema de spoofing de porta é importante, considere o seguinte exemplo. Uma empresa implantou um firewall para proteger sua rede corporativa. De acordo com a política de segurança da empresa, apenas os computadores da rede interna poderiam acessar servidores Web externos (porta TCP 80) mas todos os demais acessos estavam proibidos. Para permitir que clientes acessem servidores Web externos é necessário: a) Permitir a saída de pacotes cuja porta de destino seja 80 (a solicitação do cliente). b) Liberar a entrada de pacotes cuja porta de origem seja 80 (a resposta do servidor). c) Todos os demais pacotes são proibidos. Um cliente externo, conhecendo a regra “b” pode criar uma conexão utilizando a porta 80 como origem. Dessa maneira, os pacotes por ele transmitidos entrarão na rede como se fossem respostas de um servidor Web. Utilizando este artifício ele poderia tentar abrir conexões com computadores da rede interna, utilizando um serviço como TELNET (porta 23), por exemplo. Como evitar que a porta 80 seja usada para atacar usuários internos? É necessário liberar pacotes com porta de origem 80 para que a resposta possa passar . 80 23 ...

20 Característica da Comunicação TCP
Comunicação bidirecional, confiável e orientada a conexão. O destino recebe os dados na mesma ordem em que foram transmitidos. O destino recebe todos os dados transmitidos. O destino não recebe nenhum dado duplicado. O protocolo TCP rompe a conexão se algumas das propriedades acima não puder ser garantida.

21 Flags TCP RES: Reservado (2 bits) URG: Urgent Point ACK: Acknowlegment
PSH: Push Request RST: Reset Connection SYN: Synchronize Seqüence Number FIN: Mais dados do transmissor RES: Reservado (2 bits) URG: Urgent Point ACK: Acknowlegment No caso do protocolo TCP, o problema do spoofing de porta pode ser facilmente evitado. O protocolo TCP é orientado a conexão, por isso, existe uma sequencia bastante rígida para determinar a troca de informações entre um cliente e um servidor, conhecida como “tree hand handshaking”. A seqüência é a seguinte: O cliente envia para o servidor um pacote com o flag ACK=0 solicitando a abertura de uma conexão. O servidor responde ao pedido de conexão enviando para o cliente um pacote com o flag ACK=1. O cliente confirma a conexão enviando para o servidor um pacote com flag ACK=1. Após o estabelecimeto da conexão o cliente e o servidor se comunicam enviando pacotes com ACK=1. O cliente pode efetuar muitas requisições dentro de uma única conexão TCP. Isto acontece por exemplo quando o usuário carrega uma página HTML com várias figuras. A página e cada figura são solicitadas através de pacotes diferentes enviados do cliente para o servidor. Todos esses pacotes utilizam ACK=1. Resumindo, apenas o pacote de pedido de conexão utiliza ACK=0. Para evitar o spoofing de porta, basta filtrar a entrada de pacotes com o flag ACK=0. Isto faz com que seja impossível para um computador externo abrir uma conexão com algum computador interno. Os computadores externos só podem enviar pacotes dentro de conexões TCP iniciadas por clientes internos.

22 Flag ACK Uma conexão TCP sempre se inicia com o cliente enviando um pacote com o flag ACK= 0. ACK=0 ACK=1 ACK=1 ACK=1 ... tempo tempo

23 Filtragem com Protocolo UDP
Comunicação bidirecional, sem nenhum tipo de garantia. Os pacotes UDP podem chegar fora de ordem. Pode haver duplicação de pacotes. Os pacotes podem ser perdidos. Cada pacote UDP é independente é não contém informações equivalentes ao flag ACK dos pacotes. O protocolo UDP, ao contrário do TCP, não possui funções de conexão. Isto significa que os pacotes de dados são trocados entre os computadores sem que haja necessidade de estabelecimento de uma conexão. No protocolo UDP não existe um equivalente ao flag ACK, não sendo possível diferenciar um cliente de um servidor utilizando apenas as informações do protocolo. Isto faz com que seja muito difícil evitar ataques por spoofing de porta. Por exemplo, um servidor DNS funciona na porta UDP 53. Para que seja possível aos clientes internos consultares servidores UDP externos é necessário liberar na rede a entrada de datagramas UDP com a porta de origem 53. Isto permite que qualquer computador externo, escolhendo a porta 53 como origem, consiga infiltrar datagramas dentro da rede interna, atravessando a proteção oferecia pelo filtro de pacotes.

24 Mensagem UDP As mensagens UDP não possuem flags de controle pois o protocolo UDP não oferece a mesma qualidade de serviço que o protocolo TCP.

25 Dynamic Packet Filtering com UDP
Para poder criar regras sobre quem inicia uma comunicação no protocolo UDP, os roteadores precisam se lembrar das portas utilizadas. :1025 >>> :53 É possível, contudo, oferecer uma certa proteção contra ataques de porta feitos sobre o protocolo UDP. Os dispositivos capazes de efetuar esta proteção são denominados “filtros de pacotes dinâmicos”. O nome dinâmico está relacionado a maneira como as regras de filtragem são criadas automaticamente pelo dispositivo, de acordo com o histórico dos datagramas que trafegaram pela rede. O princípio adotado por estes dispositivos é relativamente simples: “ Só é permitida a entrada na rede de datagramas que sejam respostas a perguntas feitas anteriormente por computadores internos”. Por exemplo, um datagrama emitido pela porta B de um computador externo IPB e destinado a porta A de um computador interno IPA só pode entrar na rede se, anteriormente, um datagrama originário da porta A do computador IPA foi emitido para a porta B do computador IPB. Este processo não é infalível, mas dificulta consideravelmente a entrada de pacotes indesejados na rede. A dificuldade deste método é que a regra deve ser removida após um período relativamente curto. Como é difícil determinar quanto tempo a resposta pode demorar, pode-se filtrar indevidamente datagramas legítimos. :53 >>> :1025 :53 >>> :1026 :53 >>> :1025 ... tempo tempo

26 Regras para Filtragem de Pacotes
Implementação: Analisar o cabeçalho de cada pacote que chega da rede externa, e aplicar uma série de regras para determinar se o pacote será bloqueado ou encaminhado. ESTRATÉGIAS A) TUDO QUE NÃO É PROIBIDO É PERMITIDO. B) TUDO QUE NÃO É PERMITIDO É PROIBIDO.

27 Exemplo: TUDO QUE NÃO É PERMITIDO É PROIBIDO
Ação permitir negar Direção Sair Entrar * Protocolo tcp * IP Origem interno * IP Destino * interno Porta Origem > 1023 23 * Porta Destino 23 > 1023 * ACK * 1 Interpretação: Hosts Internos podem acessar servidores de telnet internos ou externos. Hosts externos podem apenas responder a requisições, não podem iniciar um diálogo (estabelecer uma conexão). A maneira mais comum de implementar regras de filtragem é adotar a estratégia: “TUDO QUE NÃO É PERMITIDO É PROIBIDO” Esta estratégia tira proveito da maneira como as regras são avaliadas num filtro de pacotes: “A primeira regra que for satisfeita, seja para bloquear o permitir, define a ação sobre o pacotes. Dessa forma, a estratégia pode ser implementada colocando uma regra genérica do tipo “BLOQUEAR TUDO” como sendo a última regra da lista de regras do filtro de pacotes. As regras anteriores são todas do tipo permitir, e devem ser bastante específicas, como mostra a tabela acima.

28 Regras de Filtragem Recebe pacote Analisa Cabeçalho S OK para
encaminhar? Encaminhar Pacote N Precisa para bloquear? S Bloquear Pacote N S Última Regra? N

29 Exemplo 1 2 ?.?.?.? INTERFACE 1 INTERFACE 2 >1023 >1023 23 Ação
INTERNET ? ?.?.?.? Ação permitir negar Protocolo tcp * IP Origem :24 Porta Origem > 1023 IP Destino Porta Destino 23 ACK INTERFACE 1 Alguns tipos de filtros de pacotes adotam a estratégia de definir um conjunto de regras independente para cada uma de suas interfaces. Nessa estratégia, adota-se a seguinte convenção: “As regras de filtragem se aplicam apenas aos pacotes que entram dentro do roteador, e não aos que saem”. Por exemplo, na figura acima, a interface 1 do roteador controla apenas os pacotes que saem da rede interna na direção da Internet, e a interface 2 controla apenas os pacotes que entram na rede interna vindos pela Internet. Observe o uso do flag ACK nas duas tabelas. Na interface 1, o flag Ack pode assumir qualquer valor, pois deve-se permitir que clientes internos enviem pacotes com solicitação de abertura de conexão para servidores externos (ACK=0) e pacotes de dados (ACK=1). Já na interface 2 apenas os pacotes com ACK=1 são permitidos, envitando que computadores externos abram conexão com computadores internos. As regras podem ser definidas também na forma de uma única tabela. Neste caso é necessário incluir a informação de sentido nos pacotes. A implementação em roteadores utiliza geralmente uma tabela para cada interface e a implementação por software em computadores utiliza o conceito de sentido. INTERFACE 2 Ação permitir negar Protocolo tcp * IP Origem Porta Origem 23 IP Destino :24 Porta Destino > 1023 ACK 1

30 Exemplo Interpretação:
permitir negar Direção Out In * Protocolo tcp * IP Origem interno * IP Destino * interno Porta Origem > 1023 23 80 * Porta Destino 23 > 1023 80 * ACK * 1 Interpretação: Hosts Internos podem acessar servidores de telnet internos ou externos. Hosts externos podem acessar servidores de web internos.

31 Seqüência de Criação de Regras
A seqüência na qual as regras são aplicadas pode alterar completamente o resultado da política de segurança. Por exemplo, as regras de aceite ou negação incondicional devem ser sempre as últimas regras da lista. O deslocamento de uma regra genérica para cima anula as demais. A seqüência em que as regras de filtragem são definidas influenciam o resultado final do filtro de pacotes. Uma estratégia simples para definir as regras de filtragem sem depender da ordem em que elas são criadas é adotar a política: “TUDO QUE NÃO É PERMITIDO É PROIBIDO.” Nesta política, todas as regras de filtragem são do tipo permitir, e a última regra é do tipo proibir tudo. Nessa estratégia, as regras do tipo permitir podem ser colocadas em qualquer posição sem alterar o resultado total da filtragem. Neste caso, as regras que tem maior chance de serem satisfeitas devem ser colocadas por primeiro apenas por uma questão de desempenho do filtro de pacotes. Se todavia, forem misturadas regras do tipo permitir e proibir, então a ordem das regras pode alterar completamente o resultado da filtragem. Neste caso, as regras mais específicas deverão ser colocadas sempre antes das regras mais genéricas. Dependendo da quantidade de regras, os filtros de pacotes podem limitar a quantidade de tráfego trocada entre a rede interna e a rede externa. Em geral, quanto mais rápido for o link com a Internet, menos tempo o roteador tem para decidir se um pacote pode ser transmitido ou não. A tabela acima (a direita) ilustra quanto tempo um roteador tem para decidir sobre a transmissão ou não de um pacote na medida em que os links são de maior velocidade. Observe que para links superiores a 100 Mbps, os filtros de pacotes são impraticáveis. Ação permitir negar Direção Out In * Protocolo tcp * IP Origem interno * IP Destino * interno Porta Origem > 1023 23 * Porta Destino 23 > 1023 * ACK * 1

32 Desempenho do Filtro de Pacotes
O processo de filtragem de pacotes exige que um certo processamento adicional seja executado pelo roteador para cada pacote que chega ou precisa ser transmitido. Dependendo da velocidade da linha de transmissão, esse processamento pode ou não causar uma degradação do desempenho da rede. Conexão 56 Kbit/s 2 Mbit/s 10 Mbit/s 100 Mbit/s 1Gbit/s Pacotes/s (20 bytes) 350 12500 62500 625000 Tempo disponível 2.86 ms 80 s 16 s 1.6 s 0.16 s Ciclos CPU 100 MHz 286000 8000 1600 160 16

33 Exercício 1 ?.?.?.? >1023 TCP 80 TCP 25 UDP 53 TCP 80 TCP 25 UDP 53
>1023 INTERNET AÇÃO INTERFACE PROTOCOLO IP ORIGEM IP DESTINO PORTA ORIGEM PORTA DESTINO FLAG ACK ?.?.?.? TCP 80 TCP 25 UDP 53 TCP 80 TCP 25 UDP 53

34 Exercício 1 Defina as regras de filtragem implementar a seguinte política de segurança: Os computadores da rede Interna podem acessar qualquer servidor Web na Internet. Computadores da rede Externa podem acessar apenas o servidor Web da rede Interna. O servidor DNS interno deve poder se comunicar com outros servidores DNS na Internet. O servidor de interno deve poder se comunicar com outros servidores de da Internet. Todos os demais acessos são proibidos.

35 Exercício 1 AÇÃO INTERFACE PROTOCOLO IP ORIGEM IP DESTINO PORTA ORIGEM
PORTA DESTINO FLAG ACK

36 Arquiteturas de Filtros de Pacotes
Filtros de Pacotes são os principais componentes dos Firewalls. Estratégia de Firewall Filtros de Pacotes e Gateways de Aplicação O termo firewall é utilizado para designar o conjunto de proteções que controla a conectividade entre a rede interna e a rede externa. Os firewalls são constituídos basicamente por filtros de pacotes e servidores proxy. Esses elementos podem ser combinados de várias maneiras para constituir a segurança da rede. Alguns termos utilizados por fornecedores de produtos de firewall são bastante consagrados. Estes termos são definidos a seguir: Firewall: Um componente ou conjunto de componentes que restringem o acesso entre um rede protegida e a Internet, ou entre outro conjunto de redes. Host: Um computador conectado a rede. Pode ser tanto um cliente quanto um servidor. Bastion Host: Um computador que precisa ser altamente protegido, pois é suscetível a sofrer ataques. O bastion host é um computador exposto simultaneamente a Internet e a rede interna. O Bastion Host hospeda serviços que precisam necessariamente troca informações com a Internet, como por exemplo: proxy, servidor de ou servidor Web. Rede Interna Confiável Rede Externa Não -Confiável

37 A - Definições Firewall Host Bastion Host
Um componente ou conjunto de componentes que restringem o acesso entre um rede protegida e a Internet, ou entre outro conjunto de redes. Host Um computador conectado a rede. Bastion Host Um computador que precisa ser altamente protegido, pois é suscetível a sofrer ataques. O bastion host é um computador exposto simultaneamente a Internet e a rede interna.

38 Definições Dual-homed host Packet Packet Filtering (screening)
Qualquer computador com duas interfaces (placas) de rede. Packet Unidade fundamental de comunicação na Internet. Packet Filtering (screening) Controle seletivo do fluxo de dados que entra e sai de uma rede. A filtragem de pacotes é feita especificando um conjunto de regras que determinam que tipos de pacotes (baseados em IP e portas) são permitidos e que tipos devem ser bloqueados. Outros termos importantes utilizados na definição de arquiteturas de firewall são: Dual-homed host: Qualquer computador com duas interfaces (placas) de rede. Packet: Unidade fundamental de comunicação na Internet. Packet Filtering (screening): Controle seletivo do fluxo de dados que entra e sai de uma rede. A filtragem de pacotes é feita especificando um conjunto de regras que determinam que tipos de pacotes (baseados em IP e portas) são permitidos e que tipos devem ser bloqueados. Perimeter Network: Uma rede adicionada entre a rede protegida e uma rede externa, com o objetivo de proporcionar uma camada a mais de segurança. Também chamada de DMZ (De-Militarized Zone). NAT Router: Roteador que efetua troca de endereços IP adicionalmente a operação de roteamento. Um roteador NAT é utilizado para permitir que computadores com IP privados acessem a Internet. Proxy Server: Um programa que intermedia o contado de clientes internos com servidores externos. Desempenha uma função semalhante a um roteador NAT, mas é implementado como uma aplicação (um servidor de rede) e não como um roteador.

39 Definições Perimeter Network Proxy Server
Uma rede adicionada entre a rede protegida e uma rede externa, com o objetivo de proporcionar uma camada a mais de segurança. Também chamada de DMZ (De-Militarized Zone). Proxy Server Um programa que intermedia o contado de clientes internos com servidores externos.

40 B) Arquiteturas Básicas de Firewall
I) Dual-Homed Host com Proxy II) Filtragem Simples de Pacotes III) DMZ (Rede de Perímetro) Os firewalls podem ser implantados de várias maneiras. A arquitetura do firewall pode varia significativamente de acordo com o tipo de serviços existentes na rede, o grau de proteção que se deseja e os custos permitidos para implantação. Como exemplos de arquituras de firewall podemos considerar: Dual-Homed Host com Proxy Utiliza um computador com duas placas de rede para separar a rede Interna da rede Externa. Filtragem Simples de Pacotes Utiliza um filtro de pacotes para proteger os clientes da rede interna e liberar o acesso para alguns servidores que precisam se comunicar com a Internet. Rede de Perímetro (DMZ) Cria dois níveis de proteção, separando a rede corporativa em rede Interna e rede de perítmero. A rede Interna conté computadores que funcionam apenas como clientes da Internet. A rede de perímetro contém os computadores que funcionam como servidores de Internet.

41 Proteção por Tipos de IP
IP’s públicos Tem acesso a qualquer serviço na Internet. Podem ser protegidos por firewalls: Filtragem Simples de Pacotes ou DMZ. IP’s privados São naturalmente protegidos de acessos externos. Elementos são colocados na rede para permitir o seu acesso a serviços disponíveis na Internet.

42 I) Dual-Homed com Proxy
Hosts Internos Rede com IP’s Privados IP privado Interface interna Proxy Bastion Host Nessa configuração um computador com duas placas de rede (Dual Hommed Host) intermedia todas as comunicações entre a rede interna e a rede externa. O roteamento entre as duas placas de rede deve estar desabilitado, impedindo que qualquer tipo de acesso direto seja feito aos computadores da rede interna. Recomenda-se também que os computadores internos usem endereços privados. O computador que hospeda o proxy deve hospedar também os serviços que dependam de acesso direto ao mundo exterior, como servidor Web e servidor de correio eletrônico, entre outros. Por essa razão esse computador também é denominado "Bastion Host". A principal desvantagem dessa configuração é a limitação imposta aos serviços disponibilizados para os usuários da rede interna. Essa arquitetura também é pouco escalonável, pois muitos serviços devem ser concentrados no mesmo computador. O termo bastion host é utilizado para designar o computador que fica desprotegido pelo firewall, por razões funcionais. Esse computador hospeda os serviços que dependem de contato direto com o mundo exterior e por isso é o computador da rede com maior risco de sofrer ataques do mundo externo. Uma outra configuração poderia consistir em utilizar computadores com IP’s privados e um roteador implementando NAT.A desvantagem neste caso, é a impossibilidade de incluir computadores com a função de servidores acessíveis pela Internet, como servidores de e servidores Web. Roteamento Desabilitado Dual-Homed Host Interface externa IP público INTERNET

43 Proteção com Roteador e NAT
Hosts Internos Rede com IP’s Privados IP privado Interface interna Firewall Roteamento Desabilitado Roteador com NAT Interface externa IP público INTERNET

44 II) Filtragem Simples Bastion Host Interface interna Interface externa
Host Interno Interface interna A Figura acima mostra uma configuração que utiliza filtragem de pacotes ao invés de proxy. Nessa configuração, um ou mais computadores da rede desempenham a função de "Bastion Host". O filtro de pacotes é configurado para liberar a abertura de conexões oriundas da rede externa apenas para o "Bastion Host". Os demais computadores da rede são protegidos pelo filtro de pacotes, que bloqueia pedidos de conexões oriundas do meio externo destinadas aos computadores da rede interna . Essa técnica não apresenta as limitações da arquitetura baseada em proxy, mas é menos segura. Se algum usuário interno conseguir instalar um programa no "Bastion Host" (que está vulnerável) ele pode acessar todos os demais computadores da rede, pois não existe proteção entre "Bastion Host" e os demais computadores da rede. Screening Router FIREWALL Interface externa INTERNET

45 Regras de Filtragem O bastion host é diferenciado dos demais computadores pelas regras do filtro de pacotes. No exemplo abaixo, o bastion host é o único computador que pode receber conexões externas. Todavia, o único serviço habilitado é o http. Ação permitir negar Direção Out In * Protocolo tcp * IP Origem interno * b.host IP Destino * interno b.host Porta Origem > 1023 * 80 Porta Destino * > 1023 80 ACK * 1

46 III) Rede de Perímetro (DMZ)
Host Interno Rede Interna Roteador Interno A Figura acima mostra uma das configurações mais populares para implementação de firewalls. Apesar de mais complexa, essa configuração elimina alguns problemas apresentados pelas configurações anteriores. O princípio dessa configuração consiste em dividir a rede em três zonas: a interna, uma intermediária e outra externa. A rede intermediária é denominada de "Zona Desmilitarizada" (DMZ - DeMilitarized Zone), pois nessa rede são colocados os computadores que desempenham a função de "Bastion Host", e portanto estão sujeitos a contato direto com o mundo externo. Ao contrário das configurações anteriores, a rede interna é protegida por um outro filtro de pacotes, que limita também o acesso da DMZ em relação a rede interna. Dessa forma, computadores da rede externa não poderão utilizar o "Bastion Host" como ponte para acessar a rede interna, aumentando significativamente a segurança da rede. Se desejado, pode-se também substituir o roteador interno por um servidor proxy, a fim de que a rede interna possa utilizar endereços não registrados. Bastion Host DMZ - Rede de Perímetro Roteador Externo Internet

47 Roteador Interno (Choke Router)
Protege a rede interna da rede externa e da rede de perímetro. É responsável pela maioria das ações de filtragem de pacotes do firewall. Ação permitir negar Direção Out In * Protocolo tcp * IP Origem interno * IP Destino * interno Porta Origem > 1023 * Porta Destino * > 1023 ACK * 1 EXEMPLO DE REGRAS PARA O CHOKE ROUTER

48 Roteador Externo (Access Router)
Protege a rede interna e a rede de perímetro da rede externa. Muitas vezes, a função o roteador externo está localizado no provedor de acesso. Em geral, utiliza regras de filtragem pouco severas. Uma outra alternativa para a rede de perímetro é atribuir IP’s privados para os computadores da rede Interna. Neste caso, o roteador interno (choke router) seria substituido por um roteador que implementa NAT ou por um servidor Proxy. Também é possível manter os dois roteadores com filtragem de pacotes e configurar o roteador choke router para permitir a saída dos clientes Internos apenas através de um servidor proxy implementado na rede de perímetro. A vantagem nesse caso, seria permitir que alguns clientes acessem a Internet diretamente e outros somente através do Proxy. Isto é necessário, pois, os servidores Proxy limitam dramaticamente os serviços de rede disponíveis para os usuários. A configuração DMZ se tornou muito popular, o que fez com que alguns fabricates disponibilizassem produtos que trazem os dois roteadores já configurados num único dispositivo (vendido como firewall). Este dispositivo é basicamente a configuração DMZ encapsulada num único bastidor, com três portas disponíveis: uma para rede Interna, uma para Internet e outra para a DMZ. Ação permitir negar Direção Out In * Protocolo tcp * IP Origem interno * dmz IP Destino * interno dmz Porta Origem > 1023 * Porta Destino * > 1023 ACK * 1 EXEMPLO DE REGRAS PARA O ACCESS ROUTER

49 Rede de Perímetro com Proxy
Hosts Internos Com IP’s Privados Rede Interna Servidor Proxy Bastion Host DMZ - Rede de Perímetro Roteador Externo Internet

50 EXERCÍCIO Hosts Interno Rede Interna I1 Roteador Interno Bastion Host REDE MASCARA GATEWAY INTERFACE DESCRIÇÃO Computadore da Rede Interna: Rede Local Computadore da Rede Interna: Internet Roteador Interno: Rede Intena Roteador Interno: DMZ Roteador Interno: Internet Bastion Host: Rede Interna Bastion Host: DMZ Bastion Host: Internet Roteador Externo: Internet Roteador Externo: DMZ Roteador Externo: Rede Interna I2 E1 DMZ - Rede de Perímetro Roteador Externo E2 Internet

51 DEFINIÇÃO DAS ROTAS Indique as Rotas que Devem Existir:
A) Computadores da Rede Interna B) Roteador Interno C) Bastion Host D) Roteador Externo

52 EXERCÍCIO Defina as regras para filtragem de pacotes dos roteadores da arquitetura DMZ para: A) Permitir aos computadores externos acessarem o serviço HTTP no bastion HOST. B) Permitir aos computadores externos acessar o serviço SMTP no bastion HOST. C) Permitir aos usuários internos acessarem o serviço POP, SMTP e HTTP no bastion HOST. D) Permitir aos usuários internos acessarem qualquer servidor HTTP externo. E) Proibir todos os demais acessos. AÇÃO INTERFACE PROTOCOLO IP ORIGEM IP DESTINO PORTA ORIGEM PORTA DESTINO FLAG ACK

53 Roteador Interno AÇÃO INTERFACE PROTOCOLO IP ORIGEM IP DESTINO
PORTA ORIGEM PORTA DESTINO FLAG ACK

54 Roteador Externo AÇÃO INTERFACE PROTOCOLO IP ORIGEM IP DESTINO
PORTA ORIGEM PORTA DESTINO FLAG ACK

55 Novas Tecnologias para Firewalls
PARTE 1: Stateful Inspection PARTE 2: IP Sec PARTE 3: Integração com Serviços de Diretório (LDAP)

56 Stateful Inspection As primeiras gerações de firewall eram ditos "stateless". Cada pacote é analisado individualmente, sem levar em conta pacotes anteriores trocados na mesma conexão. Os firewalls baseados em filtros de pacotes não olham o conteúdo dos protocolos de aplicação. Uma alternativa para os filtros de pacotes são os gateways de aplicação. Gateways de aplicação (Proxy) são "stateful": Isto é, eles guardam o estado das conexões inciadas pelos clientes. Alguns tipos de gateways de aplicação (Proxy) são capazes de analisar o conteúdo dos pacotes. Todavia, são dependentes da aplicação (não funcionam para aplicações desconhecidas) e tem baixo desempenho.

57 Filtro de Pacotes Usualmente implementado em roteadores.
São idependentes da aplicação (analisam apenas informações de IP e Porta). Tem alto desempenho.

58 Filtro de Pacotes: Problemas de Segurança
São stateless: Precisam liberar todas as portas de cliente (> 1023) para permitir uma comunicação FTP. Apenas duas opções: Ou libera-se todas as portas ou bloqueia-se o serviço todo.

59 Application Layer Gateways
Usualmente Implementados em Servidores. Duas versões: Dependentes de Aplicação Examinam o conteúdo dos pacotes, incluido os protoclos de aplicação. Não abrem as portas dos clientes. Socks Não precisa examinar o conteúdo.

60 Socks Proxy Aplicação Aplicação Sockets TCP UDP IP Socks WinSock
Um proxy pode ser configurado de duas maneiras: A) Em cada aplicação cliente Browser, FTP, etc. B) No sistema operacional Substituindo o driver de sockets. Neste caso, o cliente e o proxy conversam através de um protocolo denominado Socks. Este protocolo redireciona todos as informações transmitidas pelo cliente par ao Proxy, e inclui novos campos para identificar o destino das mensagens. Aplicação Aplicação Socks Sockets TCP UDP WinSock IP

61 Procolo Socks A versão corrente do protocolo SOCKs é 5.0
RFC1928: suporta TCP , UDP e autenticação As implementações atuais, entretanto, estão na versão 4 Suporta apenas TCP. Algumas soluções proprietárias suportam também ICMP. IP destino, Porta Destino CONNECT: IP_Destino, Porta_Destino, UserID PORTA Server PORTA Socks Proxy Cliente Socks

62 Application Layer Gateway Problemas de Desempenho
Quebram o esquema cliente-servidor (o proxy cria uma nova conexão para cada cliente). O número de sessões no Gateway é duplicado. Cada conexão mantém um processo no Proxy.

63 Stateful Inspection Tecnologia Desenvolvida pela CheckPoint.
Implementa o conceito de estado sem criar novas conexões no roteador. Um módulo de software analisa permanentemente o conteúdo dos pacotes que atravessam o firewall. As informações relevantes dos pacotes são armazenadas em tabelas dinâmicas para porterior uso. A decisão quanto a passagem ou não de um pacote leva em conta o conteúdo de pacotes anteriormente trocados na mesma conexão.

64 Stateful Inspection Para poder criar regras sobre quem inicia uma comunicação, o firewall armazena informações sobre as portas utilizadas pelo cliente. :1025 >>> :53 É possível, contudo, oferecer uma certa proteção contra ataques de porta feitos sobre o protocolo UDP. Os dispositivos capazes de efetuar esta proteção são denominados “filtros de pacotes dinâmicos”. O nome dinâmico está relacionado a maneira como as regras de filtragem são criadas automaticamente pelo dispositivo, de acordo com o histórico dos datagramas que trafegaram pela rede. O princípio adotado por estes dispositivos é relativamente simples: “ Só é permitida a entrada na rede de datagramas que sejam respostas a perguntas feitas anteriormente por computadores internos”. Por exemplo, um datagrama emitido pela porta B de um computador externo IPB e destinado a porta A de um computador interno IPA só pode entrar na rede se, anteriormente, um datagrama originário da porta A do computador IPA foi emitido para a porta B do computador IPB. Este processo não é infalível, mas dificulta consideravelmente a entrada de pacotes indesejados na rede. A dificuldade deste método é que a regra deve ser removida após um período relativamente curto. Como é difícil determinar quanto tempo a resposta pode demorar, pode-se filtrar indevidamente datagramas legítimos. :53 >>> :1025 :53 >>> :1026 :53 >>> :1025 ... tempo tempo

65 Stateful Inspection Analisa o conteúdo dos pacotes sem quebrar o modelo cliente servidor. A informação de estado é capturada quando o pacote através o firewall e armazenadas em tabelas dinâmicas.

66 Stateful Inspection Quando o cliente requisita um serviço FTP, o Firewall armazena a porta utilizada numa tabela dinâmica, não liberando nenhuma outra porta do cliente.

67 Segurança de Conteúdo Além das informações de portas, as informações de conteúdo também são utilizadas pelo Firewall. Normalmente, apenas os protocolos mais comuns são analisados. HTTP: Permite Filtrar: Métodos de acesso (GET, POST), URLs ("*.sk"), etc TAGS em HTML com referências a Applets em Java ou Objetos Active X. Dowload de certos tipos MIME. FTP: Permite Filtrar Comandos específicos (PUT, GET), Nomes de Arquivo Pode disparar antivirus para verificação de arquivos. SMTP: Permite criar regras de Filtragem baseadas Nos campos FROM e TO Tipo MIME Etc.

68 Integração com Métodos de Autenticação
Firewalls com Tecnlogia Stateful permitem criar regras de filtragem baseados no login do usuário ao invés do endereço IP. Estas técnicas simplificam o processo de criar regras de filtragem pois o usuário pode acesar o serviço independentemente da máquina que estiver usando. Esta tecnologia só é possível para firewalls "Stateful". Três métodos são usualmente disponíveis: User Authentication (transparente) Session Autentication Mapeamento Transparente do Usuário em Endereço

69 Integração com Métodos de Autenticação
User Authentication (transparente) Permite a usuário remoto acessar um serviço da rede independente do seu IP. O firewall reconhece o login do usuário analisando o conteúdo dos protocolos FTP, HTTP, TELNET e RLOGIN. Session Authentication Quando o usuário tenta acessar um serviço da rede o Firewall envia para o cliente um pedido de login (challange message). O cliente deve ter um software especial para confirmar a senha. Só então o acesso é permitido (ou negado).

70 Integração com Métodos de Autenticação
Mapeamento Transparente entre Usuário e Endereço O Firewall captura mensagens DHCP para as máquinas. O Firewall captura as mensagens de login trocadas entre o usuário e o servidores de domínio da rede. CHECK POINT, por exemplo, suporta as mensagens do Windows NT. O usuário não se loga no Firewall, o sucesso do login é identificado pelo Firewall também capturando as mensagens do servidor.


Carregar ppt "FIREWALLS Edgard Jamhour."

Apresentações semelhantes


Anúncios Google