introdução à vpn ( virtual private network )

33
Introdução à VPN (Virtual Private Network )

Upload: laurel

Post on 05-Jan-2016

39 views

Category:

Documents


1 download

DESCRIPTION

Introdução à VPN ( Virtual Private Network ). Situação Corrente. Internet é uma arquitetura aberta Protocolos concebidos sem preocupação com segurança Uso comercial Aumento de conectividade aumento exposição. IPSec: VPN. Dados em trânsito na Rede. Expostos a ataques Spoofing - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Introdução à VPN ( Virtual Private Network )

Introdução à VPN(Virtual Private Network)

Page 2: Introdução à VPN ( Virtual Private Network )

Situação Corrente

• Internet é uma arquitetura aberta

• Protocolos concebidos sem preocupação com segurança

• Uso comercial

• Aumento de conectividade aumento exposição

Page 3: Introdução à VPN ( Virtual Private Network )
Page 4: Introdução à VPN ( Virtual Private Network )

Dados em trânsito na Rede

• Expostos a ataques– Spoofing– Men-in-the-middle attack– sniffing– session hijacking

• Proteções conhecidas– PGP: Mail– SSH: Telnet– SSL: Web

IPSec: VPN

Page 5: Introdução à VPN ( Virtual Private Network )

O que uma VPN ?

• Virtual Private Network– redes baseadas em IP que usam Criptografia e

Tunelamento para:• conectar usuários de forma segura a suas redes

corporativas (acesso remoto);

• Conectar filias em rede (intranet)

• Estender rede corporativas a seus clientes, fornecedores e parceiros (extranet)

• Fundamento: confiança (trust relationships)

Page 6: Introdução à VPN ( Virtual Private Network )

Objetivos

• Confiabilidade nas conexões– confidencialidade: criptografia dos dados– integridade: autenticação (dado não alterado

por terceiros)

IMPORTANTE:

OPERA NA CAMADA DE IP (REDE)

Page 7: Introdução à VPN ( Virtual Private Network )

Confidencialidade

• Protege a privacidade na troca de informação por meio de criptrografia– Esquema de secret(private) key e public key.

Chaves secretas não devem ser trocadas pela rede por razões obvias. Chaves secretas e públicas são criadas aos pares e mantém uma relação matemática. Dados criptografados com a chave pública de alguém, só podem ser recompostos com a chave privada dessa mesma pessoa. Chaves públicas podem ser trocadas pela rede livremente.

DES, 3DES, Blowfish, TwoFish, ArcFour, Diffie-Hellman (IKE – versão mais moderna)

IPSec

Page 8: Introdução à VPN ( Virtual Private Network )

Integridade

• Garantir que a informação transmitida não foi alterada de forma alguma.– One way hash function: espécie de um

“checksum” [função f(x) = y] para um conjunto de dados segundo um padrão conhecido

– Gerado na saída e conferido na chegada.• Exemplos de algoritmos: MD5, SHA-1 and RIPE-

MD-160.

IPSec

Page 9: Introdução à VPN ( Virtual Private Network )

Integridade

– Message-authentication codes (MACs) • adicionar uma chave à função hash. O emissor cria o

arquivo a ser enviado; calcula o MAC baseado na chave compartilhada com o receptor e adiciona-a ao arquivo; receptor lê o arquivo, calcula o MAC e compara com o que veio anexado ao arquivo.

• Algoritmos MAC: HMAC-MD5, HMAC-SHA1

IPSec

Page 10: Introdução à VPN ( Virtual Private Network )

Integridade

– Assinatura digital (digital signature)• criptografia de chave pública de forma reversa.

• O emissor “assina” o dado a transmitir com a sua chave privada; o receptor pode verificar a autenticidade da “assinatura” usando a chave pública do emissor.

• Assinatura: emissor cria um Message Digest (hash produzida a partir do dado a ser enviado); criptografa o digest com sua chave privada; anexa essa ‘assinatura’ ao documento e envia.

Page 11: Introdução à VPN ( Virtual Private Network )

Autenticação

• Garante a identidade de ambas as partes– por senha– por certificados

Senhas: Forma muito utilizada. Podem ser roubadas e/ou adivinhadas. Uso combinado com algum outro dispositivo físico (um cartão bancário, por exemplo).

Page 12: Introdução à VPN ( Virtual Private Network )

Autenticação

– Certificados digitais (padrão X.509)• documento eletrônico emitido por uma autoridade

de certificado (certificate authority) que garante a identidade de um indivíduo.

• Ele associa um indivíduo a uma chave pública.

• Ele contém uma chave pública, informações para o usuário (nome da companhia), info para o criador do certificado e período de validade.

• Toda essa informação é usada para criar um condensado de informação, criptografado com a chave secreta da autoridade, para “assinar” o certificado.

Page 13: Introdução à VPN ( Virtual Private Network )

Protocolos para VPN

• IPSec (Internet Protocol Security)

• Tunneling – Point to Point Tunneling Protocol (PPTP)

– Layer 2 Tunneling Protocol (L2TP)

• Sock5

Page 14: Introdução à VPN ( Virtual Private Network )

IPSec

• Segurança para IP– Provê criptografia e autenticação para a camada

de redes (IP)• Pode então proteger tráfego sobre IP, ao invés de

outros que apenas protegem tráfego em camadas superiores da pilha de protocolos (SSH, SSL, PGP)

• Garante segurança entre duas máquina e não usuários !!!

Page 15: Introdução à VPN ( Virtual Private Network )

