• Nenhum resultado encontrado

VPN SSL x VPN IPSEC

N/A
N/A
Protected

Academic year: 2021

Share "VPN SSL x VPN IPSEC"

Copied!
23
0
0

Texto

(1)

Vol. , Nº. 0, Ano 2011 Vol. , Nº. 0, Ano 2011 autor autor Marcelo Fontes Marcelo Fontes marcelofontesfsa@yahoo.com.br marcelofontesfsa@yahoo.com.br

EM VPN

EM VPN

RESUMO RESUMO A VPN (

A VPN (Virtual Private NetworkVirtual Private Network) é uma forma simples e de baixo custo de se) é uma forma simples e de baixo custo de se

estabelecer conexões por aproveitar a infraestrutura disponibilizada pela estabelecer conexões por aproveitar a infraestrutura disponibilizada pela

Internet

Internet. Uma VPN deve oferecer mecanismos que garantam a segurança da. Uma VPN deve oferecer mecanismos que garantam a segurança da

comunicação em um meio inseguro como a

comunicação em um meio inseguro como aInternetInternet. Os principais protocolos. Os principais protocolos

adotados e difundidos em VPNs para garantir a segurança nas adotados e difundidos em VPNs para garantir a segurança nas comunicações através da

comunicações através da Internet Internet são o IPSEC ( são o IPSEC (Internet ProInternet Prottocol ocol SecuritySecurity) e o) e o

SSL/TLS (

SSL/TLS (Secure Socket Layer/Transport Layer SecureSecure Socket Layer/Transport Layer Secure). Esses protocolos são). Esses protocolos são

apresentados e comparados por meio de suas principais características, tais apresentados e comparados por meio de suas principais características, tais como formas de autenticação, criptografia, estabilidade, escalabilidade, como formas de autenticação, criptografia, estabilidade, escalabilidade, algoritmos de trocas de chaves e gerenciamento, e também são apresentados algoritmos de trocas de chaves e gerenciamento, e também são apresentados os seus benefícios e limitações quando empregados nas VPNs.

os seus benefícios e limitações quando empregados nas VPNs.

Palavras-Chave

Palavras-Chave: VPN; SSL; IPSEC; Segurança;: VPN; SSL; IPSEC; Segurança;

ABSTRACT ABSTRACT

The VPN is a simple and low-cost way of establishing connections by using The VPN is a simple and low-cost way of establishing connections by using the infrastructure available through the internet. A VPN has to provide the infrastructure available through the internet. A VPN has to provide mechanisms which guarantees communication security inside an insecure mechanisms which guarantees communication security inside an insecure environment like the internet. The main protocols adopted and disseminated environment like the internet. The main protocols adopted and disseminated in VPNs to guarantee security to internet based communications are the in VPNs to guarantee security to internet based communications are the IPSEC (Internet Protocol Security) and the SSL/TLS (Secure Socket IPSEC (Internet Protocol Security) and the SSL/TLS (Secure Socket Layer/Transport Layer

Layer/Transport Layer Secure). Those protocols are here presented andSecure). Those protocols are here presented and compared by their characteristics, such as authentication method, compared by their characteristics, such as authentication method, encryption, stability, scalability, key changing algorithms and management. encryption, stability, scalability, key changing algorithms and management. Benefits and limitations when VPNs are applied is also shown.

Benefits and limitations when VPNs are applied is also shown.

Keywords

Keywords : VPN; SSL; IPSEC; Security;: VPN; SSL; IPSEC; Security;

 Anhanguera Edu

 Anhanguera Educacional S.A.cacional S.A.

Correspondência/Contato Correspondência/Contato

 Alameda

 Alameda Maria TerezaMaria Tereza, 2000, 2000 Valinhos, São Paulo Valinhos, São Paulo CEP 13.278-181 CEP 13.278-181 rc.ipade@unianhanguera.edu.br rc.ipade@unianhanguera.edu.br Coordenação Coordenação

Instituto de Pesquisas Aplicadas e Instituto de Pesquisas Aplicadas e Desenv

Desenvololvv imento Educacional - IPADEimento Educacional - IPADE  Artigo Origina

 Artigo Original / Informl / Informe Tée Técnico / Recnico / Resenhasenha Recebido em: 30/12/1899

Recebido em: 30/12/1899  A

(2)

1.

1.

INTRODUÇÃO

INTRODUÇÃO

O crescimento do uso da

O crescimento do uso da World Wide WebWorld Wide Web  para fins comerciais,  para fins comerciais, IntranetsIntranets,, ExtranetsExtranets,,

aplicações B2B (

aplicações B2B (Business to BusinessBusiness to Business) faz-se necessário o us) faz-se necessário o uso de estratégias o de estratégias e de protocolose de protocolos

de redes

de redes que garantam a segurança na cque garantam a segurança na comomunicação através daunicação através da InternetInternet..

Muitas empresas possuem vários escritórios e fábricas espalhadas por estados e Muitas empresas possuem vários escritórios e fábricas espalhadas por estados e até em outros países e adotam a infraestrutura da

até em outros países e adotam a infraestrutura da InternetInternet para poderem conectar-se de para poderem conectar-se de

forma segura e eficaz para compartilhar recursos como Banco de Dados,

forma segura e eficaz para compartilhar recursos como Banco de Dados, softwaressoftwares dede

gestão, entre outras aplicações remotas. gestão, entre outras aplicações remotas.

Outro fator importante é o crescimento dos funcionários móveis que utilizam Outro fator importante é o crescimento dos funcionários móveis que utilizam computadores portáteis para acessarem as redes da corporação para desenvolverem os computadores portáteis para acessarem as redes da corporação para desenvolverem os seus tra

seus trabbalhos alhos normalmennormalmente como se te como se estivessestivessem naem nas dependês dependênciancias da comps da companhia.anhia. Neste contexto, as VPNs

Neste contexto, as VPNs (Virtual Private Network(Virtual Private Network) entram como um mecanismo) entram como um mecanismo

