Download - IPv6 Segurança Protocolos associados. Extensa literatura - -Fonte completa. Contém inúmeros artigos,
IPv6
SegurançaProtocolos associados
Extensa literatura- http://www.6journal.org/view/subjects/iptute.html
- Fonte completa. Contém inúmeros artigos, incluindo um “Deployment Guide”
- http://www.securitydocs.com- Tutorial interessante sobre IPSec.
- http://www.rnp.br/newsgen/9907/ipsec3.html
- http://www.tcpipguide.com/free/t_IPSecurityIPSecProtocols.htm
Segurança no IPv6
• O IPv6 utiliza os mesmos conceitos e técnicas desenvolvidos para o IPv4;
• A segurança pode ser aplicada em diversos níveis:– Nível físico;– Nível de protocolo;– Nível de transporte;– Nível de aplicação.
• Quanto maior a implementação de segurança em camadas inferiores, maior será a quantidade de informação protegida.
Aplicação
Transporte
IP
Física / Enlace
HTTPS
TLS
IPSec
IPSec-IPSec não é um protocolo, mas vários protocolos projetados para prover vários serviços de segurança
-Os protocolos IPSec operam na camada 3 – de rede, ao contrário de vários outros métodos de segurança (tais como o SSL) que operam da camada 4 até a camada de aplicação (de 4 a 7).
-Com isso, existe a vantagem de ser mais flexível (pode ser aplicado para proteger tanto comunicações TCP como UDP) mas também é mais complexo, já que não pode utilizar os recursos desses protocolos para gerenciar confiabilidade e fragmentação.
IPSec- IPSec tanto pode ser aplicado para IPv4 como IPv6.
- Na verdade, foi projetado para o IPv6-Como a implementação da versão 6 ainda não aconteceu de fato, os protocolos foram criados para funcionar também na versão 4
- Mandatório para implantações IPv6.
- Como vimos, o protocolo já está “embutido” dentro do próprio projeto do IPv6, permitindo que seja utilizado de maneira eficiente.
IPSec: conjunto de normas e protocolosRFC Nome Descrição
2401 Arquitetura de segurança para IP
Documento principal, descreve arquitetura geral dos protocolos
2402 Cabeçalho de Autenticação
Define o cabeçalho de autenticação (AH)
2403 Uso de HMAC-MD5 Descreve a operação de um algoritmo de criptografia
2404 Uso de HMAC-SHA-1-96 Descreve outro algoritmo de criptografia
2406 Encapsulamento de segurança (ESP)
Descreve o protocolo que provê confidencialidade
2408 Descreve protocolo de gerenciamento de chaves
Define métodos de trocas de chaves
2409 Troca de chaves IKE Descreve o protocolo IKE usado para negociar associações
2412 Protocolo OAKLEY Descreve um protocolo genérico de troca de chaves
IPSec: o quê e como?IPSec:
• Fornece serviços de segurança na camada IP• Constrói um “caminho seguro” entre dois agentes (máquinas, roteadores, etc)
Para isso:• Esses agentes precisam concordar em um conjunto comum de protocolos de segurança para ser usado nesses caminho, de modo que cada um possa enviar dados em um formato que o outro entenda
• Precisam concordar com um algoritmo de criptografia específico para codificar os dados transferidos entre eles
• Precisam trocar chaves (de criptografia) para poder decifrar as mensagens
• Uma vez que toda essa informação prévia esteja definida e conhecida (e apenas pelos agentes envolvidos), cada um deles pode iniciar a troca de informação, usando para isso os protocolos de criptografia combinados.
IPSec: o quê e como?• PROTOCOLOS PRINCIPAIS (CORE)
•IPSec Authentication Header (AH): protocolo que provê serviços de autenticação – permite que o receptor da mensagem confirme a autenticidade da mensagem (quem enviou é quem se espera)
•Encapsulating Security Payload (ESP): protocolo usado para encriptar a informação transmitida
IPSec: o quê e como?• COMPONENTES DE SUPORTE
• Algoritmos de encriptação• Associações de segurança/políticas de segurança
• Gerenciamento de chaves
IPSec
Fonte: www.tcpipguide.com
Protocolos e componentes auxiliares da família IPSec
IPSec: Associações de segurança – “SA”•Uma SA é uma relação unidirecional entre dois agentes (emissor e receptor) que suporta serviços de segurança no tráfego entre eles.
•Se a comunicação é nos dois sentidos, duas associações são necessárias
•Uma SA é unicamente identificada por três parâmetros:• Security Parameter Index (SPI): ponteiro atribuído a uma SA com significado local, é transmitido dentro dos cabeçalhos AH ou ESP para que o receptor possa selecionar a associação do qual o pacote será processado
• Endereço IP: IPSec suporta apenas endereços do tipo Unicast
• Security protocol identifier: identifica se a particular SA é uma associação do tipo AH ou ESP
IPSec: Autenticação - AH• Authentication Header (AH):
• O protocolo é implementado por um cabeçalho de extensão (IPv6), que ao ser adicionado a um datagrama IP, garante a integridade e autenticidade dos dados, incluindo os campos do cabeçalho original que não são alterados entre a origem e o destino;
• no entanto, não fornece confidencialidade.
• Evita ataques do tipo “replay” (repetição de pacotes)
• Os algoritmos de autenticação usam funções “hash” para gerar valores de conferência (integrity check).
• IPSec não especifica qual algoritmo usar, mas fornece uma relação de possíveis candidatos, todos padronizados e bem conhecidos:
• MD5 – definido por uma empresa RSA Data Security• SHA – Secure Hash Algoritm – do governo americano
Segurança no IPv6: relembrando os cabeçalhos de extensão
Dados de Autenticação
CabeçalhoPadrão
PayloadEXTENSÃO Autenticação Protocolo...
EXTEN. Auth
Cabeçalho Seguinte Tamanho do Payload
Número de Seqüência
Reservado
Índice de Parâmetros de Segurança
32 bits
Descrição de um cabeçalho de extensão de autenticação
IPSec: Autenticação - AH
IPSec: Autenticação – AH - campos
• Next Header: indica qual o bloco de dados que está sendo protegido (TCP, UDP, etc)
• Payload length: tamanho do AH• Security Parameter Index(SPI): identificação do SA
(associação de segurança) deste datagrama • Sequence Number: contador que é incrementado a
cada pacote transmitido• Authentication Data: contém o valor gerado pela
função hash (Integrity check value - ICV)• Reserved: (16 bits) para uso futuro.
IPSec: Autenticação – AH - campos
• O que é o ICV?
IPSec: Criptografia - ESP• Encapsulating Security Payload – ESP:
• esse protocolo estabelece um método para suportar confidencialidade (através de criptografia) da informação transmitida
• Também provê integridade pois suporta o ICV
• O DES (Data Encryption Standard) é o algoritmo mais comumente usado para a criptografia dos dados.
• Vários outros algoritmos podem ser usados, de acordo com várias RFCs: IDEA, blowfish e RC4.
IPSec: Criptografia - ESP
IPSec: Criptografia - ESP• Security Parameter Index(SPI):identificação do SA do
datagrama • Sequence Number: contador que é incrementado a cada
pacote • Payload Data: dados criptografados do pacote IP original • Padding: bytes extras (enchimento) necessários para o
caso do algoritmo de criptografia exigir blocos completos• Pad length: número de bytes de “padding” • Next Header: indica qual o bloco de dados que está
sendo protegido (TCP, UDP, etc)• Authentication Data: contém o Integrity check value (ICV)
do datagrama (com exceção de um eventual AH)
IPSec: Criptografia - ESP
IPSec•IPSec pode ser usado de duas maneiras:
• Modo “transporte”: implementado diretamente entre dois pontos remotos (end points).
• Modo “túnel”: implementado entre sistemas intermediários que são usados para encapsular datagramas “inseguros”.
IPSec: o datagrama original• Formato geral do datagrama:
• Cabeçalho (header)• Área de dados (payload)
IPSec: o datagrama no modo Transporte
• O cabeçalho original é mantido
• Um cabeçalho adicional carrega as informações de segurança
IPSec: o datagrama no modo túnel• O cabeçalho original também é criptografado
• Assim, todo o datagrama original fica protegido.
IPSec: comparação dos dois modos
IPSec• Modo transporte:
• Comunicação é protegida “fim a fim”• Os dois sistemas das pontas têm que suportar os protocolos de segurança
• Modo túnel:• Comunicação é protegida entre dispositivos intermediários
• A proteção fica “transparente” para os sistemas das pontas.
IPSec: tabela completa
SA Modo de transporte SA Modo túnel
AHAutentica os dados e parte do cabeçalho IP original
Autentica todos os dados e partes dos cabeçalhos IPv6
ESPCriptografa os dados e todos os cabeçalhos IPv6 subsequentes
Criptografa todo o pacote IP “interior”
ESP com autenticação
Criptografa os dados e os cabeçalhos IPv6 subsequentes. Autentica os dados mas não o cabeçalho IP
IPSec: gerenciamento de chaves
• O IPSec assume que as SAs já existem para serem utilizadas, mas não especifica como elas serão criadas.
• O IETF decidiu dividir o processo em duas partes:
– o IPSec fornece o processamento dos pacotes, – O IKE – Internet Key Exchange (IKEv2) é o método
padrão para a configuração das SAs. O IKEv2 cria um túnel seguro e autenticado entre duas entidades, para depois negociar SAs para o IPSec. Este processo requer que duas entidades se autentiquem entre si e estabeleçam chaves compartilhadas.
• A configuração pode ser também manual para sistemas pequenos e estáticos.
IPSec: gerenciamento de chaves
• O IPSec usa o IKE para iniciar uma SA. • O primeiro pacote de A para B que deve ser encriptado inicia o processo (por exemplo, processo Diffie-Helman). • O processo IKE monta um túnel seguro entre B e A, onde a SA IPSec será negociada. • A então pode usar esta SA para enviar dados de forma segura para B.
http://www.ciscopress.com/articles/article.asp?p=25474&seqNum=1
IPSec: gerenciamento de chaves• O IKE é bastante flexível e suporta diversos tipos de
autenticação. As duas entidades devem escolher o protocolo de autenticação que será utilizado através de negociação. Neste momento, os seguintes mecanismos são implementados:
– Chaves compartilhadas já existentes: a mesma chave é instalada em cada entidade.
– Criptografia de chave pública: cada parte gera um número aleatório, e encripta este número com a chave pública da outra parte. Somente o algoritmo de chave pública RSA é suportado atualmente.
– Assinatura digital: cada dispositivo assina digitalmente um conjunto de dados e o envia para a outra parte. Este método é similar ao anterior, mas ele não permite que uma entidade repudie a participação na troca. Tanto o algoritmo de chave pública RSA quanto o DSS (Digital Signature Standard) são suportados atualmente.
IPSec não é tudo....
• Existem outros aspectos de segurança a serem abordados:– Scanning– DHCP– ....
• Alguns diferem em relação ao IPv4, mas outros são muito similares
Scanning• Devido a grande quantidade de endereços, o
escaneamento de uma rede IPv6 é uma tarefa “impossível”– O trabalho é 296 vezes mais custoso que no IPv4;– Mais trabalho para desenvolvedores de virus e
worms• Uma subrede padrão no IPv6 tem 264
endereços....– Força bruta = 18 bilhões de anos– Técnicas + avanços tecnológicos = alguns anos,
meses....• O descobrimento de equipamentos em uma
rede poderá ser feito através de servidores DNS, logs de aplicativos, tabelas de rotas etc.
• O aumento da oferta de endereços favorece a diminuição de soluções NAT
Auto-configuração
IPv6 INTERNET
IPv6 NetworkFalse Prefix:+:nic adress
Auto configuration
Router Solicitation
Router Advertisement
Neighbor Discovery
Duplicate Address Detection
IPv6 LAN
IPv6 LAN
FAKERA
RS
RA
Auto-configuração
IPv6 INTERNET
IPv6 NetworkPrefix:+:nic adress
Auto configuration
Router Solicitation
Router Advertisement
Neighbor Discovery
Duplicate Address Detection
IPv6 LAN
IPv6 LANND FAKE NS
NS
Segurança com IPv6• O IPv6 teoricamente não traz novos riscos – por
enquanto....
• O IPSec não é a solução de todos os problemas– Facilita o rastreamento do ataque– Dificulta o sniffing– Dificulta o Man in the Middle
• O IPv6 leva a segurança ao limite do usuário • Novos conceitos de segurança
– Descentralizada– Servidores de Políticas– Híbrida
• As vulnerabilidades nas aplicações, maioria dos problemas na Internet, continuam existindo com ou sem a presença do IPv6
Outros protocolos associados ao IPv6
• Descoberta de vizinho: Neighbor discovery (ND) RFC 2461
• Auto configuração:• Configuração de endereço RFC 2462• DHCPv6 – Dynamic Host Configuration Protocol for IPv6 RFC
3315• Path MTU Discovery RFC 1981
• Multicast Listener Discovery – MLD RFC 2710
• ICMPv6 RFC 2463