Baixe o app para aproveitar ainda mais
Prévia do material em texto
Edgard Jamhour Padrão aberto baseado em RFC (IETF). o Comunicação segura em camada 3 (IPv4 e IPv6) o Provê recursos de segurança sobre redes IP: • Autenticação, Integridade e Confidencialidade Dois modos de funcionamento: o Modo Transporte o Modo Túnel Dois Protocolos (Mecanismos) o IPsec ESP: IP Encapsulating Security Payload (50) o IPsec AH: IP Autentication Header (51) Enlace IP Transporte (TCP/UDP) Sockets Aplicação IKE Base de SAs Base de Políticas consulta refere consulta Administrador configura Solicita criação do SA IPsec Discard Bypass Regras IPsec • gerar assinaturas digitais • criptografar os dados IPSec Enlace IP IPsec AH IP Negociar IPsec IP X IPsec ESP Discard Bypass Regras IPsec • verifica assinaturas • decriptografa IPSec Enlace IP IPsec AH IP Negociar IPsec IP X IPsec ESP X IP Modo transporte o Garante a segurança apenas dos dados provenientes das camadas superiores. o Utilizado geralmente para comunicação "fim-a-fim" entre computadores. Modo tunel o Fornece segurança também para a camada IP. o Utilizado geralmente para comunicação entre roteadores. INTERNET Conexão IPsec em modo Transporte INTERNET Conexão IPsec em modo Túnel HOST A HOST HOST A REDE REDE A REDE rede Insegura rede Insegura rede Insegura rede Insegura pacote protegido rede Insegura pacote desprotegido rede Insegura Túnel ou Transporte Túnel Túnel Os endereços IP externos correspondem as extremidades do túnel, e os endereços IP internos correspondem aos hosts. INTERNET SERVIDOR B SERVIDOR C SERVIDOR A FISICA ENLACE REDE TRANSPORTE APLICAÇÃO FISICA ENLACE REDE SSL APLICAÇÃO FISICA ENLACE REDE (IP) TRANSPORTE APLICAÇÃO FISICA ENLACE REDE (IP) TRANSPORTE APLICAÇÃO TRANSPORTE IPSEC Aplicação S.O. NIC Pilha Normal SSL IPsec Tunel IPsec Transporte IPSEC REDE (IP Túnel) IP Autentication Header (AH) o Protocolo 51 o Oferece recursos de: • Autenticação • Integridade IP Encapsulating Security Payload (ESP) o Protocolo 50 o Oferece recursos de: • Confidencialidade • Autenticação • Integridade 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 contra injeção de pacotes falsos (spoofing) IP TCP/UDP … dados … IP TCP/UDP AH IP AH * A assinatura não cobre os campos mutáveis especifica os gateways nas pontas do túnel IP sem proteção Modo AH Transporte Modo AH Túnel Assinatura* … dados … IP TCP/UDP … dados … Assinatura* especifica a origem e destino Provê serviços de autenticação e Integridade de Pacotes. Next Header reserved 1 byte 1 byte Length reserved SPI: Security Parameter Index Authentication Data (ICV: Integrity Check Value) Campo de Tamanho Variável, depende do protocolo de autenticação utilizado 1 byte 1 byte Sequence Number Next Header: o código do protocolo encapsulado pelo IPsec, de acordo com os códigos definidos pela IANA (UDP, TCP, etc ...) Length: o comprimento do cabeçalho em múltiplos de 32 bits. Security Parameter Index (SPI): o Identifica a SA (associação de segurança) que deverá ser usada para validar o pacote Authentication Data: o código de verificação de integridade (ICV) de tamanho variável, depende do protocolo utilizado. Para enviar um pacote: 1. O transmissor substitui todos os campos que mudam ao longo da transmissão com 0’s (por exemplo, o TTL) 2. O pacote é completado com 0’s para se tornar múltiplo de 16 bits. 3. Um checksum criptográfico é computado com todos os campos do pacote: • Algoritmos: HMAC-MD5 ou HMAC-SHA-1 • MAC: Message Authentication Code h = função de hashing (MD5 ou SHA1) k = chave secreta ipad = 0x363636 ... 3636 opad = 0x5c5c5 ... c5c5c Uma vez definida uma política comum a ambos os computadores, uma associação de segurança (SA) é criada para “lembrar” as condições de comunicação entre os hosts. Isso evita que as políticas sejam revistas pelo IPsec a cada novo pacote recebido ou transmitido. Cada pacote IPsec identifica a associação de segurança ao qual é relacionado pelo campo SPI contido tanto no IPsec AH quanto no IPsec ESP. SA: Associação de Segurança o Contrato estabelecido após uma negociação que estabelece como uma comunicação IPsec deve ser realizada. • Método de Autenticação • Tipo de transformação IPsec • Algoritmos e chaves 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. Dois computadores podem possuir um conjunto amplo de políticas para transmissão e recepção de pacotes. É necessário encontrar uma política que seja comum ao transmissor e ao receptor. A B Eu transmito para qualquer rede sem IPsec Eu transmito para qualquer rede em IPsec AH MD5 Eu aceito pacotes de qualquer rede em com IPsec AH MD5 Eu transmito para qualquer rede em IPsec AH MD5 Eu transmito para qualquer rede em IPsec AH SHA1 Eu aceito pacotes de qualquer rede em com IPsec AH MD5 Eu aceito pacotes de qualquer rede em com IPsec AH SHA1 Para receber um pacote: o O receptor utiliza o SPI para determinar qual o algoritmo a ser utilizado para validar o pacote recebido. o O receptor substitui os campos mutáveis por “0” e calcula o checksum criptográfico do pacote. o Se ele concordar com o checksum contido no cabeçalho do pacote de autorização, ele é então aceito. IP TCP/UDP DADOS AH Algoritmo de Integridade ICV ICV iguais? Sequence Number: o Numero incremental, que começa a contagem quando o SA é criada. o Permite que apenas 232-1 pacotes sejam transmitidos na mesma SA. Após esse número, uma nova SA deve ser criada. Host A Host B negociam SA e definem SPI SPI=deAparaB e SN=1 SPI=deAparaB e SN=2 ... SPI=deBparaA SPI=daAparaB. SPI=deAparaB SPI=deBparaA SPI=deBparaA e SN=1 A B Quando transmitir para B use SPI=5 SPI=5 algo. SHA1 chave: xxxx SPI=5 algo. SHA1 chave: xxxx IP AH DADOS SPI=5 assinatura Algo SHA1 IP AH DADOS SPI=5 assinatura Algo SHA1 assinatura comparação SA INTERNET SA SA INTERNET SA Conexão IPsec em modo Túnel IPsec AH IPsec AH IPsec AH IPsec AH IPsec AH Conexão IPsec em modo Transporte IPsec AH IPsec AH IPsec AH IP IP IP IP Definido pelo protocolo IP tipo 50 Utilizando para criar canais seguros com autenticação, integridade e criptografia. Além da criptografia, permite incluir uma “assinatura digital” em cada pacote transportado. Protege a comunicação contra spoofing e garante confidencialidade IP TCP/UDP … dados … IP TCP/UDP ESPH IP sem proteção Modo ESP Transporte criptografia … dados … autenticação ESPT ESPA IP TCP/UDP ESPH Modo ESP Túnel criptografia … dados … autenticaçãoESPT ESPA IP ESP provê recursos de autenticação, integridade e criptografia de pacotes. Next Header Pad (0 – 255 bytes) 1 byte 1 byte Pad Length Security Parameter Index Encrypted Payload (dados criptografados) 1 byte 1 byte Sequence Number Authentication Data (tamanho variável) ESPH ESPT ESPA ESPH (Header): o SPI e Sequence Number: Mesmas funções do AH o O algoritmo de criptografia pode ser qualquer, mas o DES Cipher- Block Chaining é o default. ESPT (Trailler): o Torna os dados múltiplos de um número inteiro, conforme requerido pelo algoritmo de criptografia. o O trailler também é criptografado. ESPA (Auth): o ICV (Integrity Check Value) calculado de forma idêntica ao cabeçalho AH. A C Quando transmitir para C use ESP com AES SPI=6 algo. AES chave: 1234 Quando receber de A use ESP com AES SPI=6 algo. AES chave: 1234 IP ESPH DADOS CRIPTO. SPI=6 AES com chave 1234 ESPA IP ESPH DADOS CRIPTO. SPI=6 AES com chave 1234 ESPA SA INTERNET SA SA INTERNET SA Conexão IPsec em modo Túnel IPsec ESP IPsec ESP IPsec ESP IPsec ESP IPsec ESP Conexão IPsec em modo Transporte IPsec ESP IPsec ESP IPsec ESP IP IP IP IP 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. Enlace IP Transporte (TCP/UDP) Sockets Aplicação IKE Base de SAs Base de Políticas consulta refere consulta Administrador configura Solicita criação do SA IPsec Ações (Ação de Filtro) Condições (Lista de Filtros) Política IPsec Regra de Política Regra de Política Regra de Política Lista de Regras A primeira regra satisfeita define a ação Regras podem ser ordenadas de forma explícita ou implícita No ordenamento implícito regras mais específicas são testadas primeiro. Exemplos: Regra para 200.1.1.1/32 é mais prioritário que a regra para 200.1.1.0/24 Regra para TCP na porta 80 é mais prioritária que a regra para TCP Uma política é formada por um conjunto de regras As condições são similares aos dos firewalls sem estado: o Endereços + Protocolo + Portas Exemplo 1: o Da subrede 200.0.0.0/24 para 200.0.0.1/32 o Protocolo TCP o Da porta de origem >1024 para Porta de destino 80 Exemplo 2: o Do endereço 200.0.0.2/32 para 200.0.0.0/24 o Protocolo ICMP o Tipo ICMP: Echo Request As ações possíveis são: o Aceitar, Rejeitar ou Negociar Ipsec Se a ação for do tipo Negociar IPsec, deve-se definir: Obrigatoriedade: o Facultativo: aceita comunicação insegura se o peer não suporta IPsec o Obrigatório: aceita apenas comunicação segura. Método de Autenticação: o Segredo Pré-compartilhado, Assinatura de Chave Pública Tipo de IPsec: o AH (hash) ou ESP(cripto,hash) Modo Túnel ou Modo Transporte o Se modo túnel, especificar o IP do fim do túnel switch switch Internet switch Sede Principal Escritório Remoto S er vi do r H T T P S er vi do r A rq ui vo S er vi do r A rq ui vo Clientes na Sede Principal: IPsec AH para servidores locais IPsec ESP para servidores remotos Servidores na Sede Principal: IPsec AH para clientes locais IPsec ESP para clientes remotos Clientes Wireless no Escritório: IPsec ESP para servidores locais IPsec ESP para servidores remotos Servidor no Escritório: IPsec ESP para clientes locais wireless IPsec AH para clientes fixos IPsec ESP para clientes remotos AP Algoritmos de Criptografia: o MUST NULL o MUST AES-CBC o MAY AES-CTR o MAY 3DES-CBC o MUST NOT DES-CBC Algoritmos de Autenticação: o MUST: HMAC-SHA1-96 o SHOULD+: AES-GMAC com AES-128 o SHOUL: AES-XCBC-MAC-96 o MAY: NULL (somente para ESP) Ultimas atualizações: de 2007 para 2014 o DE PARA o MAY SHOULD+ AES-GCM with a 16 octet ICV o MAY SHOULD+ AES-GMAC with AES-128 o MUST- MAY TripleDES-CBC o SHOULD NOT MUST NOT DES-CBC o SHOULD+ SHOULD AES-XCBC-MAC-96 o SHOULD MAY AES-CTR RouterA define uma política para criar um túnel com RouterB (10.0.0.2) quando pacotes forem envidados de 10.1.1.0/24 para 172.16.2.0/24 RouterB define uma política para criar um túnel com RouterA (172.16.1.1) quando pacotes forem enviados de 172.16.2.0/24 para 10.1.1.0/24 Chaves podem ser gerenciadas de forma automática ou manual Até 2011 IPsec era obrigatório para IPv6 e IKEv1 era o mecanismos de chaves recomendado. Após 2011 (RFC 6434), a implementação de IPsec passou de mandatória para recomendada Atualmente, o mecanismos de gerenciamento automático de chaves é o IKEv2 [RFC5996]. Criar segredo pré-compartilhado Autenticar os “peers” o Através de segredos pré-definidos. o Assinaturas de chave pública o EAP (IKEv2) Negociar a transformação IPsec. o Tunel ou Transporte o AH ou ESP o Algoritmos O protocolo IKE é implementado sobre UDP, e utiliza a porta padrão 500. UDP 500 UDP 500 initiator responder IKE autenticação efetuada chave secreta definida Troca de propostas SA estabelecida Em NAT Traversal a negociação é feita na porta 4500 O IKE (RFC 2409) é uma combinação de dois protocolos definidos anteriormente: o OAKLEY (RFC 2412) • Mecanismos para criação se chave secretas entre 2 máquinas • Utiliza o algoritmo Diffie-Hellman o ISAKMP (RFC 2408) • Internet Security Association and Key Management Protocol • Protocolo de negociação dos parâmetros Ipsec IKEv2 (RFC 7296 de 2014) propõe uma versão simplificada e mais eficiente do IKE um número primo p > 2 e um número inteiro g < p Alice Bob Escolhe o segredo b e calcula B = gb mod p Escolhe o segredo a e calcula A = ga mod p envia A para Bob envia B para Alice Calcula s = Ba mod p Calcula s = Ab mod p p = 23 e g = 5 Alice Bob Escolhe b=3 Calcula 53 mod 23 = 10 Escolhe a=4 Calcula 54 mod 23 =4 envia 4 para Bob envia 10 para Alice Calcula 104 mod 23 = 18 Calcula 43 mod 23 = 18 IKEv1: 1998 IKEv2: 2005/2014 Alterações do IKEv2: o Reduz o número de mensagens de negociação o Suporta autenticação EAP o Suporta MOBIKE (plataformas móveis multi-homed) o Suporta NAT Traversal o Testa e recria automaticamente túneis danificados FASE 1: Main Mode o Cria uma associação de segurança (SA) bidirecional entre duas máquinas o Não é usada para transportar dados o Essa SA é usada criar SAs do tipo Quick Mode FASE 2: Quick Mode o Cria uma SA unidirecional usada para transportar dados (IPsec SA) o Reutiliza os segredos gerados no Main Mode o Duas máquinas podem estabelecer várias IPsec SA, uma cada cada tipo de tráfego transportado PFS: Perfect Forward Secrecy o Modo de operação ultra-seguro onde uma SA Main Mode nova énegociada para cada SA Quick Mode Main Mode Quick Mode para HTTP Quick Mode para HTTPs Phase 1 Main Mode: Básico: 4 mensagens Com proteção de identidade: 6 mensagens Agressivo: 3 mensagens Phase 2 Quick Mode: 4 mensagens Cria o IKE SA Quick Mode para SMTP Cliente Servidor HTTP/HTTPs Servidor Email IKE_SA_INIT IKE_AUTH Child SA1 CREATE_CHILD_SA SA2 IKE_SA_INIT: 2 mensagens Cria um canal seguro sem autenticar o Peer remoto IKE_AUTH: 2 mensagens Autentica o Peer remoto e cria o Child SA (IKE SA) CREATE_CHILD_SA_EXCHANGE: 2 mensagens Permite renovar ou criar novas Child SA CREATE_CHILD_SA SA3 Cliente Servidor HTTP/HTTPs Servidor Email De A para B: Troca de Chaves (gA mod P), Propostas, Nonce De B para A: Troca de Chaves (gB mod P), Proposta Escolhida, Nonce A envia identidade criptografada para B B envia identidade criptografada para A Uma chave secreta é criada por ambos os Peers: K=f(nonces, SPIs, gAB mod p) IPsec não funciona em NAT porque as portas TCP/UDP estão criptografadas Um encapsulamento adicional (porta UDP 4500) é usado para permitir IPsec atraves de NAT As funcionalidades oferecidas nos modos Túnel, Transporte AH e ESP não são idênticas. Muita vezes são necessárias mais de uma SA para satisfazer os requisitos de segurança de uma comunicação segura. INTERNET SA Tunnel com ESP SA Transporte com AH Associação de Segurança 1 Associação de Segurança 2 Associação de Segurança 2 Associação de Segurança 1 Rede não Confiável Rede não Confiável Rede não Confiável Rede não Confiável Os firewalls devem ser configurados para: 1) Liberar a porta usada pelo IKE para negociação do IPsec: • IKE usa a porta UDP 500 • NAT-T usa a parta UDP 4500 2) Liberar os protocolos IPsec: • ESP: Protocolo IP tipo 50 • AH: Protocolo IP tipo 51 L2TP e IPsec podem ser combinados para implementar um mecanismo completo de VPN para procotolos de rede diferentes do IP, como IPx e NetBEUI. IPsec é uma extensão de segurança para o protocolo IP definido pelo IETF, que permite criar políticas que servem tanto proteger comunicações internas quanto externas IPsec define mecanismos que são padronizados tanto para IPv4 (facultativo) quanto para IPv6 (recomendado). O IPsec sofreu modificações, e a versão IKEv2 corrigiu muitos dos problemas apontados anteriormente
Compartilhar