de garantir a segurança e possibilitar o acesso somente às pessoas autorizadas, e assim de garantir a segurança e possibilitar o acesso somente às pessoas autorizadas, e assim permitir que os

permitir que os recursos da crecursos da comompanhia não fiquem disponívepanhia não fiquem disponíveis à is à pessoas estranhas.pessoas estranhas.

Atualmente existem inúmeros fabricantes que oferecem diversas soluções de Atualmente existem inúmeros fabricantes que oferecem diversas soluções de VPNs, principalmente baseadas nos protocolos IPSEC (

VPNs, principalmente baseadas nos protocolos IPSEC (Internet Protocol Security)Internet Protocol Security) ee

SSL/TLS (

SSL/TLS (Secure Transport Layer / Transport Layer SecuritySecure Transport Layer / Transport Layer Security) para garantir a segurança e a) para garantir a segurança e a

operação adequada das VPNs. operação adequada das VPNs.

Esse trabalho tem por objetivo apresentar os conceitos de VPNs e mostrar as Esse trabalho tem por objetivo apresentar os conceitos de VPNs e mostrar as características gerais dos protocolos IPSEC e SSL/TLS e compará-los quando aplicados características gerais dos protocolos IPSEC e SSL/TLS e compará-los quando aplicados em VPNs.

em VPNs.

2.

2.

VPN

VPN

(VIRTUAL PRIVATE NETWORK)(VIRTUAL PRIVATE NETWORK) O conceito de VPN (

O conceito de VPN (Virtual Private NetworkVirtual Private Network) consiste de uma rede de comunicações) consiste de uma rede de comunicações

adotada por uma empresa de forma privada, através de uma rede pública ou privada adotada por uma empresa de forma privada, através de uma rede pública ou privada qualquer

qualquer (MORIMOT(MORIMOTO, O, 2009).2009).

Adota-se normalmente a Internet, ao invés de utilizar uma linha privativa na Adota-se normalmente a Internet, ao invés de utilizar uma linha privativa na implementação de uma rede corporativa. Basicamente VPNs são túneis de criptografia implementação de uma rede corporativa. Basicamente VPNs são túneis de criptografia entre dois pontos autorizados para transferência segura de informação entre redes entre dois pontos autorizados para transferência segura de informação entre redes corporativas ou usuários remotos.

corporativas ou usuários remotos.

A segurança é uma importante função da VPN, sendo fundamental a proteção A segurança é uma importante função da VPN, sendo fundamental a proteção dos dados privados que trafegam pela Internet, considerado um meio inseguro de dos dados privados que trafegam pela Internet, considerado um meio inseguro de transmissão, não sejam alterados ou interceptados (CHIN, 2004).

(3)

Além da proteção, as VPNs oferecem serviços de conexões entre as corporações através da Internet. Possibilitam também criar conexões dial-up  criptografadas que podem ser utilizadas

por usuários móveis ou remotos, bem como por filiais distantes de uma empresa.

As VPNs também permitem reduzir os custos envolvidos em comunicação, eliminando a necessidade de compra de links dedicados de longa distância que são substituídos pela Internet

(NAKAMURA; GEUS, 2007).

As redes locais por meio de links dedicados ou discados conectam-se a algum provedor

de acesso local e interligam-se a outras LANs, possibilitando o fluxo de dados pela Internet.

Esta solução pode ser útil sob o ponto de vista econômico, principalmente nos casos em que enlaces nacionais e internacionais estão envolvidos, permitindo a simplificação da operação da WAN, onde a conexão LAN-WAN-LAN fica parcialmente sobre a responsabilidade dos provedores de acesso.

3. REQUISITOS BÁSICOS DE UMA VPN

A VPN deve como requisito básico permitir o acesso de clientes remotos autorizados aos recursos da LAN corporativa, viabilizar a conexão de LANs para possibilitar o acesso de filiais, compartilhar recursos e informações, assegurar privacidade e integridade de dados ao atravessar a rede corporativa e a Internet. A seguir são apresentadas algumas características mínimas necessárias em uma VPN.

 Autenticação de usuários para verificar a identidade do usuário,

restringindo o acesso às pessoas autorizadas. Dispor de mecanismos de auditoria, fornecendo informações referentes aos acessos efetuados;

 gerenciamento de endereços para que o endereço do cliente na sua

rede privada não seja divulgado, sendo adotados endereços fictícios para o tráfego externo;

 criptografia de dados para que os dados trafeguem na rede

pública ou privada em um formato cifrado para no caso de ser interceptado não serem decodificados;

 gerenciamento de chaves para garantir a segurança das

mensagens criptografadas, deve funcionar como um segredo compartilhado exclusivamente entre as partes envolvidas na comunicação. O gerenciamento de chaves deve garantir a troca periódica das chaves para manter a comunicação de forma segura;

 múltiplos protocolos para suportar a diversidade de protocolos

existentes torna-se necessário oferecer suportes a protocolos padrão usados em redes públicas, tais como o IP.

(4)

3.1. Tunelamento

As VPNs são baseadas na tecnologia de tunelamento que adotam o processo de encapsular um protocolo dentro do outro. O uso de encapsulamento em VPNs possibilita criptografar o pacote que será transportado.

Este pacote encapsulado trafega através da Internet até alcançar o destino onde é desencapsulado e decriptografado, retornando ao seu formato original.

Outra possibilidade é encapsular pacotes de um determinado protocolo em protocolos diferentes. Por exemplo, pacotes IPX (Internet Packet Exchange)  podem ser

encapsulados e transportados dentro de pacotes TCP/IP.

O protocolo de tunelamento encapsula o pacote por meio de um cabeçalho adicional que contém as informações de roteamento que permitem a travessia de pacotes ao longo das redes intermediárias. Os pacotes encapsulados são roteados entre as extremidades do túnel na rede intermediária, retornando ao estado original no seu destino final.

A rede intermediária em questão por onde os pacotes trafegaram pode ser qualquer rede pública ou privada.

3.2. Protocolos de Tunelamento