Security Association (SA)• Conceito fundamental em IPSec

– similar à ideia de um socket TCP/UDP• Uma SA é uma tripla formada por um Security

Parameter Index (SPI), um endereço IP destino e um identificador de protocolo de segurança (AH ou ESP)

• identifica unicamente uma conexão simplex (unidirecional) e possibilita serviço de segurança ao dado transportado. É preciso um par de SAs para uma transação IPSec

• SPI: usado para distinguir SAs diferentes terminadas em um mesmo destino e com o mesmo protocolo IPSec.

• É um canal gerado nos níveis mais acima do IPSec (IKE) e usado pelos mais baixos (ESP)

Page 16: Introdução à VPN ( Virtual Private Network )

IPSec

• IPSec usa 3 protocolos– AH: (Authentication Header) Provê serviço de

autenticação para o pacote.– ESP: (Encapsulating Security Payload) Provê

criptografia + autenticação.– IKE: (Internet Key Exchange) Negocia

parâmetros de conexão, incluindo chaves, para os dois protocolos acima. (algoritmo Diffie-Hellman - DH)

Page 17: Introdução à VPN ( Virtual Private Network )

AH IP Authentication Header

• Protocolo Nro 51 (TCP = 7, UDP = 11).

• Objetivo– verificação do dados e integridade dos pacotes– Inserido

• ENTRE o header IP e o Payload (header TCP +Dados): modo de transporte

• ANTES do header original, junto com um novo header IP: modo de túnel (tunnel mode)

• Não mais implementado no FreeS/WAN

Page 18: Introdução à VPN ( Virtual Private Network )

Túnel

Modo Transporte

Page 19: Introdução à VPN ( Virtual Private Network )

ESP Encapsulating Security Payload (protocolo 50)

• Similar ao AH

• Objetivos– mesmo que AH + confidencialidade

(criptografia)– empregado nos modos de transporte e túnel.

Modo Transporte: entre hosts

Modo Túnel: entre hosts, entre gateways, entre host-gateway

Uma ferramenta de análisede tráfego pode determinaros tipos dos protocolos e

portas (só o payload é “protegido”)

Todo o pacote IP é encapsulado. Tudo que alguém vê é um dado

criptografado.

Page 20: Introdução à VPN ( Virtual Private Network )

AH / ESP

Page 21: Introdução à VPN ( Virtual Private Network )

Criptografia

• Técnica que converte uma mensagem legível (plaintext) em material aparentemente randômico (ciphertext) que não pode ser lido, se interceptado.

• Necessita de uma chave para ser lida.• Simétrica (mesma chave secreta em ambos os lados)

• chaves públicas (par de chaves pública/privada)

Page 22: Introdução à VPN ( Virtual Private Network )

Técnicas de Criptografia

• Block ciphers

• HMAC - Hash Functions

• Diffie-Hellman key aggreement

• Autenticação RSA

Page 23: Introdução à VPN ( Virtual Private Network )

Técnicas de Criptografia

• Block ciphers • cipher simétrico que utiliza operações rápidas e e

repetidas (somas, deslocamentos, subtrações, etc) em um bloco de dados de uma só vez (8 bytes, por exemplo) e passa ao seguinte.– É uma técnica simétrica !!!

• Shared secret deve ser criada no momento da transmissão de forma segura. Como? Esquema de troca de chaves DH (Diffie-Helman)

Page 24: Introdução à VPN ( Virtual Private Network )

Block CiphersExemplos

DES: inseguro.

Nova Geração: 3DES (Default FreeSWAN), AES, etc...

Page 25: Introdução à VPN ( Virtual Private Network )

Como é criada uma shared secret ?Método Diffie - Hellman de troca de chaves. Presente no IKE

Page 26: Introdução à VPN ( Virtual Private Network )

HMAC

• Usadas pelo IPSec para conferir autenticação/integridade os pacotes de dados– baseados em funções HASH e chaves– indica que o pacote não foi mudado durante

transmissão.• Algoritmos de HASH (MD5 e SHA)

Message DigestAlgorithm

(RSA)

Secure HashAlgorithm(NSA - não

muito usado!)

Hashed MessageAuthentication

Code

Page 27: Introdução à VPN ( Virtual Private Network )

RSA

• Técnica de criptografia do tipo public key• Rivest, Shamir and Adleman (patente

quebrada em 2000!)

• Usado pelo IPSec apenas para assinaturas digitais, como método de autenticação de gateways para a técnica de negociação de chaves Diffie-Hellman !

Page 28: Introdução à VPN ( Virtual Private Network )

FreeS/WAN

• Free Security WAN– Implementação GNU de IPSec que usaremos!– KLIPS (Kernel do IPSec)

• implementa AH, ESP e manipulação de pacotes pelo kernel. Portanto, é preciso habilitar o kernel linux

– Pluto (deamon IKE)• implementa IKE, negocia conexões com outros

outras máquinas

– Ferramentas de administração e scripts admin

Page 29: Introdução à VPN ( Virtual Private Network )

Configurações Gateways

Road Warrior

Page 30: Introdução à VPN ( Virtual Private Network )

Configuração Subnet - Subnet

Fonte: http://jixen.tripod.com/

Page 31: Introdução à VPN ( Virtual Private Network )

Subnet - Subnet (com NAT na esquerda)

Page 32: Introdução à VPN ( Virtual Private Network )

RoadWarrior

Page 33: Introdução à VPN ( Virtual Private Network )

Mãos à obra !