Aula30

505 visualizações

Publicada em

Publicada em: Educação
0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
505
No SlideShare
0
A partir de incorporações
0
Número de incorporações
3
Ações
Compartilhamentos
0
Downloads
28
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Aula30

  1. 1. Introdução Redes de Computadores Instituto de Informática - UFRGS Aspectos de segurança em TCP/IP Secure Socket Layer (SSL) Instituto de Informática - UFRGS A. Carissimi -26-juin-09 “Na Internet, ninguém sabe que você é um cachorro.” Aula 30 Peter Steiner, The New Yorker, julho 1993 Redes de Computadores 2 Aspectos de segurança em redes de computadores Criptografia ! Em segurança da informação é importante garantir três aspectos: ! Arte de codificar e decodificar mensagens de forma que a ! Confidencialidade decriptação seja impossível ! Integridade ! Disponibilidade ! Porém há outras duas correlacionadas: autenticidade e não repúdio "##$ decodificação ! Uso de criptografia auxilia na obtenção dessas propriedades %&'( Texto Puro Instituto de Informática - UFRGS Instituto de Informática - UFRGS codificação )*+$ ,+- ! Criptografia simétrica #.,/ Texto Puro decriptação ! Criptografia assimétrica A. Carissimi -26-juin-09 A. Carissimi -26-juin-09 Texto Puro Redes de Computadores 3 Redes de Computadores 4
  2. 2. Princípio Básico de Funcionamento Chaves Simétricas ! Codificação (cifrar): ! Uma mesma chave empregada pelo ! Determinar uma função f que a partir de um texto puro ( P) se obtém um texto remetente e pelo destinatário Texto cifrado (C) com ajuda de uma chave Kc ! Chave utilizada para codificar e decodificar os dados f (Kc , P) : P a C ! Usuários são responsáveis pela “proteção”da chave "##$ %&'( ! Problema de gerenciamento e distribuição Instituto de Informática - UFRGS Instituto de Informática - UFRGS )*+$ ,+- ! Decodificação (decifrar): das chaves #.,/ ! Permitir a operação inversa a partir de uma chave Kd ! Codificação e decodificação rápidas ! Empregado desde 1970 f ( K d , C ) : P ou f ( K d , f ( K c , P)) = P A. Carissimi -26-juin-09 A. Carissimi -26-juin-09 ! Algoritmo popular: K c = K d → simétrica ! DES (Data Encryption Standard) K c ≠ K d → assimétrica Texto Redes de Computadores 5 Redes de Computadores 6 Chaves Assimétricas Chave Pública e Privada ! Duas chaves distintas: "##$ "##$ %&'( %&'( ! Pública e Privada )*+$ )*+$ Texto ,+- ,+- ! Codificação e decodificação exige #.,/ #.,/ poder computacional maior que com Tom Laura chaves simétricas Texto codificado com a chave pública de Laura só pode ser decodificado com a chave privada de Laura. ! Facilita gerenciamento e distribuição "##$ %&'( das chaves Instituto de Informática - UFRGS Instituto de Informática - UFRGS )*+$ ,+- "##$ "##$ ! Chave pública é conhecida de todos #.,/ %&'( %&'( )*+$ )*+$ ! Chave privada é mantida secreta por ,+- #.,/ ,+- #.,/ seu proprietário Tom Laura A. Carissimi -26-juin-09 A. Carissimi -26-juin-09 ! Algoritmo popular: Texto codificado com a chave privada de Laura só pode ser ! RSA (Rivest-Shamir-Adleman) decodificado com a chave pública de Laura. Texto Como saber a chave pública de Laura ?? Redes de Computadores 7 Redes de Computadores 8
  3. 3. Problemas de gerenciamento com chaves Public Key Infraestrutura: Certificado Digital ! Número de chaves a serem mantidas Laura gera um par de chaves pública e privada e divulga a ! Simétrica: número de chaves = n2 chave pública através do registro de um certificado. ! Assimétrica: um par de chaves por usuário Laura ! Onde armazená-las? ! Como distribuí-las Certificado Instituto de Informática - UFRGS Instituto de Informática - UFRGS Laura Chave pública: Serial #1234567890 Expiração: 30/12/02 Assinado: AC A. Carissimi -26-juin-09 A. Carissimi -26-juin-09 Tom Tom solicita a chave pública de Laura para codificar dados a serem enviados a Laura. Redes de Computadores 9 Redes de Computadores 10 Certificados digitais Autoridade Certificadora e Autoridade de Registro 1. Solicitação de certificado ! Autoridade certificadora (AC) Autoridade Certificadora ! Responsável por emitir, renovar, revogar e gerenciar certificados digitais. 2a. Chave privada ! Cria e assina digitalmente os certificados emitidos Alice 2b. Emissão ! Emite listas de certificados revogados (LCR) ! Garante que o titular do certificado possui a chave privada que Certificado corresponde à sua chave pública Instituto de Informática - UFRGS Instituto de Informática - UFRGS 3. Solicitação de Alice ! Mantém registros de suas operações certificado Chave pública: Serial #1234567890 ! Autoridade de registro (AR) Expiração: 30/12/02 Assinado: CA ! Responsável pelo processo final na cadeia de certificação digital, realizando A. Carissimi -26-juin-09 A. Carissimi -26-juin-09 a identificação presencial dos interessados em adquirir certificados, 4. Recuperação do cerficado, coletando os documentos e encaminhando-os à Autoridade Certificadora isto é, da chave pública do correspondente. Redes de Computadores 11 Redes de Computadores 12
  4. 4. Ciclo de vida de um certificado digital PKI: Algumas Empresas Empresa Site Requisição Baltimore www.baltimore.com CertCo www.certco.com Certisign www.certisign.com.br CyberSafe Corp. www.cybersafe.com Digital Signature Trust Co. www.didsigtrust.com Expiração Validação da www.entrust.com requisição Entrust Technologies Inc. Instituto de Informática - UFRGS Instituto de Informática - UFRGS GTE CyberTrust www.cybertrust.com IBM Corp. www.ibm.com Microsoft Corp. www.microsoft.com www.nai.com Revogação Emissão Network Associates Inc. Rainbow Technologies Inc. www.rainbow.com A. Carissimi -26-juin-09 A. Carissimi -26-juin-09 Security Dynamics Technologies Inc. www.securitydynamics.com VeriSign Inc. www.verisign.com Xcert Int’l. Inc. www.xcert.com Uso Redes de Computadores 13 Redes de Computadores 14 Segurança e protocolos TCP/IP Protocolos orientados a segurança ! Constatação: os protocolos Internet (TCP/IP) não seguros! ! Necessidade de inserir garantias para segurança da informação Aplicação ! Duas “correntes” ideológicas: fim a fim versus infra-estrutura de rede PGP ... HTTPS SSMTP Transporte ! Corrente “fim a fim”: SSL ! Camada de aplicação: processo origem cifra e/ou protege integridade dos dados e os envia para o destino que executa a decifração e/ou verificação TCP Instituto de Informática - UFRGS Instituto de Informática - UFRGS ! Desvantagem: aplicação necessita “estar ciente” Rede IPsec IPv4 ! Camada de transporte (ou imediatamente acima – nova, sessão e/ou apresentação): tornar a segurança transparente para a aplicação (ex. SSL) Hardware A. Carissimi -26-juin-09 A. Carissimi -26-juin-09 ! Corrente “infra-estrutura de rede”: ! Camada de rede: autentica e/ou cifra os datagramas sem envolver as aplicações (ex. IPsec) Redes de Computadores 15 Redes de Computadores 16
  5. 5. Secure Socket Layer (SSL) Arquitetura SSL ! Desenvolvido originalmente pela Netscape. ! Conjunto de algoritmos de cifragem e opções distintas ! Versão 3.0 foi publicada como draft da Internet ! Compactação ! Base para a definição do Transport Layer Security (TLS) ! Restrições quanto a chaves e uso ! TLS é compatível com SSL versão 3.0 ! Projetado para fornecer cifragem de dados entre um cliente e um servidor web Instituto de Informática - UFRGS Instituto de Informática - UFRGS ! Não é limitado a web ! Organizado em duas camadas de protocolos: HTTPS (443) ! Protocolos específicos empregado no gerenciamento do SSL A. Carissimi -26-juin-09 A. Carissimi -26-juin-09 Aplicação Aplicação SSMTP(465) ! Usado no estabelecimento SSL/TLS SSL/TLS POP (995) ! SSL Record Protocol IMAP (993) TCP TCP ! Empregado na utilização de uma conexão segura Redes de Computadores 17 Redes de Computadores 18 Características SSL Protocolo Handshake ! Apresentação mútua ! Parte mais complexa do SSL. ! Negociação do algoritmo de cifragem (DES, IDEA, etc) e de chave de sessão ! Possibilita a autenticação mútua de clientes e servidores. ! Autenticação do servidor ao cliente e do cliente ao servidor (opcional) ! Negocia codificação, algoritmo MAC (Message Authentication Code) ! Autenticação do servidor ! Permite confirmação da identidade do servidor e chaves de criptografia. ! Cliente mantém listas de ACs com suas chaves públicas ! Empregado antes que qualquer dado seja transmitido. Instituto de Informática - UFRGS Instituto de Informática - UFRGS ! Obtém certificado do servidor (isto é, sua chave pública) ! Verifica autenticidade do certificado (assinatura de um AC) ! Autenticação do cliente (opcional) ! Análoga ao servidor cliente envia certificado ao servidor A. Carissimi -26-juin-09 A. Carissimi -26-juin-09 ! Sessão SSL ! Transferência de dados (cifrado) Redes de Computadores 19 Redes de Computadores 20
  6. 6. Funcionamento SSL (handshake) Funcionamento do SSL (envio de dados) CLIENTE Versão SSL + algoritmos compactação e cifragem + Nonce RA SERVIDOR Mensagem aplicação Versão SSL + preferências + certificado + Nonce Rb 1. AC do certificado está na lista? Fragmentação (16 KB) NÃO: avisa usuário SIM: Opcional: solicitação do - valida certificado com a chave pública da certificado do cliente Compactação AC e obtém chave pública do servidor Instituto de Informática - UFRGS Instituto de Informática - UFRGS 2. Gera chave de sessão K Texto compactado + chave sessão Envia chave de sessão K (pré-mestre) - cifrada Hash MD5 ou SHA-1 Change cipher Change cipher f(K, RA, RB) Avisa que iniciará a cifrar com a change cipher f(K, RA, RB) Cifragem simétrica com chave de sessão A. Carissimi -26-juin-09 A. Carissimi -26-juin-09 Finish handshake Avisa que iniciará a cifrar com a change cipher TCP Finish handshake Redes de Computadores 21 Redes de Computadores 22 Leituras complementares ! Tanenbaum, A. Redes de Computadores (4a edição), Campus 2003. ! Capítulo 8 ! Carissimi, A.; Rochol, J; Granville, L.Z; Redes de Computadores. Série Livros Didáticos. Bookman 2009. ! Capítulo 8, seções 8.1 (8.1.1 a 8.1.3), 8.3 Instituto de Informática - UFRGS A. Carissimi -26-juin-09 Redes de Computadores 23

×