Em uma VPN para se estabelecer um túnel é preciso que as duas extremidades utilizem o mesmo protocolo de tunelamento. O tunelamento pode ocorrer nas camadas 2 e 3 do modelo OSI(Open System Interconnection).

Nos protocolos de camada 2 um túnel é semelhante a uma sessão, de modo que as duas partes do túnel negociam os parâmetros de configuração para estabelecer o túnel. Nestes parâmetros estão envolvidos o endereço, criptografia e compressão, sendo o gerenciamento realizado pelos protocolos de manutenção.

Os protocolos de camada 3 ao estabelecer o túnel, os dados já podem ser enviados. O usuário do túnel, que pode ser o cliente ou o servidor, utiliza o protocolo de tunelamento para a transferência de dados, onde um cabeçalho é anexado para a realização do transporte do pacote. Então o cliente envia o pacote encapsulado que será roteado até o servidor no outro ponto do túnel.

O servidor recebe o pacote, desencapsula removendo o cabeçalho adicional e encaminha o pacote original à rede de destino. Neste método não existe a fase de manutenção e o funcionamento do túnel entre o cliente e o servidor é semelhante ao dos protocolos de camada 2.

(5)

Nas seções a seguir serão apresentados os protocolos de tunelamento das camadas 2 e 3.

3.3. Protocolos de Tunelamento de camada 2

Adotado para o transporte de protocolos do nível 3, utilizando quadros como unidade de troca, encapsulando os pacotes da camada 3,como por exemplo em quadros PPP (Point –

to– Point Protocol).

São citados abaixo os protocolos de tunelamento de camada 2:

 PPTP (Point-to-Point-Tunneling Protocol) da Microsoft possibilita

que o trafego IP, IPX e NetBEUI sejam criptografados e encapsulados para serem enviados através de redes públicas ou privadas;

 L2TP (Layer 2 Tunneling Protocol) permite que o tráfego IP, IPX,

NetBEUI sejam criptografados e enviados através de canais de datagrama, tais como IP, X25, Frame Relay ou ATM;

 L2F (Layer 2 Forwarding) é um protocolo da Cisco utilizado para

VPNs discadas.

3.4. Protocolos de Tunelamento de camada 3

É criado um cabeçalho adicional do protocolo IP antes de ser enviado através da rede, o modo túnel da camada 3 é descrito abaixo:

 O IPSEC Tunnel Mode possibilita que os pacotes IP sejam

criptografados e encapsulados com cabeçalho adicional deste mesmo protocolo para ser transportado através de redes IP.

Mais detalhes sobre o IPSEC serão apresentados na seção sobre VPN IPSEC.

4. VPN IPSEC

A VPN IPSEC utiliza a completa infraestrutura oferecida pelo IPSEC para garantir os requisitos básicos de seguranças mencionados anteriormente.

Nas próximas seções serão apresentadas as características e uma visão geral dos protocolos que compõem a arquitetura do IPSEC e os mecanismos adotados para atingir os objetivos de uma VPN.

(6)

4.1.IPSEC(INTERNET P ROTOCOL SECURITY)

Em 1995 o IPSEC (Internet Protocol Security) surgiu para atender às necessidades de

segurança contra o monitoramento e o controle de tráfegos não autorizados através das redes de comunicações.

Projetado pelo Internet Engineering Task Force  (IETF), o IPSEC é um protocolo

padrão da camada 3 que tem por finalidade oferecer transferências seguras fim a fim de informações através de uma rede IP pública ou privada.

O IPSEC é uma plataforma aberta formada por um conjunto de protocolos que proporcionam serviços de autenticação, integridade, controle de acesso e confidencialidade na camada de rede IP, operando em IPv4 ou IPv6.

A tecnologia IPSEC é uma das opções para implementação de VPNs e seus serviços podem ser adotados por quaisquer protocolos das camadas superiores como TCP, UDP, ICMP, BGP, entre outros (SILVA; TEIXERA, 2004).

A especificação do IPSEC consiste em diversos documentos, os principais deles, emitidos em novembro de 1998, são:

 RFC 2401: Uma visão geral de uma arquitetura de segurança;  RFC 2402: Descrição de uma extensão de autenticação de pacotes

para IPv4 e IPv6;

 RFC 2406: Descrição de uma extensão de criptografia de pacote

para IPv4 e IPv6;

 RFC 2408: Especificação das capacidades de gerenciamento das

chaves.

Além dos documentos mencionados acima, O IPSec é composto por uma série de outros que foram publicados pelo IP Security Protocol Working Group

estabelecido pelo IETF (Internet Engineering Task Force) para padronizar as informações

referentes à tecnologia.

Nas próximas seções, serão apresentados os conceitos do IPSEC bem como as suas características de arquitetura, criptografia, autenticação e serviços.

4.2. Arquitetura do IPSEC

Como mencionado na seção anterior, o IPSEC está especificado em uma série de RFCs, e por definição sua arquitetura aberta possibilita a inclusão de outros algoritmos de autenticação e criptografia. A RFC 2411, IP Security Document Roadmap, apresenta regras

(7)

descrevem o conjunto de protocolos que formam a arquitetura IPSEC, conforme demonstrado abaixo:

Figura 1 - Visão Geral do Documento IPSEC

A seguir é apresentada uma breve descrição de cada item descrito noroadmap:

 Arquitetura: Conceitos gerais, requisitos de segurança, definições e

mecanismos definindo a tecnologia;

 encapsulamento Seguro do payload: Formato do pacote e questões gerais

relacionadas ao uso do ESP (Encapsulating Security Payload)  para

criptografia de pacote, e opcionalmente autenticação;

 autenticação do Cabeçalho: Formato do pacote e questões gerais

relacionadas ao uso do AH (Authentication Header)  na autenticação de

pacotes;

 algoritmo de criptografia: Um conjunto de documentos que descrevem

como diversos algoritmos de criptografia são usados para ESP;

 algoritmo de autenticação: Documentos que descrevem como vários

algoritmos de autenticação são usados para AH e para a opção de autenticação do ESP;

 gerenciamento de chaves: Documentos que descrevem esquemas para o

