1 / 76

IPsec: IP Seguro

IPsec: IP Seguro. Edgard Jamhour. IP Sec - IP Seguro. Padrão aberto baseado em RFC (IETF) . Comunicação segura em camada 3 (IPv4 e IPv6) Provê recursos de segurança sobre redes IP: Autenticação , Integridade e Confidencialidade Dois modos de funcionamento: Modo Transporte Modo Túnel

lacy
Download Presentation

IPsec: IP Seguro

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. IPsec: IP Seguro Edgard Jamhour

  2. IP Sec - IP Seguro • Padrão aberto baseado em RFC (IETF). • Comunicação segura em camada 3 (IPv4 e IPv6) • Provê recursos de segurança sobre redes IP: • Autenticação, Integridade e Confidencialidade • Dois modos de funcionamento: • Modo Transporte • Modo Túnel • Dois Protocolos (Mecanismos) • IPsec ESP: IP Encapsulating Security Payload (50) • IPsec AH: IP Autentication Header (51)

  3. Implementação do IPsec • IPsec pode ser implementado de três formas: • Como um driver • Reescrevendo-se o código do protocolo IP • Dispositivo externo "Bump-in-the-wire" (BITW) IP IPsec Driver IP/IPsec Nativo Enlace (Driver da Placa de Rede) Enlace (Driver da Placa de Rede) Sistemas Operacionais Roteadores

  4. Tipos de IPSec • IP Autentication Header (AH) • Oferece recursos de: • Autenticação • Integridade • IP Encapsulating Security Payload (ESP) • Oferece recursos de: • Confidencialidade • Autenticação • Integridade

  5. Modos de Utilização do IPsec • Modo transporte • Garante a segurança apenas dos dados provenientes das camadas superiores. • Utilizado geralmente para comunicação "fim-a-fim" entre computadores. • Modo tunel • Fornece segurança também para a camada IP. • Utilizado geralmente para comunicação entre roteadores.

  6. Modo Tunel e Transporte INTERNET Conexão IPsec em modo Transporte INTERNET Conexão IPsec em modo Túnel

  7. Modos de Utilização do IPsec Rede Confiável Rede não Confiável Rede Confiável Gateway Seguro Gateway Seguro Rede não Confiável Rede Confiável Host Gateway Seguro Rede não Confiável Host Host

  8. Modo AH • Definido pelo protocolo IP tipo 51 • Utilizando para criar canais seguros com autenticação e integridade, mas sem criptografia. • Permite incluir uma “assinatura digital” em cada pacote transportado. • Protege a comunicação pois atacantes não conseguem falsificar pacotes assinados.

  9. AH e Modo Túnel e Modo Transporte IPv4 IP Normal IP TCP/UDP DADOS IPv4 com autenticação IP AH TCP/UDP DADOS Modo Transporte IPv4 com autenticação e tunelamento IP AH IP TCP/UDP DADOS Modo Tunel Especifica os Computadores Especifica os Gateways nas Pontas do Tunnel

  10. Authentication Header • Provê serviços de autenticação e Integridade de Pacotes. 1 byte 1 byte 1 byte 1 byte Next Header Length reserved reserved SPI: Security Parameter Index Sequence Number Authentication Data (ICV: Integrity Check Value) Campo de Tamanho Variável, depende do protocolo de autenticação utilizado

  11. Campos do IPsec AH • Next Header: • Código do protocolo encapsulado pelo IPsec, de acordo com os códigos definidos pela IANA (UDP, TCP, etc ...) • Length: • comprimento do cabeçalho em múltiplos de 32. • Security Parameter Index: • identificador de 32 bits, com a SA compartilhada pelo transmissor e pelo receptor. • Authentication Data: • Código de verificação de integridade (ICV) de tamanho variável, depende do protocolo utilizado.

  12. Campos do IPsec AH • Sequence Number: • Numero incremental, que começa a contagem quando o SA é criada. • Permite que apenas 232-1 pacotes sejam transmitidos na mesma SA. Após esse número, uma nova SA deve ser criada. negociam SA e definem SPI SPI=deBparaA SPI=daAparaB. SPI=deAparaB SPI=deBparaA SPI=deAparaB e SN=1 Host B Host A SPI=deAparaB e SN=2 SPI=deBparaA e SN=1 ...

  13. Authentication Data • Para enviar um pacote: • O transmissor constrói um pacote com todos os campos IP e protocolos das camadas superiores. • Ele substitui todos os campos que mudam ao longo da transmissão com 0’s (por exemplo, o TTL) • O pacote é completado com 0’s para se tornar múltiplo de 16 bits. • Um checksum criptográfico é computado para concatenação: • Algoritmos: HMAC-MD5 ou HMAC-SHA-1 • MAC: Message Authentication Code

  14. Autenticação • Para receber um pacote: • O receptor utiliza o SPI para determinar qual o algoritmo a ser utilizado para validar o pacote recebido. • O receptor substitui os campos mutáveis por “0” e calcula o checksum criptográfico do pacote. • Se ele concordar com o checksum contido no cabeçalho do pacote de autorização, ele é então aceito. ICV Algoritmo de Integridade iguais? IP AH TCP/UDP DADOS ICV

  15. Negociação Diffie-Hellman • O IPsec utiliza a negociação Diffie-Hellman para criar uma chave de sessão (simétrica) entre os hosts da comunicação segura. • O protocolo Diffie-Hellman é composto de três fases: • Fase 1: • Cada host gera uma chave pública a partir de parâmetros pré-combinados (Diffie-Helman parameters) e um número aleatório secreto. • Fase 2: • Os hosts trocam as chaves públicas • Fase 3: • A chave de sessão é calculada a partir das chaves públicas e dos números aleatórios secretos.

  16. Algoritmo Diffie-Hellman • 1) Cada host obtém os parâmetros "Diffie-Hellman“ (podem ser hard-coded). • Um número primo 'p' (> 2) e uma base g (numero inteiro < p). • 2) Cada host gera um número privado X < (p – 1). • 3) Cada host gera sua chave pública Y: • Y = g^X % p • 4) Os hosts trocam as chaves públicas e calculam a chave secreta Z. • Zb = Ya^Xb % p e Za=Yb ^Xa % p • Matematicamente Z é idêntica para ambos os hosts: Za = Zb

  17. 3a. envia a chave pública Y para B 3b. envia a chave pública Y’ para A Diffie-HellMan 1. Segredo Pré-Compartilhado (um número primo e um número inteiro , podem estar no código) 2a. gera a chave pública Y a partir do segredo e de um número aleatório X. 2b. gera a chave pública Y’ a partir do segredo e de um número aleatório X’. A B 4b. gera a chave de sessão Z usando Y e X’ 4a. gera a chave de sessão Z usando Y’ e X

  18. lista de algorítmos desejados: MD5, SHA1 algoritmo aceito: SHA1 negociação Diffie-Hellman (chave de pública de A) negociação Diffie-Hellman (chave de pública de B) Identidade Criptografada (chave de sessão) Identidade Criptografada (chave de sessão) Negociação (Simplificada) B A SA associação de segurança (chave sessão + algoritmo) SPI SA associação de segurança (chave sessão + algoritmo) SPI Algoritmos SHA1 Algoritmos MD5 SHA1

  19. Associação de Segurança • SA: Associação de Segurança • Contrato estabelecido após uma negociação que estabelece como uma comunicação IPsec deve ser realizada. • Algoritmo de Autenticaçã/Criptografia • Chave de Sessão • SPI: Secure Parameter Index • Número inteiro (32 bits) que identifica um SA. • É transmitido junto com os pacotes IPsec para permitir ao destinatário validar/decriptografar os pacotes recebidos.

  20. assinatura comparação SPI=5 assinatura Algo SHA1 SPI=5 assinatura Algo SHA1 DADOS IP AH DADOS IP AH Transmissão dos Dados B A Quando transmitir para B use SPI=5 SPI=5 algo. SHA1 chave: xxxx SPI=5 algo. SHA1 chave: xxxx

  21. IP IP IP IP AH Modo Tunel e Transporte IPsec AH IPsec AH IPsec AH IPsec AH IPsec AH SA SA INTERNET Conexão IPsec em modo Transporte IPsec AH IPsec AH IPsec AH SA SA INTERNET Conexão IPsec em modo Túnel

  22. ESP IPSec : Tunel e Transporte MODO TRANSPORTE autenticado criptografado IP ESPHEADER TCP UDP DADOS ESP TRAILER ESP AUTH IP TCP UDP DADOS IP ESPHEADER IP TCP UDP DADOS ESP TRAILER ESP AUTH criptografado autenticado MODO TUNNEL

  23. Encrypted Security Payload Header • ESP provê recursos de autenticação, integridade e criptografia de pacotes. 1 byte 1 byte 1 byte 1 byte Security Parameter Index HEADER Sequence Number Encrypted Payload (dados criptografados) TRAILER Pad (0 – 255 bytes) Pad Length Next Header Authentication Data (tamanho variável) AUTH

  24. Campos do IPsec ESP • Header: • SPI e Sequence Number: Mesmas funções do AH • O algoritmo de criptografia pode ser qualquer, mas o DES Cipher-Block Chaining é o default. • Trailler: • Torna os dados múltiplos de um número inteiro, conforme requerido pelo algoritmo de criptografia. • O trailler também é criptografado. • Auth: • ICV (Integrity Check Value) calculado de forma idêntica ao cabeçalho AH. Este campo é opcional.

  25. lista de algorítmos desejados: 3DES, DES algoritmo aceito: DES negociação Diffie-Hellman (chave de pública de A) negociação Diffie-Hellman (chave de pública de C) Identidade Criptografada (chave de sessão) Identidade Criptografada (chave de sessão) Negociação C A SA associação de segurança (chave sessão + algoritmo) SPI SA associação de segurança (chave sessão + algoritmo) SPI Algoritmos DES Algoritmos 3DES DES

  26. DES com chave yyyy DES com chave yyyy SPI=6 SPI=6 DADOS CRIPTO. IP ESP ESP DADOS CRIPTO. IP ESP ESP enchimento enchimento Transmissão dos Dados A C Quando transmitir para C use SPI=6 SPI=6 algo. DES chave: yyyyy SPI=6 algo. DES chave: yyyy

  27. IP IP IP IP ESP Modo Tunel e Transporte IPsec ESP IPsec ESP IPsec ESP IPsec ESP IPsec ESP SA SA INTERNET Conexão IPsec em modo Transporte IPsec ESP IPsec ESP IPsec ESP SA SA INTERNET Conexão IPsec em modo Túnel

  28. Configuração do IPsec • Cada dispositivo de rede (Host ou Gateway) possui uma política de segurança que orienta o uso de IPsec. • Uma política IPsec é formada por um conjunto de regras, muito semelhantes as regras de um firewall. • As políticas IPsec são definidas de maneira distinta para os pacotes transmitidos e para os pacotes recebidos.

  29. Estrutura Geral do IPsec Administrador configura Aplicação IKE Base de Políticas Solicita criação do SA Protocolo Aplicação Sockets Transporte (TCP/UDP) refere consulta IP/IPsec(AH,ESP) Base de SAs Enlace consulta

  30. Políticas de Segurança • Uma Política IPsec é formada por um conjunto de regras com o seguinte formato: • Se CONDICAO SatisfeitaEntão executar ACAO da POLÍTICA • A CONDIÇÃO (Chamada de Filtro): • define quando uma regra de Política deve ser tornar ATIVA. • A AÇÃO: • define o que deve ser feito quando a condição da REGRA for SATISFEITA.

  31. Elementos para Configuração do IPsec Lista de Regras Ações (Ação de Filtro) Regra de Política Política IPsec Regra de Política Condições (Lista de Filtros) Regra de Política

  32. Condição (Lista de Filtros) • Cada filtro define as condições em que uma política deve ser ativa. • IP de origem e destino: • nome, IP ou sub-rede b) Tipo de protocolo • código IANA para TCP, UDP, ICMP, etc... c) Portas de origem e destino • se TCP/UDP

  33. Ação • A ação define o que deverá ser feito com o pacote recebido ou transmitido. • O IPsec define 3 ações: • repassar o pacote adiante sem tratamento • ação: bypass IPsec • rejeitar o pacode • ação discard • negociar IPsec • define um modo de comunicação incluindo as opções Tunel, Transporte, IPsec ESP e IPsec AH.

  34. Ações IPsec na Transmissão IP Regras IPsec IP IPsec Driver Discard Bypass Negociar IPsec • gerar assinaturas digitais • criptografar os dados IPsec ESP IP X IPsec AH Enlace

  35. Ações IPsec na Recepção IP Regras IPsec X X IP IP • verifica assinaturas • decriptografa Discard Negociar IPsec Bypass IPsec Driver IPsec AH IP IPsec ESP Enlace

  36. Negociar IPsec • Se a ação for do tipo Negociar IPsec, deve-se definir: • Obrigatoriedade: • Facultativo: aceita comunicação insegura • (se o outro não suporta IPsec). • Obrigatório: aceita apenas comunicação segura. • (rejeita a comunicação se o outro não suportar IPsec) • Tipo de IPsec: • AH(hash) ou ESP(cripto,hash) • Modo Túnel ou Modo Transporte • Se modo túnel, especificar o IP do fim do túnel

  37. Algoritmos Utilizados • Algoritmo de Chave Pública: • Diffie-Hellman • Algoritmos de Criptografia: • DES-CBC with Explicit IV • 40-bit DES-CBC with Explicit IV • DES-CBC with Derived IV as specified in RFC 1829 • Algoritmos de Autenticação: • HMAC-MD5 • HMAC-SHA • Keyed MD5 conforme RFC 1828

  38. Implementação de Políticas • Para que dois computadores "A" e "B" criem uma comunicação IPsec: • Computador A: • deve ter políticas IPsec para transmitir pacotes cujo endereço de destino é "B". • deve ter políticas IPsec para receber pacotes cujo endereço de origem é "B". • Computador B: • deve ter políticas IPsec para transmitir pacotes cujo endereço de destino é "A". • deve ter políticas IPsec para receber pacotes cujo endereço de origem é "A".

  39. Ordenamento dos Regras • Uma política IPsec pode ter regras conflitantes, por exemplo: • Política ICMP • RegraSubRede: • Localhost de/para 10.26.128.0/24::ICMP negociar IPsec • RegraExceção: • Localhost de/para 10.26.128.17::ICMP passar • Existem duas abordagems para resolver esse caso: • As regras são avaliadas em ordem: a primeira ser satisfeita é utilizada (abordagem Cisco) • As regras são avaliadas da mais específica para a mais genérica, independente da ordem (abordagem Microsoft).

  40. Priorização • Idealmente, as regras deveriam ser avaliadas de acordo com a granulariadade dos filtros: • My IP Address • Specific IP Address defined • Specific IP Subnet • Any IP Address • A mesma abordagem vale em relação as portas e protocolos: • Specific Protocol/Port combination • Specific Protocol/Any Port • Any Protocol • Em implementações em que o ordenamento não é automático, cabe ao administrador da rede escolher a ordem.

  41. Política Default • Assim como um firewall, também é possível estabelecer uma política default para o IPsec. • A políticas default será aplicada quando as condições do pacote não forem satisfeitas por nenhuma das regras pré-definidas. • A política default pode ser: • Bloquear • Bypass IPsec • Negociar IPsec em vários modos: • IPsec ESP 3DES, SHA1 • IPsec ESP DES, MD5 • AH SHA1 • AH MD5

  42. Exemplo 1: Política 1 para ICMP • Objetivo: • Evitar ataques ICMP com spoofing. • Política: Para o HOST B: • Apenas mensagens ICMP vindas da subrede 192.168.1.0/24 em modo IPsec AH são aceitas. • Se o solicitante não suporta IPsec, então a comunicação é Rejeitada

  43. Exemplo de Política Transporte: ICMP 2 REGRAS ICMP REDE_A HOST_B HOST_B REDE_A ICMP REDE A HOST B ICMP 192.168.1.7 ICMP (AH) rede 192.168.1.0/24

  44. Política para o HOST B

  45. Política para os Clientes

  46. Expandindo a política: Acesso HTTP • Objetivo: • Possibilitar que usuários da Intranet possam estabelecer comunicação em modo seguro, com criptografia de dados. • Política: Para o HOST B: • Apenas o acesso da subrede 192.168.1.0/24 em modo IPsec ESP é permitido. • Se o solicitante da rede interna não suporta IPsec, então a comunicação pode ocorrer sem IPsec. • Se o solicitante pertencer a uma outra subrede, então a comunicação é bloqueada.

  47. Acesso HTTP 2 REGRAS HTTP REDE_A HOST_B HOST_B REDE_A HTTP REDE A HTTP HOST B HTTP (ESP) 192.168.1.7 HTTP 192.168.1.0

  48. Política para o HOST B

  49. Política para os Clientes

  50. Políticas Básicas • Algumas implementações de IPsec, como no Windows 2000 oferecem ações pré-definidas para facilitar a configuração das regras. • Sem IPsec • Client (Respond Only) • Implementa IPsec apenas se exigido pelo Servidor. • Secure Server (Require Security) • Efetua apenas comunicação IPsec. • Rejeita conexões com clientes que não suportam IPsec. • Server (Request Security) • Solicita sempre comunicação IPsec. • Aceita conexões sem segurança se o cliente não suportar IPsec.

More Related