gerenciamento das chaves;

 domínio de interpretação (DOI): Valores para os outros documentos se

relacionarem, incluindo identificadores para algoritmos aprovados de criptografia e autenticação, além de parâmetros operacionais.

A arquitetura IPSEC possibilita selecionar entre uma série de protocolos e algoritmos de segurança. Os serviços de segurança são escolhidos a partir de um menu de serviços os quais o usuário pode escolher recursos, tais como controle de acesso, integridade, autenticação, proteção contra replay (“antireplay”) e confidencialidade. O IPSEC também

(8)

permite controlar a granularidade com que os serviços de segurança são aplicados, permitindo proteger fluxos estreitos ou fluxos largos.

4.3. AH (A u t h e n t i c a ti o n H e a d e r )  

AH (Authentication Header) é um mecanismo que oferece integridade sem conexões e

autenticação da origem dos dados para os datagramas IP, podem ser adotados recursos opcionais para proteção contra reproduções.

A garantia de segurança é realizada através da inclusão de informação para autenticação no pacote obtido por meio de um algoritmo aplicado sobre o conteúdo dos campos do datagrama IP, excluindo-se aqueles que sofrem alterações durante o transporte. O AH vem após o cabeçalho IPv4 ou é uma extensão do IPv6, sendo demonstrado na figura a seguir:

Figura 2 - AH Authentication Header  do IPSEC

O campo Next Header   identifica o tipo da próxima carga útil após o AH. O Payload Length especifica o tamanho do AH em palavras de 32 bits menos 2.

O CampoReserved é reservado para uso futuro, sendo atualmente definido como

0. O campo Security Parameters Index é um valor de 32 bits usado para identificar a

associação de segurança para o datagrama, em combinação com o endereço IP de destino.

Sequence Number   contém um contador que aumenta progressivamente, sendo utilizado

para proteção contra o replay. O Authentication Data é um campo de tamanho variável que

contém o código de integridade de mensagem para o pacote.

4.4.ESP (E n c a p s u l a t i n g S e cu r i ty P a y l o a d )

O ESP (Encapsulating Security Payload)  fornece serviços de confiabilidade, adicionando

confiabilidade de conteúdo de mensagens e a confiabilidade limitada de fluxo de tráfego, sendo oferecido opcionalmente recurso de autenticação. A seguir é demonstrado a estrutura do ESP:

(9)

Figura 3 - ESP do IPSEC

O SPI (Security Parameters Index)  é um campo de 32 bits que identifica uma

associação de segurança. O Sequence Number (32 bits) oferece uma função antireplay,

idêntico ao AH.

O campo Payload Data  é um campo variável, sendo um segmento do nível de

transporte ou pacote IP protegido por criptografia. O Padding é requerido por alguns

algoritmos de criptografia, também requerido para que o texto cifrado resultante termine em um limite de 4 bytes.

O Pad Length  de 8 bits indica o número de bytes  de complementação, o campo Next Header  serve para identificar o tipo de dados contidos no campo de dados do Payload.

Por fim, o campo Authentication Data, necessariamente composto de um número inteiro de

palavras de 32 bits, contém o valor de verificação de integridade calculado sobre o pacote

ESP, exceto o campo ESP.

4.5. Algoritmos de Criptografia

A especificação do IPSEC dita que uma implementação precisa oferecer suporte a DES

(Data Encryption Standard) no modo encadeamento de cifra de bloco (STALLINGS, 2008).

Diversos outros algoritmos receberam identificadores no documento DOI, sendo facilmente adotados para criptografia no IPSEC. Abaixo são relacionados os principais e mais frequentemente adotados:

 Three-key triple DES;  RC5;

(10)

 CAST;  Blowfish.

4.6. Modos do IPSEC

O IPSEC trabalha de dois modos, sendo eles o Túnel e o Transporte. No modo Transporte a autenticação e a criptografia é aplicada ao  payload  de IP entregue ao host, porém o

cabeçalho não é protegido.

O modo Túnel a autenticação é aplicada ao pacote IP inteiro entregue ao destino de IP externo, onde a autenticação é realizada no destino, e todo o pacote IP interno é protegido pelo mecanismo de privacidade, para entrega ao destino de IP interno. Nos dois casos, a autenticação é aplicada ao texto cifrado, em vez do texto claro.

4.7. Gerenciamento de chaves

Envolve a determinação e a distribuição de chaves secretas. O requisito típico é o uso de quatro chaves para a comunicação entre duas aplicações pares de transmissão e recepção tanto no AH quanto no ESP.

O documento da arquitetura IPSEC exige suporte para dois tipos de gerenciamento de chaves, sendo eles o Manual e o Automatizado.

O gerenciamento de chaves Manual permite a configuração de cada sistema com suas próprias chaves e com as chaves de outros sistemas em comunicação, sendo muito adotado em ambientes pequenos e estáticos.

O gerenciamento Automatizado possibilita a criação de chaves para SAs (Security Associations) sob demanda, facilitando o uso de chaves em um grande sistema distribuído com uma configuração que não é constante. O protocolo para o gerenciamento de chaves padrão do IPSEC é o ISAKMP/Oakley.

Oakley é um protocolo de troca de chaves baseado no algoritmo Diffie-Hellman com segurança adicional e não dita formatos específicos. O ISAKMP (Internet Security  Association and Key Management Protocol) oferece uma infraestrutura para o gerenciamento

de chaves pela Internet com suporte a um protocolo específico, com formatos para a negociação de atributos de segurança.

O ISAKMP consiste de um conjunto de tipos de mensagens que permite o uso de uma série de algoritmos de troca de chaves. Já o Oakley é o algoritmo de troca de chaves especifico exigido para uso com a versão final do ISAKMP.

(11)

5.

VPN SSL

(SECURE SOCKET LAYER)

A VPN SSL utiliza o protocolo SSL (Secure Socket Layer) para disponibilizar aos usuários

remotos acesso aos recursos da rede da companhia através do navegador web. Todos os

objetivos de uma VPN mencionados anteriormente são alcançados através da infraestrutura oferecido pelos serviços do SSL.

Nas próximas seções serão apresentados os conceitos do SSL, bem como os recursos que garantem a segurança da transmissão de dados.

5.1. SSL (S e cu r e S o c k e t L a y e r )

O protocolo SSL foi criado pela Netscape Communications Corporation, sendo implementado na maioria dos navegadores web  da atualidade. O objetivo do SSL é

permitir criar um método seguro para transmissão de dados criptografados entre o cliente e o servidor.

Atualmente na versão 3.0, as principais características do SSL são independência de protocolo, segurança na transmissão Cliente/Servidor, interoperabilidade, extensibilidade e eficiência.

5.2. Arquitetura do SSL

O SSL utiliza o TCP (Transmission Control Protocol) para oferecer serviços seguros e

confiáveis de ponto a ponto. O protocolo SSL é dividido em duas Camadas, sendo uma de mais baixo nível que trabalha com o protocolo de transporte que é denominado protocolo

Record.

Este protocolo é responsável por encapsular os dados das camadas superiores em pacotes compactados e cifrados e encaminhá-los à camada de transporte. Na camada superior, encontra-se o protocolo de Handshake, o CCSP (Change Cipher Spec Protocol) e o  Alert Protocol.

Esses protocolos mencionados são utilizados no gerenciamento de troca de chaves e serão apresentados os conceitos gerais nas próximas seções.

(12)

Abaixo é apresentada a representação da pilha de protocolos do SSL.

Figura 4 - Pilha de protocolos SSL

5.3. ProtocoloR e c o r d SSL

O protocolo Record SSL fornece serviços de confiabilidade e integridade de mensagens nas

conexões SSL. Ele define um conjunto de formatos e procedimentos pelos quais as mensagens da camada de aplicação são fragmentadas ou misturadas em blocos de um tamanho adequado para as próximas etapas.

O protocolo Record  também fornece procedimentos de compactação, proteção,

criptografia para as mensagens passadas à camada inferior. Os dados não interpretados das camadas superiores em forma de blocos de tamanhos variáveis são encapsulados em registros e dependendo do tamanho sofrem uma fragmentação. O conteúdo do registro sofre compactação, em seguida são cifrados usando os algoritmos e chaves definidos pelo processo deHandshake.

Na seção a seguir é apresentada uma visão geral do protocolo deHandshake.

5.4. Protocolo de H a n d s h a k e SSL

Constituído de duas fases, onde na primeira fase é feita a escolha da chave entre o cliente e o servidor e na segunda é realizada a autenticação (caso requerida) e o fim do Handshake.

Completado o Handshake, o processo de transferência de dados entre aplicações pode ser

iniciado.

O Handshake é responsável por manter a consistência dos estados de uma sessão

tanto no cliente quanto no servidor. Uma mesma conexão SSL pode incluir várias conexões a partir dos mesmos dados que formam uma sessão SSL.

(13)

 Session ID é um valor arbitrário escolhido pelo servidor para identificar

esta sessão;

  peer certificate é usado para certificar uma organização. Está no formato

X.509 e dentre outras coisas encontra-se dentro dele a chave pública da entidade que está utilizando aquela aplicação;

 compression method é o algoritmo usado na compressão dos dados;

 cipherspec que especifica que conjunto de algoritmos de cifragem e de hash

serão utilizados;

 mastersecret é um segredo de 48 bytes compartilhado pelo servidor e pelo

cliente;

 isresumable é uma flag utilizada para indicar se a sessão pode ou não ser

retomada ao iniciar uma nova conexão.

O Handshake pode ser realizado de formas diferentes, dependendo se há ou não

autenticação das partes envolvidas ou se há uma sessão de retomada. A seguir são demonstradas as mensagens trocadas durante um processo deHandshake:

Figura 5 - Protocolo de Handsk ake

Na primeira fase são estabelecidas as verificações da versão do protocolo, ID de sessão, conjunto de cifras, método de compactação e números aleatórios. A segunda fase o servidor pode enviar certificado, troca de chaves e solicitar certificado, e o servidor sinaliza o final da fase da mensagem HELLO.

Na terceira fase o certificado é enviado pelo cliente, caso solicitado, e as chaves são enviadas, sendo que o cliente pode enviar a verificação do certificado. A última fase é trocar o conjunto de cifras e encerrar o handkshake, após finalizar, os dados são

(14)

5.5. Protocolo C h a n g e C i p h e r S p e c  

Formado por uma única mensagem, a change_cipher_spec, onde sua função é sinalizar

alguma modificação nas estratégias ou parâmetros de segurança utilizados. Quando uma das partes do protocolo recebe uma mensagem change_cipher_spec durante o processo de Handshake, ela automaticamente troca as informações do estado atual de leitura pelos

dados do estado pendente de leitura.

No momento que uma das partes envia uma change_cipher_spec, ela

automaticamente atualiza seu estado atual de escrita para o estado pendente de escrita. Qualquer mensagem enviada ou recebida após esta mensagem será trabalhada utilizando a nova estratégia de segurança, negociada no processo de handshake. Esta mensagem

sempre precederá a mensagem deFINISHED.

Uma mensagem change_cipher_spec  inesperada ocasiona o envio de um alerta unexpected_message.

5.6. Protocolo A l e r t  

Cada erro gerado é enviado uma mensagem de alerta para o outro lado da conexão, dependendo do nível do erro a conexão é abortada e as mensagens de alerta são tratadas como mensagens normais, sofrem compactação e cifragem.

Os níveis das mensagens de alerta são warnings e fatals. Os warnings são simples

avisos que informam que alguma coisa não normal aconteceu ou foi detectada.

Estes tipos de alertas podem gerar um fechamento da conexão dependendo da forma em que o SSL foi implementado. Os alertas fatais sempre ocasionam o fechamento da conexão. Estes alertas dizem respeito ao comprometimento de algum segredo ou detecção de alguma falha durante a conexão.

Todos os dados a respeito de uma sessão devem ser apagados quando um erro fatal é enviado ou recebido durante uma conexão.

5.7. Algoritmos utilizados no SSL

Os algoritmos adotados no SSL para troca de chaves mais comuns são apresentados abaixo:

 Algoritmos simétricos são utilizados no sigilo dos dados

trafegados durante uma sessão SSL. Na atual especificação do SSL são usados os algoritmos RC4, DES, 3DES, RC2, IDEA eFortezza;

 algoritmos assimétricos e de derivação de chaves: algoritmos

(15)

digital. Neste grupo estão o RSA, o DAS, somente assinatura, e o

Diffie-Hellman para derivação de chaves;

 algoritmos de hash  são usados para prover a integridade das

mensagens enviadas e no processo de criação dos segredos. São especificados o MD5 e o SHA.

Os algoritmos são escolhidos no protocolo através do uso das ciphersuites, basicamente são

utilizados os campos PROT_KE_SIGALG_WITH_SIMALG_MAC   onde, PROT   é na atual

especificação o valor SSL ; KE  é o algoritmo de troca de chaves; SIGALG  é o algoritmo

usado para as assinaturas digitais; SIMALG é o algoritmo simétrico; e MAC ( Message  Authentication Code) é o algoritmo de hash.

5.8. TLS (T r a n s p o r L a y e r S e cu r i ty )  

O TLS (Transport Layer Security) é uma iniciativa de padronização do IETF com o intuito

de produzir um padrão de Internet que seja uma versão do SSL. Definido na RFC 2246, sendo muito semelhante à versão 3 do SSL, onde praticamente todos os campos dos protocolos que o compõem possuem os mesmos formatos.

Os protocolos Record e Handshake possuem as mesmas características do SSL,

apenas o campo versão tem seu valor alterado, sendo no TLS a versão principal 3 e a secundária 1. No restante, todos os outros cabeçalhos mantêm-se de forma idêntica ao padrão SSL.

Os códigos de alerta do TLS são os mesmos definidos no SSL, com exceção de

no_certificate,também foram adicionados alguns códigos fatais.

O MAC ( Message Authentication Code) possui diferenças em relação ao SSL 3.0,

sendo adotado no TLS o algoritimo HMAC (Hashing for  Message Authentication Code).

TLS admite todas as técnicas para de troca de chaves, exceto o Fortezza. Os

algoritmos de criptografia simétrica são os mesmos do SSL versão 3 menos o Fortezza.

A versão do TLS também é conhecida como SSL 3.1 ou SSL/TLS, mas ainda não está definido se substituirá ao SSL por ser um pouco mais forte e robusto, no entanto permanece o problema de chaves RC4 fracas (TANENBAUM, 2003).

6.

COMPARANDO IPSEC E SSL/TLS EM VPN

Os protocolos IPSEC e o SSL/TLS são as soluções mais comuns em projetos de VPNs devido à suas características mencionadas nas seções anteriores.

(16)

Apesar de serem os protocolos mais comuns, não há interoperabilidade entre o SSL/TLS e o IPSEC, eles trabalham em camadas diferentes do modelo TCP e são adotados de acordo com as decisões do projeto (PETERSON; DAVIE, 2003).

O SSL/TLS opera na camada de transporte do modelo TCP e as aplicações devem ser construídas para suportá-lo. Normalmente as VPNs SSL/TLS são acessadas via

web browser,embora seja possível implementá-las em outras aplicações.

Os benefícios do SSL/TLS são a transparência para os protocolos dos níveis mais altos, facilidade no uso em e-commerce, não há conectividade permanente entre o cliente e

o servidor, compatibilidade com praticamente todos os web browsers  que incluem a

verificação e a inclusão de certificados, além da facilidade de gestão e escalabilidade.

As limitações incluem pouco suporte ao tráfego UDP, algumas aplicações podem ficar limitadas apenas ao browser, SSL/TLS pode não ter todas as configurações atendidas em diferentes servidores e clientes para autenticação, pode se tornar lento no caso de utilizar uma autoridade certificadora externa para assinar vários certificados digitais.

 Já o IPSEC opera na camada de rede do modelo TCP, os pacotes são encapsulados em túneis não importando se são UDP, TCP ou qualquer pacote de outro protocolo, sendo atingida a transparência total.

Os benefícios do IPSEC são a capacidade de ser acrescentado a qualquer versão do protocolo IP (IPv4 ou IPv6) através de cabeçalhos adicionais, possuir autenticação, confidencialidade e gerenciamento de chaves. A autenticação pode ser aplicada a todo o pacote IP original ou a todo o pacote exceto o cabeçalho IP, possibilita segurança ao encapsular o payload, e permitir ao usuário escolher o tipo de técnica para gerenciamento

de chaves.

As limitações do IPSEC são a complexidade de implementação, dificuldade de aplicação para usuários móveis, requer suporte em dispositivos de hardware (routers, switchs, servers), problemas de incompatibilidade entre diferentes projetos, caso o padrão

não tenha sido seguido

Na próxima seção serão apresentadas as comparações técnicas entre o IPSEC e o SSL/TLS.

(17)

6.1. Comparação técnica entre IPSEC e SSL/TLS

As próximas tabelas apresentam algumas das principais características técnicas do IPSEC e do SSL/TLS, bem como suas limitações e benefícios quando adotados na aplicação em VPNs.

Tabela 1 - Comparação das Ca racterísticas Gerais

VPN - baseado em SSL/TLS  VPN - baseado em IPSec

Autenticação de uma via / token Autenticação de duas vias usando tokens

Autenticação de duas vias / tokens

Certificado Digital Certificado Digital

Forte Forte

Baseada no Browser Depende da implementação Segurança fim a fim Da borda para o cliente Recursos criptografados para o

cliente Cliente de VPN gateway criptografado

Acessibilidade

Em qualquer lugar a qualquer hora acesso a base de usuários

amplamente distribuídos

Acesso limitado à base de usuários bem definidos e controlados

 baixo alto

 Não há nenhum software cliente

adicional necessário Requer software de cliente gerenciado instalação Plug and play Implantação em longo prazo

 Nenhum software de cliente adicional ou instalação de hardware

Requer o software no lado cliente e ou hardware

Utilizado através de browsers - fácil

uso Difícil para usuários não técnicos

 Não requer um treinamento avançado Requer pessoas treinadas.

Aplicações baseadas na Web Todos os serviços baseados em IP  File sharing 

 E-mail 

Usuários Clientes, parceiros, colaboradores, usuários remotos, vendedores

Mais apropriado para uso interno na companhia

Facilmente implantado e escalonável Escalonável no lado do servidor  Dificuldade em escalonar clientes Simplicidade Aplicações Escalabilidade Autenticação Criptografia Segurança Custo Instalação

(18)

Tabela 2 - Características Gerais –  Continuação

Função IPSec SSL

Configuração Complexa Simples

Autenticação do Cliente Obrigatória Opcional

Pre-Shared Key Sim Não

Problemas de Interoperabilidade Sim Não

Suporte ao TCP Todas Algumas

Suporte aoUDP Sim Não

Taxa de Transmissão Alta Alta

Compressão Sim Apenas no SSL

Tempo de Handshake Lento Rápido

Fonte: (JUNIPER NETWORKS, 2010)

A próxima tabela compara as aplicações suportadas pelas VPNs.

Tabela 3 - Tipos d e Aplicações Suportadas

VPN - baseado em SSL/TLS  VPN - baseado em IPSec

Aplicações Cliente/Servidpr  Sim Sim

Aplicações Legadas Sim Sim

Aplicações HTTP Sim Sim

 File sharing  Sim Sim

Aplicações em Mainframe Sim Sim

Terminal servers Sim Sim

Dependência aplicação de Server

 socket Sim Sim

Aplicações Web Sim Sim

Conteúdo de Intranet  Sim Sim

Voz sobre IP  Não Sim

 File Servers Sim Sim

Controle de acesso para Intranets

e Extranets Sim Não

 Email  Sim Sim

Fonte: (ARRAY NETWORKS)

A tabela a seguir apresenta as características de acordo com o ambiente de tecnologia da informação.

Tabela 4 - Comparação por a mb iente de tecnologia

VPN - baseado em IPSEC VPN - baseado em SSL

Tipo de conexão Fixa Transitória

Tipo de dispositivo Dispositivo Gerenciado Vários dispositivos

Tipo de Acesso site-to-site Remoto

Controle de Acesso   Firewall  Através de políticas

(19)

A tabela a seguir demonstra os modelos de segurança aplicados à VPNs.

Tabela 5 –  Modelo de seg urança

VPN - baseado em IPSEC VPN - baseado em SSL

Proxy protection  Não Sim

Strong user authentication Proprietário Sim

Strong central authorization Limitado Sim

Suporte à Single Sign-On  (SSO)  Não Sim

Dual/Stacked Authentication  Não Sim

Proibe a visibilidade de nomes e IP  Não Sim

Forms-based Authentication  Não Sim

Controle ao nível de URL  Não Sim

Fonte: (ISSA– INFORMATION SYSTEMS SECURITY A SSOC IATION )

A seguir serão analisadas as características de mobilidade dos protocolos de VPN em questão.

Tabela 6 –  Características de mobilidade

VPN - baseado em IPSEC  VPN - baseado em SSL

Computador Corporativo Sim Sim

Acesso de casa ou de um hotel com  banda larga

software/hardware

adicionais Sim

Parceiro de negócio software/hardwareadicionais

Sim Através de um Firewall de outra

Companhia

software/hardware

adicionais Sim

Através de Quiosque Públicou ou PC

Público  Não Sim

Através de rede Wireless Sim Sim

PDA Wireless Sim

Varia de acordo com o dispositivo e Sistema

operacional

Dispositivo Macintosh  Não Sim

Dispositivo Linux Sim Sim

Smartphone  Não Sim

Fonte: (CONNEWS)

Nas tabelas a seguir são comparadas a eficiência dos algoritmos dos protocolos SSL/TLS e IPSEC.

Tabela 7 - Portas utilizadas

Protocolo Modo Portas ESP-50/TCP AH 51 50/TCP ESP-50/TCP AH 51 50/TCP Servidor  HTTPS 443 Cliente  Nenhum IPSec Cliente Servidor  SSL

(20)

Tabela 8 - Overhead 

Protocolo Modo Tamanho - Byte

ESP 32 ESPeAH 44 ESP 36 ESPeAH 48 HMAQ - MD5 21 HMAQ -SHA -1 25 SSL

IPSec - Modo Tunel

IPSec - Modo Transporte

Fonte: (SANOG - SOUTH ASIAN NETWORK OPERATORS GROUP)

Tabela 9 - Tempo de Handsh ake IPSEC

Modo Estabelecimento

Modo Principal (PSK) 97 msec Modo Agressivo (PSK) 56 msec Modo Principal (RSA) 170 msec

Fonte: (ALSHAMSI; SAITO, 20 04)

Tabela 10 - Tempo de Handshake SSL/TLS

Modo Estabelecimento

Autenticação do Servidor 41,7 msec

Autenticação do Cliente 74,8 msec

Autenticação do Servidor (Diffie - Hellman) 66,1 msec Autenticação do Cliente (Diffie - Hellman) 118,6 msec

Fonte: (ALSHAMSI; SAITO, 2004)

Tabela 11 - Tempo para t ransferência SS L/TLS

Algoritmo Tempo (s)

SemAlgoritmo 2

3DES - EDE - CBC - SHA 9,8

DES-CBC-SHA 5,5

RC4-128-SHA 3,8

RC4-128-MD5 3,4

EXP - RC2 - CBC - MD5 3,9

(21)

Tabela 12 - Tempo de trans ferência IPSEC

Algoritmo Tempo (s)

SemAlgoritmo 2

3DES-SHA-1 12

3DES-MD5 10,5

3DES - SHA-1 - DEFLATE 8,4

3DES - MD5 - DEFLATE 7,8

AES - 128 - SHA-1 4,5

(22)

7.

CONSIDERAÇÕES FINAIS

A VPN é uma forma segura e econômica de realizar conexões através da infraestrutura oferecida pela Internet. No entanto, a escolha do protocolo de segurança adequado

dependerá do tipo de aplicação, sendo que os protocolos IPSEC e SSL/TLS possuem benefícios e limitações, que de acordo com o tipo de projeto, poderá oferecer maior ou menor desempenho. O IPSEC possui características que o torna viável em aplicações site-to-site, estabelecendo uma conexão confiável entre dois pontos através de dispositivos e softwares que adotam o IPSEC. No entanto, não demonstra pontos fortes em ambientes em

que se exige um alto grau de mobilidade. Para os casos onde se exige um alto fator de mobilidade e escalabilidade, o SSL/TLS apresenta benefícios que o torna mais adequado a este tipo de ambiente. Além dos protocolos de seguranças tratados neste artigo, outros procedimentos devem ser adotados para garantir a segurança das comunicações através da Internet que não foram mencionados, sendo o foco desse trabalho apenas comparar as

(23)

AGRADECIMENTOS

Este artigo teve inspiração nas aulas de Redes  Wireless e Segurança de Redes ministradas

pelo professor Alessandro Coneglian Bianchini durante o curso de pós – graduação no

Centro Universitário Anhanguera.

REFERÊNCIAS

MORIMOTO, C. E.Servidores Linux. 2. ed. Porto Alegre: EdSUL, 2009. 73 6p.

CHIN, L. K. Rede Privada Virtual. Rio de Janeiro, jun. 2004. Seção NewsGeneration . Disponível

em: < http://www.rnp.br/newsgen/9811/vpn.html>. Acesso em: 28 jan. 2011.

NAKAMURA, E. S.; GEUS, P. L.Segurança de Redes em Ambientes Cooperativos. 2. ed. São

Paulo:Novatec, 2007. 482 p.

SILVA, S. J.;TEIXEIRA, R. C. Arquitetura IPSEC. Rio de Janeiro, abr. 2004. Seção NewsGeneration.

Disponível em: < http://www.rnp.br/newsgen/9907/ips ec3.html#ng-introducao>. Acesso em: 3 abr. 2011.

STALLINGS, W. Criptografia e se gurança de redes. 4. ed. São Paulo: Pearson, 2008. 492p.

TANENBAUM, A. S. Redes de Computadores. 4. ed. Rio de Janeiro: Campus, 2003. 945 p.

PETERSON, L. L. ; DAVIE, B. S .Redes de Computadores: Uma abordagem de sistema s. 3. ed. Rio

de Janeiro: Campus, 2003. 588p.

 JUNIPER NETWORKS. Whitepaper 2010: SSL versus IPSEC. Disponível em

<http://www.juniper.net/us/en/local/pdf/whitepapers/2000 232-en.pdf>. Acesso em: 5 abr. 2011.

ARRAY NETWORKS. SSL VPN vs. IPSEC VPN. Disponível em:

<http://www.arraynetworks.net/ufiles/File/SSLVPNvsIPSecWhitePaper021006.pdf>. Acesso em: 5 abr. 2011.

WITNETWORKS.IPSEC Protocol. Disponível em:

<http://www.witnetworks.com/Downloads/Aventail/IPSec_v.pdf>. Acesso em: 7 abr. 2011. ISSA.Aventail IPSec vs SSL. Disponível em:

<http://www.issa .org/info_resources/ISSA_20050421_Aventail_IPSec_vs_SSL_A4.pdf>. Acesso em: 6 abr. 2011.

CONNEWS.IPSEC vs. SSL. Disponível em:

<http://www.comnews.com/WhitePap er_Library/Security/pdfs/IPSevsSSL.pdf>. Acesso em: 8 abr. 2011.

SANOG.IPSEC vs.SSL. Disponível em:

<http://www.sanog.org/resources/sanog8/sanog8-ipsecvsssl-kudsi.pdf>. Acesso em: 10 abr. 201 1.

ALSHAMSI, A.; SAITO, T.Technical Comparison of IPSec and SSL. TOKYO, 2004. Disponível

em: < http://eprint.iacr.org/2004/314.pdf>. Acesso em: 12 abr. 2011.

 Autor Marcelo Fontes

Biografia  Profissional com 15 anos de experiência

em empresa de grande porte do seguimento de informática e redes de computadores, pós-graduado em redes de computadores e telecomunicações.

Referências

Documentos relacionados

A Revista Conexões é atualmente avaliada (Qualis Capes, classificação de periódicos para o quadriênio 2013-2016) em 14 áreas do conhecimento, conforme mostrado na Figura 6.. Em

originando as camadas do solo como veremos mais tarde: A formação do solo Intemperismo São mudanças sofridas na rocha matriz pela ação de chuva, vento variação de

Coach é um profissional dos tempos modernos atuando de maneira a ser um orientador e apoio no processo do executivo ser o melhor que puder, obtendo mais satisfação e

Conforme visto, o intuito inicial do microcrédito era para que fosse destinado às pessoas de baixa renda - localizadas em especial no setor informal - que não teriam como sustentar e

Um quadro de QinQ com uma etiqueta exterior 2 VLAN e uma etiqueta interna 4 VLAN é atribuído à .2 subinterface porque o dot1q 2 do encapsulamento pode combinar quadros do dot1q

Conforme a Máquina do Esporte havia calculado, ao mandar o jogo para o Pacaembu, o Bragantino pre- cisaria colocar pelo menos 20 mil torcedores para faturar mais do que no duelo

A ZURICH CAPITALIZAÇÃO efetuará o pagamento do prêmio ao participante ganhador no prazo máximo de 15 (quinze) dias corridos contado da data do recebimento dos documentos

Modelos de simulação contínua Modelos são usados para descrever a resposta de um sistema (bacia, encosta, perfil de solo) a sobre longos períodos de tempo. É necessário a